0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

銀行卡信息精準識別-智能快速綁卡

DS小龍哥-嵌入式技術(shù) ? 來源:DS小龍哥-嵌入式技術(shù) ? 作者:DS小龍哥-嵌入式技 ? 2023-07-12 09:57 ? 次閱讀

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

image-20220211111123655

文字識別服務接口支持API方式調(diào)用,支持按需計費,每個用戶每月有1000次的免費調(diào)用額度,前期的體驗調(diào)試比較方便。

接口的計費使用說明: https://support.huaweicloud.com/productdesc-ocr/ocr_01_0070.html

image-20220211111348612

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ù)都比較清楚了。

image-20220211112958274

將圖片的base64編碼貼到 image字段里,點擊調(diào)試即可查看結(jié)果。

3. 示例代碼

代碼采用QT編寫,主要是就是HTTP請求,獲取結(jié)果,解析結(jié)果,API接口不依賴語言,任何語言使用都是一樣的流程。

image-20220211115946809

image-20220211120010999

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)碼:"<

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • AI
    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
收藏 人收藏

    評論

    相關(guān)推薦

    移動電話銀行卡讀卡器

    `描述此解決方案基于 MSP430G2432 微控制器實現(xiàn)了用于智能手機的磁卡讀取器。讀取器專用于讀取基于 ISO7811 的銀行卡并將信息(如
    發(fā)表于 04-08 11:23

    提供銀行卡識別API免費接入的OCR SDK開發(fā)者平臺

    、支付平臺等搭載了銀行卡識別技術(shù),用戶只要對準銀行卡進行拍照掃描或者導入銀行卡圖片,系統(tǒng)就能自動快速的讀取
    發(fā)表于 09-16 17:35

    銀行卡刷卡的WAV轉(zhuǎn)成0101信號問題

    具體應用是,1:刷銀行卡,磁頭接收到銀行卡第2磁道的信息,直接轉(zhuǎn)成聲音文件記錄下來2:把聲音文件還原成0101,3:根據(jù)銀行卡的編碼,轉(zhuǎn)換成銀行卡
    發(fā)表于 03-16 12:09

    云端銀行卡識別技術(shù)的特點和優(yōu)勢

    );識別速度:單張銀行卡識別速度小于0.5秒;識別率:99.50%;云端銀行卡識別服務支持自動旋
    發(fā)表于 07-25 19:46

    PN7150無法讀取身份證和銀行卡是怎么回事?

    使用PN7150讀取身份證和銀行卡,安卓版本為Android9 有些銀行卡有刷卡聲音,但不是正常的刷卡聲音,比如刷卡失敗的提示音。沒有彈出 NFC 標簽信息。 我在日志中發(fā)現(xiàn)了以下問題: 1.同一張
    發(fā)表于 05-06 07:10

    避開自助銀行“門禁陷阱” 防范銀行卡欺詐

    避開自助銀行“門禁陷阱” 防范銀行卡欺詐  如今,現(xiàn)代人生活越來越離不開銀行卡了,但是銀行卡的欺詐給持卡人留下不愉快的用經(jīng)歷。為了保障用
    發(fā)表于 12-10 17:56 ?965次閱讀

    指紋識別技術(shù)在銀行卡業(yè)務中的應用分析與設計_曾慶勇

    指紋識別技術(shù)在銀行卡業(yè)務中的應用分析與設計_曾慶勇
    發(fā)表于 03-20 09:13 ?1次下載

    傻瓜式理財,造福百姓 銀行卡將發(fā)生巨變?劉強東把京東“余額寶”搬進銀行卡

    剛剛過去的周末,當我們忙于休閑中,劉強東又干了一件大事。我們手中幾十年未變的銀行卡,將發(fā)生一次翻天覆地的變化。京東聯(lián)手銀行正式推出“京東銀行卡”。
    發(fā)表于 08-22 10:09 ?6173次閱讀

    銀行卡手機拍照識別sdk

    出錯,而且用戶體驗非常差。那么如何使這一環(huán)節(jié)也能跟得上信息時代的腳步,彰顯信息化時代的“高大上”,而不是停留在手動的輸入那16—19位銀行號碼的階段呢?中安未來銀行卡手機拍照
    發(fā)表于 08-07 18:11 ?314次閱讀

    微辰金服|激活銀行卡需要交錢嗎

    的話,無論是借記卡還是信用都無法正常使用?! ?b class='flag-5'>銀行卡為什么要進行激活,主要也是考慮到資金安全和風險,銀行需要核實是不是你本人在使用這張銀行卡,而
    發(fā)表于 12-25 13:21 ?309次閱讀

    某惡意Google Chrome擴展程序會竊取您的銀行卡信息

    一個Google Chrome擴展程序會竊取銀行卡信息,但這個擴展程序目前還未在Chrome Web Store(Chrome網(wǎng)上應用商店)里下線。
    的頭像 發(fā)表于 01-26 11:38 ?2878次閱讀

    nfc手機讀取銀行卡

    自支付寶錢包8.0推出了NFC新功能,只要將支持NFC功能的手機靠近公交銀行卡等帶有芯片的IC上,可迅速讀取內(nèi)余額、
    的頭像 發(fā)表于 02-28 11:49 ?3.5w次閱讀

    移動端銀行卡識別技術(shù),基于Android、iOS系統(tǒng)

    、快速的搶占新增客戶市場,銀行、保險、移動支付、財務管理等眾多領(lǐng)域、行業(yè)均把為用戶提供最貼心、高效的服務作為企業(yè)的業(yè)務重心。 與手工輸入銀行卡號相比,移動端銀行卡
    發(fā)表于 06-17 17:29 ?594次閱讀

    移動支付時代必不可少的移動端銀行卡識別技術(shù)

    受支付寶銀行卡識別的啟發(fā),騰訊隨后在微信、QQ中添加銀行卡識別功能,通過技術(shù)上的創(chuàng)新提升用戶支付的體驗,均得到用戶的肯定。為此,更多的行業(yè)用戶希望在其業(yè)務系統(tǒng)中集成移動端
    發(fā)表于 06-17 17:34 ?692次閱讀

    移動端銀行卡識別助力解決銀行卡錄入的困擾

    銀行卡。為此,阿里首先在支付寶錢包中添加銀行卡識別功能,騰訊隨后在微信、QQ中添加銀行卡識別功能,通過技術(shù)上的創(chuàng)新提升用戶支付的體驗,均得到
    發(fā)表于 06-17 17:40 ?563次閱讀