银行卡识别
调试
您可以在API Explorer中调试该接口。
URI
POST https://{endpoint}/v2/{project_id}/ocr/bankcard
请求消息
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户Token。 Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限,响应消息头中X-Subject-Token的值即为Token。 |
参数 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
image |
否,该参数与url二选一 |
String |
图像数据,base64编码,要求base64编码后大小不超过10MB。图片最小边不小于15px,最长边不超过8192px,支持JPEG、JPG、PNG、BMP、TIFF格式。 |
url |
否,该参数与image二选一 |
String |
图片的url路径,目前支持:
说明:
|
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
result |
BankcardResultBody object |
调用成功时表示调用结果。 调用失败时无此字段。 |
参数 |
参数类型 |
描述 |
---|---|---|
bank_name |
String |
发卡行。 |
card_number |
String |
银行卡号。 |
issue_date |
String |
有效期开始日期。 |
expiry_date |
String |
有效期截止日期。 |
type |
String |
银行卡类别,如:借记卡,信用卡,准贷记卡,预付费卡。 如果参数返回为空,表示未识别到银行卡类别。 |
confidence |
Object |
相关字段的置信度信息,取值范围0~1。 置信度越大,表示本次识别的对应字段的可靠性越高,在统计意义上,置信度越大,准确率越高。 置信度由算法给出,不直接等价于对应字段的准确率。 |
状态码: 400
参数 |
参数类型 |
说明 |
---|---|---|
error_code |
String |
调用失败时的错误码,具体请参见错误码。 当出现错误码“ModelArts.4204”时,请参考为什么调用API时提示“ModelArts.4204”?章节。 调用成功时无此字段。 |
error_msg |
String |
调用失败时的错误信息。 调用成功时无此字段。 |
请求示例

- 请求样例(方式一:使用图片的base64编码)
POST https://{endpoint}/v2/{project_id}/ocr/bankcard Request Header: Content-Type: application/json X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Request Body: { "image":"/9j/4AAQSkZJRgABAgEASABIAAD/4RFZRXhpZgAATU0AKgAAAA..." }
- 请求样例(方式二:使用图片URL)
POST https://{endpoint}/v2/{project_id}/ocr/bankcard Request Header: Content-Type: application/json X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Request Body: { "url":"https://BucketName.obs.xxxx.com/ObjectName" }
- Python语言请求代码示例(其他语言参照下列示例编写或使用OCR SDK)
# encoding:utf-8 import requests import base64 url = "https://{endpoint}/v2/{project_id}/ocr/bankcard" token = "用户获取得到的实际token值" headers = {'Content-Type': 'application/json', 'X-Auth-Token': token} imagepath = r'./data/bankcard-demo.png' with open(imagepath, "rb") as bin_data: image_data = bin_data.read() image_base64 = base64.b64encode(image_data).decode("utf-8") # 使用图片的base64编码 payload = {"image": image_base64} # url与image参数二选一 response = requests.post(url, headers=headers, json=payload) print(response.text)
响应示例
状态码:200
成功响应示例
{ "result": { "bank_name": "XX银行", "card_number": "XXXX XXXX XXXX XXXX", "issue_date": "12/10", "expiry_date": "12/20", "type": "", "confidence": { "bank_name": 0.9431, "card_number": 0.8562, "issue_date": 0.9962, "expiry_date": 0.9256, "type": 0 } } }
状态码:400
失败响应示例
{ "error_code": "AIS.0103", "error_msg": "The image size does not meet the requirements." }
错误码
错误码请参见错误码。
