新聞中心

EEPW首頁 > 業(yè)界動(dòng)態(tài) > ZLG解析——二維碼識(shí)別技術(shù)

ZLG解析——二維碼識(shí)別技術(shù)

作者: 時(shí)間:2019-09-05 來源:電子產(chǎn)品世界 收藏

基于二維碼識(shí)別相關(guān)的應(yīng)用迅速進(jìn)入人們的生活,掃二維碼已成為連接線上線下成本最低的網(wǎng)絡(luò)接入口之一。二維碼識(shí)別技術(shù)原理是什么,又因何種優(yōu)勢能夠改變我們的生活方式?本文將以二維碼使用最廣的QR碼(Quick Response Code)為例,從QR碼的優(yōu)勢、識(shí)別過程、算法、和應(yīng)用方向等方面闡述二維碼得以廣泛使用的原因。

本文引用地址:http://2s4d.com/article/201909/404480.htm

目前,二維碼在中國的最大應(yīng)用領(lǐng)域就是移動(dòng)支付。不少人已經(jīng)習(xí)慣了出門不帶現(xiàn)金,手機(jī)掃碼走天下。根據(jù)第40次《中國互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告》顯示,截至2017年6月,我國手機(jī)網(wǎng)民規(guī)模達(dá)7.24億,移動(dòng)支付用戶規(guī)模達(dá)5.02億,4.63億網(wǎng)民在線下消費(fèi)時(shí)使用手機(jī)進(jìn)行支付,而這其中很多都是通過掃二維碼實(shí)現(xiàn)的。

1567663101389903.jpg

資料來源:CNNIC 前瞻產(chǎn)業(yè)研究院整理

    接下來將對(duì)二維碼識(shí)別技術(shù)及應(yīng)用進(jìn)行介紹,為了便于整體理解,首先闡述QR碼的特點(diǎn)及優(yōu)勢,接著介紹QR碼識(shí)別過程,并重點(diǎn)介紹圖像預(yù)處理算法。然后講述當(dāng)前二維碼識(shí)別技術(shù)的應(yīng)用領(lǐng)域,最后演示ZLG QR碼識(shí)別demo。

1.  QR碼的特點(diǎn)及優(yōu)勢

QR碼是由日本Denso公司于1994年9月研制的一種矩陣式二維條碼,它除了具有二維條碼所具有的信息容量大、可靠性高、可表示漢字及圖像多種信息、保密防偽性強(qiáng)等特點(diǎn)外,還具有能高速全方位識(shí)讀、能有效表達(dá)漢字等主要特點(diǎn)。

2.  QR碼的識(shí)別過程

QR符合由編碼區(qū)域和包括尋像圖形、分隔符、定位圖形和校正圖形在內(nèi)的功能圖形組成。QR碼結(jié)構(gòu)圖如下所示。

1567663114789299.jpg

QR碼結(jié)構(gòu)圖

QR碼識(shí)別常見的方法過程主要有圖像預(yù)處理,定位位置探測圖形、定位校正圖形、透視變換、譯碼和糾錯(cuò)。

圖像預(yù)處理:灰度化、去噪、畸變矯正以及二值化等;

定位位置探測圖形:通過位置探測圖形1:1:3:1:1的特征查找,允許容差0.5,水平和垂直方向掃描該特征,多次穿透即為候選位置探測圖像,通過一些篩選策略剔除假位置探測圖形確定真圖形,再根據(jù)3個(gè)該圖形之間的距離和旋轉(zhuǎn)角度,確定它們的方位,分別為左上角,右上角和左下角。

2019.9.4.jpg

位置探測圖形特征

定位校正圖形:根據(jù)3個(gè)位置探測圖像估計(jì)右下角校正符,類似定位位置探測圖形定位該圖形。

透視變換:根據(jù)3個(gè)定位中心點(diǎn)和校正符中心點(diǎn),和理想4個(gè)點(diǎn)的坐標(biāo),獲取單應(yīng)性矩陣,再通過透視變換獲取標(biāo)準(zhǔn)正方形圖像。透視變換公式如下:

1567663147735154.jpg

透視變換效果圖如下

1567663175669071.jpg

譯碼和糾錯(cuò):譯碼是對(duì)二維碼版本信息、格式信息、數(shù)據(jù)和糾錯(cuò)碼進(jìn)行解碼和對(duì)比。將數(shù)據(jù)區(qū)轉(zhuǎn)為0和1的比特流,并用 Reed-Solomon 糾錯(cuò)算法對(duì)比特流校驗(yàn)和糾錯(cuò)。判斷QR碼編碼格式后譯碼,這樣我們便得到了二維碼包含的數(shù)據(jù)。

3.  QR碼圖像預(yù)處理

常規(guī)的QR碼識(shí)別過程容易受到環(huán)境影響而難以識(shí)別,往往需要一些預(yù)處理改善圖像質(zhì)量和識(shí)別環(huán)境。

圖像灰度化:攝像頭輸出的數(shù)據(jù)格式很多,黑白攝像頭直接輸出灰度圖,而彩色攝像頭輸出格式有YUV422,YUV410,RGB565, RGB888等,二維碼識(shí)別只需要單通道的灰度圖,

因此需要轉(zhuǎn)化,以RGB888為例,轉(zhuǎn)換公式如下:

image.png

去噪:噪聲的影響會(huì)使1:1:3:1:1的特征定位不準(zhǔn),以及數(shù)據(jù)階段譯碼錯(cuò)誤,常見的噪聲主要是高斯噪聲和椒鹽噪聲,可以采用高斯濾波,中值濾波或均值濾波來改善圖像質(zhì)量。

畸變矯正:廣角攝像頭或魚眼攝像頭帶有較大的畸變,越靠近視角邊緣圖像形變?cè)酱螅瑢?duì)于畸變較大的圖像而言,不僅1:1:3:1:1的特征的比例關(guān)系失調(diào),數(shù)據(jù)區(qū)的數(shù)據(jù)沒有標(biāo)準(zhǔn)的模塊大小,會(huì)造成無法準(zhǔn)確譯碼。對(duì)于這種情況,需通過畸變模型矯正,矯正成無畸變的圖像。

二值化:正常情況下背景和QR碼目標(biāo)區(qū)分明顯,光照均勻,只需要簡單使用全局二值化方法即可,常見的方法有固定閾值法、Otsu法,直方圖雙峰閾值化方法等。對(duì)于光照不均勻的情況,則不適用,會(huì)造成全局亮度失衡而無法正常識(shí)碼,因此需要自適應(yīng)局部閾值化方法處理,可以采用分塊求閾值再均衡化的方法實(shí)現(xiàn)。

4.  QR碼應(yīng)用領(lǐng)域

QR碼是用某種特定的幾何圖形,按一定規(guī)律來記錄數(shù)據(jù)符號(hào)信息。主要用途如下表

1567663445966152.jpg

1567663474557218.jpg

5.  QR碼識(shí)別效果展示

ZLG研發(fā)的QR碼識(shí)別算法目前支持的平臺(tái)有:基于AWorks系統(tǒng)的cortex-m7系列M1052-M16F128AWI -T平臺(tái)、基于Linux的cortex-a7系列M6Y2C-256F256LI-T平臺(tái)和基于Linux的cortex-a8系列M3354-512LI-F1GT平臺(tái)。

基于cortex-a8系列M3354-512LI-F1GT平臺(tái)的QR碼識(shí)別功能如下視頻所示:

1567663604566133.jpg

A8_快速掃描、A8_碎屏識(shí)別demo.mp4

視頻中主要展示了微信支付操作,可以看到劇烈晃動(dòng)手機(jī)的情況下依舊能夠識(shí)別。對(duì)于單次支付操作,觀察串口打印的信息可以看出,基本實(shí)現(xiàn)了無需等待的“閃付”體驗(yàn)。并且,從視頻中可以看到,針對(duì)于手機(jī)碎屏問題,ZLG的QR碼算法可以較好的支持。

此外,考慮到個(gè)性化QR碼使用場景,我司QR碼識(shí)別算法同樣支持,以微信二維碼名片樣式為例,效果如以下視頻所示

1567663618252911.jpg

A8_多樣式demo.mp4

基于cortex-m7系列M1052-M16F128AWI -T平臺(tái)的二維碼識(shí)別demo配有4.3寸液晶顯示屏, 以類似于手機(jī)掃碼的體驗(yàn),快速識(shí)別二維碼,顯示識(shí)別的結(jié)果。效果如下所示:

1567663659613835.jpg

M7_快速掃描demo.mp4

ZLG QR碼算法調(diào)用方式簡單,僅需要算法初始化、解碼和內(nèi)存釋放三個(gè)步驟,QR碼算法頭文件“aw_qrcode.h”接口如下

1567663673336040.jpg

調(diào)用我司的QR碼算法demo程序“QRScanner.c”如下所示

1567663726105853.jpg

最后附上M3354-512LI-F1GT產(chǎn)品圖片:

1567668496522985.jpg

M1052-M16F128AWI-T產(chǎn)品圖片:

1567668564162849.jpg

6.  關(guān)于算法庫獲取

關(guān)于算法庫可以聯(lián)系ZLG立功科技獲取。




關(guān)鍵詞:

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉