1. 前言
在AI人工智能的潮流下,出現(xiàn)了很多方便人們生活的產(chǎn)品:人臉識別技術(shù)-完成人臉開鎖,人臉核身;車牌識別-完成停車場無人計費系統(tǒng)設計;自動駕駛-輔助車主行車,自動泊車等等,還有很多相關(guān)的應用。
這篇文章就是利用華為云提供的銀行卡信息識別接口來提取識別銀行卡詳細信息,這個接口是文字識別接口中的一個,銀行卡信息識別主要是應用在各種購物app里綁卡、保險在線理賠填卡號、社交軟件綁卡、證券軟件綁卡等等很多地方,以前都是人工輸入卡號,非常不方便,有了AI識別功能,可以提前將銀行卡圖片保存在手機里,也可以選擇現(xiàn)場拍攝,這樣軟件通過圖片快速識別出當前銀行卡的類別、所屬銀行、卡號等信息完成自動填充,極大的方便用戶體驗。
2. 文字識別云服務
2.1 開通文字識別服務功能
地址: https://console.huaweicloud.com/ocr/?region=cn-north-4&locale=zh-cn#/ocr/overview
文字識別服務接口支持API方式調(diào)用,支持按需計費,每個用戶每月有1000次的免費調(diào)用額度,前期的體驗調(diào)試比較方便。
接口的計費使用說明: https://support.huaweicloud.com/productdesc-ocr/ocr_01_0070.html
2.2 API接口使用介紹
幫助文檔地址: https://support.huaweicloud.com/api-ocr/ocr_03_0104.html
接口識別銀行卡上的關(guān)鍵文字信息后,是以json格式返回識別的結(jié)果,根據(jù)說明解析就能拿到信息。
接口格式:
URL請求格式:POST https://{endpoint}/v2/{project_id}/ocr/bankcard
?
endpoint 指定承載REST服務端點的服務器域名或IP,不同服務不同區(qū)域的endpoint不同,可以從終端節(jié)點中獲取。
例如,OCR服務在"華北-北京四"區(qū)域的"endpoint"為"ocr.cn-north-4.myhuaweicloud.com"。
?
project_id是項目ID,可以從這里 https://support.huaweicloud.com/api-ocr/ocr_03_0130.html 獲取。
?
?
完整請求示例:
https://ocr.cn-north-4.myhuaweicloud.com/v2/0e5957be8a00f53c2fa7c0045e4d8fbf/ocr/bankcard
?
請求頭:
{
"X-Auth-Token": "******",
"Content-Type": "application/json;charset=UTF-8"
}
?
X-Auth-Token參考在這里獲取:https://support.huaweicloud.com/api-ocr/ocr_03_0005.html
?
請求體里包含了圖片的bash編碼數(shù)據(jù)
{
"image": ..............
}
?
?
識別后響應的結(jié)果:
{
"result": {
"bank_name": "中國建設銀行",
"card_number": "6217003860002354304",
"issue_date": "",
"expiry_date": "09/22",
"type": "借記卡",
"confidence": {
"bank_name": 0.9608,
"card_number": 0.9793,
"issue_date": 0,
"expiry_date": 0.8646,
"type": 0
}
}
}
?
響應結(jié)果里字段含義解釋:
?
bank_name 發(fā)卡行。
?
card_number 銀行卡號。
?
issue_date 有效期開始日期。
?
expiry_date 有效期截止日期。
?
type 銀行卡類別,如:借記卡,信用卡,準貸記卡,預付費卡。
2.3 在線調(diào)試
在線調(diào)試地址: https://apiexplorer.developer.huaweicloud.com/apiexplorer/debug?product=OCR&api=RecognizeBankcard
先通過調(diào)試接口體驗之后,再編寫代碼可以少走一些彎路,很多參數(shù)都比較清楚了。
將圖片的base64編碼貼到 image字段里,點擊調(diào)試即可查看結(jié)果。
3. 示例代碼
代碼采用QT編寫,主要是就是HTTP請求,獲取結(jié)果,解析結(jié)果,API接口不依賴語言,任何語言使用都是一樣的流程。
3.2 發(fā)起請求,獲取銀行卡信息
//獲取銀行卡信息
void Widget::getCardInfo(QString file)
{
function_select=1;
QString requestUrl;
QNetworkRequest request;
?
//存放圖片BASE64編碼
QString imgData;
?
//設置請求地址
QUrl url;
?
//人臉搜索請求地址
requestUrl = QString("https://ocr.%1.myhuaweicloud.com/v2/%2/ocr/bankcard")
.arg(SERVER_ID)
.arg(PROJECT_ID);
?
//設置數(shù)據(jù)提交格式
request.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json"));
?
//將圖片進行Base64編碼
imgData = QString(toBase64(QImage(file))); //編碼后的圖片大小不超過2M
//設置token
request.setRawHeader("X-Auth-Token",Token);
?
//構(gòu)造請求
url.setUrl(requestUrl);
request.setUrl(url);
?
QString post_param=QString
("{"
""image": "%1""
"}").arg(imgData);
?
//發(fā)送請求
manager- >post(request, post_param.toUtf8());
}
3.3 獲取token
/*
功能: 獲取token
*/
void Widget::GetToken()
{
//表示獲取token
function_select=3;
?
QString requestUrl;
QNetworkRequest request;
?
//設置請求地址
QUrl url;
?
//獲取token請求地址
requestUrl = QString("https://iam.%1.myhuaweicloud.com/v3/auth/tokens")
.arg(SERVER_ID);
?
//自己創(chuàng)建的TCP服務器,測試用
//requestUrl="http://10.0.0.6:8080";
?
//設置數(shù)據(jù)提交格式
request.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json;charset=UTF-8"));
?
//構(gòu)造請求
url.setUrl(requestUrl);
?
request.setUrl(url);
?
QString text =QString("{"auth":{"identity":{"methods":["password"],"password":"
"{"user":{"domain": {"
""name":"%1"},"name": "%2","password": "%3"}}},"
""scope":{"project":{"name":"%4"}}}}")
.arg(MAIN_USER)
.arg(IAM_USER)
.arg(IAM_PASSWORD)
.arg(SERVER_ID);
?
//發(fā)送請求
manager- >post(request, text.toUtf8());
}
3.4 解析結(jié)果
//解析反饋結(jié)果
void Widget::replyFinished(QNetworkReply *reply)
{
QString displayInfo="";
int statusCode = reply- >attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
?
//讀取所有數(shù)據(jù)
QByteArray replyData = reply- >readAll();
?
qDebug()< "狀態(tài)碼:"<
審核編輯:湯梓紅
-
AI
+關(guān)注
關(guān)注
87文章
29806瀏覽量
268103 -
人工智能
+關(guān)注
關(guān)注
1789文章
46652瀏覽量
237071 -
人臉識別
+關(guān)注
關(guān)注
76文章
4002瀏覽量
81673 -
文字識別
+關(guān)注
關(guān)注
0文章
16瀏覽量
8624 -
華為云
+關(guān)注
關(guān)注
3文章
2391瀏覽量
17244
發(fā)布評論請先 登錄
相關(guān)推薦
評論