# 银行卡

版本 V1.0.0

# 1. 接口定义

# 1.1 接口

URL = http://ip:port/hex/ocrapi/creditcardocr

其中 ip 为部署机器的 ip 地址,port 为对应服务器的端口

# 1.2 描述

银行卡OCR基于业界领先的深度学习技术,支持对银行卡的卡号、有效期等关键字段.在复杂场景下的多角度、多版式精准检测及识别。同时基于银行标识代码的检测识别结果,实现对大部分银行卡信息的查询反馈。 支持多种类型银行卡有效性告警,可以应用于各种银行卡信息有效性校验场景,例如金融行业身份认证、第三方支付绑卡等场景。

# 1.3 HTTP请求格式

# 1.3.1 请求参数

属性

参数名称

必选

类型

可选值

默认值

参数描述

image

url二选一

String

图像base64编码后的字符串,图像需是JPGPNGBMP其中之一的格式

url

image二选一

String

图片url地址,urlimage两者填一个即可,同时赋值时,则以url指定的图像作为输入

session_id

String

用户自定义的唯一会话id

 

enable_border_check

Bool

false\true

false

边框遮挡检测开关,如果输入图片边框被遮挡则返回告警

enable_reshoot_check

Bool

false\true

false

翻拍检测开关,如果输入图片是翻拍图片则返回告警

enable_copy_check

Bool

false\true

false

复印件检测开关,如果输入图片是银行卡复印件图片则返回告警

ret_border_cut_image

Bool

false\true

false

是否返回识别后的切图图片数据(切图图片是指精确剪裁对齐后的银行卡图片)

ret_card_no_image

Bool

false\true

true

是否返回卡号图片数据

ret_warncode_flag

Bool

false\true

false

是否返回单告警码开关(已废弃接口,为了兼容性需求保留,告警码这里请使用多重告警码)

enable_recognize_warn_code

Bool

false\true

false

是否返回多重告警码

enable_quality_value

Bool

false\true

false

是否返回图片质量数值(图片质量分数是评价一个图片的模糊程度的标准)

# 1.3.2 请求示例

{
      "image": 填写Base64编码后的图片数据,
      "session_id": 填写对应的session_id,
      "options":
      {
        "ret_warncode_flag":true,
        "ret_border_cut_image":false,
        "ret_card_no_image":false,
        "enable_copy_check":true,
        "enable_reshoot_check":true,
        "enable_border_check": true,
        "enable_recognize_warn_code":true,
        "enable_quality_value":true
      }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 1.3.3 返回参数

属性

参数

是否必然返回

类型

参数说明

errorcode

Int32

错误码

errormsg

string

错误码消息

session_id

string

相应请求的session标识符,可用于结果查询

 

warncode

Int32

单告警码,是否返回由 ret_warncode_flag决定。已废弃,为了接口兼容性需求保留,建议使用多重告警接口

warnmsg

String

单告警码信息,是否返回由 ret_warncode_flag决定。已废弃,为了接口兼容性需求保留,建议使用多重告警接口

recognize_warn_code

Int32

多重告警码,是否返回由enable_recognize_warn_code决定

recognize_warn_warnmsg

String

多重告警码信息,是否返回enable_recognize_warn_code决定

quality_value

Int32

图片参数目前用于评估输入图片模糊程度
取值范围:0~100
100 - 对应图片清晰
0 - 对应图片模糊
图片质量判断建议阈值:50

special_image

border_cut

String

切片图片数据,使用base64加密后的字符串,是否返回由ret_border_cut_image决定

card_no

String

卡号图片数据,使用base64加密后的字符串,是否返回由ret_border_cut_image决定

items

item

String

识别出的字段名称(关键字),支持以下字段:
卡号、卡类型、卡名字、银行信息、有效期

itemstring

String

识别出的文本行字符串

itemconf

Float

字段置信度

itemcoord

Object

文本行在旋转纠正之后的图像中的像素坐标,表示为(左上角x, 左上角y,宽width,高height

# 1.3.4 返回示例

{
      "warnmsg": "WARN_CREDITCARD_CORNER_EXCEED",
      "errormsg": "OK",
      "timecost": 2.3623669147491455,
      "quality_value": 50,
      "recognize_warn_msg": [ "WARN_CREDITCARD_CORNER_EXCEED"],
      "errorcode":0, "special_image":{
   "border_cut":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB/"
    "card_no":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB/"
      },
      "recognize_warn_code": [ -9111],
      "items": [
        {
          "itemstring": "6225760088888888",
          "wordcoordpoint": [],
          "item": "卡号",
          "itemconf": 0.9406975507736206,
          "itemcoord": {
            "y": 277,
            "x": 95,
            "height": 47,
            "width": 534
          }
        }
      ],
      "warncode": -9111
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

# 1.3.5 接口错误码说明

错误码

错误码消息

错误码说明

-5208

OCR_SERVER_INTERN_ERROR

服务器内部错误,初始化失败

-1102

SDK_IMAGE_DECODE_FAILED

图片解码失败

-9010

CREDITCARD_OCR_PREPROCESS_ERROR

银行卡OCR预处理错误

-9011

CREDITCARD_OCR_RECOG_FAILED

银行卡OCR识别失败

-9012

CREDITCARD_OCR_IMAGE_BLUR

银行卡图片模糊

-9013

ERROR_NOT_A_CREDITCARD

不是银行卡

-9014

ERROR_CREDITCARD_ILLEGAL

银行卡信息不合法

# 1.3.6 接口告警码说明

告警码

告警码消息

告警码说明

-9110

WARN_CREDITCARD_INVALID_DATE

银行卡日期无效

-9111

WARN_CREDITCARD_CORNER_EXCEED

银行卡边框不完整

-9112

WARN_CREDITCARD_REFLECT_LIGHT

银行卡图片反光

-9113

WARN_CREDITCARD_COPY_CARD

银行卡复印件

-9114

WARN_CREDITCARD_RESHOOT_CARD

银行卡翻拍件

上次更新: 2020-9-14 20:24:52