《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動(dòng)態(tài) > 立功科技嵌入式平臺(tái)“軟”實(shí)力——二維碼算法篇

立功科技嵌入式平臺(tái)“軟”實(shí)力——二維碼算法篇

2019-12-04
來源:致遠(yuǎn)電子

  摘要:二維碼不僅給人們生活帶來便捷,在工業(yè)領(lǐng)域也被廣泛應(yīng)用。如何在嵌入式硬件中開發(fā)二維碼功能?本文將為大家介紹ZLG二維碼識(shí)別算法,教大家在ZLG硬件平臺(tái)中快速搭建具備良好識(shí)別效果的二維碼。

  二維碼的本質(zhì)就是根據(jù)某種約定的編碼方式,將一段文本信息轉(zhuǎn)換為一個(gè)能夠被解碼識(shí)別的圖片。因?yàn)槎S碼只是一種編碼方式,是一種信息的載體,可見二維碼用途的關(guān)鍵不在于二維碼,而在于如何定義這段文本信息,約定好文本信息的用途。當(dāng)前,二維碼支付功能已經(jīng)改變了我們的生活方式,出行不再需要帶上現(xiàn)金,就能夠通過二維碼乘公交、搭地鐵、打出租車、付停車費(fèi)和超市購(gòu)物付款等等。由于QR碼具有信息容量大、可靠性高和保密防偽性強(qiáng)等特點(diǎn),常見的二維碼支付均采用QR碼。

  接下來將對(duì)ZLG二維碼算法進(jìn)行介紹,分別闡述ZLG二維碼算法特點(diǎn)、接口調(diào)用方法、可實(shí)現(xiàn)平臺(tái)與性能及效果展示。

  一、二維碼算法特點(diǎn)

  由于二維碼支付相關(guān)領(lǐng)域的迅速發(fā)展,ZLG針對(duì)性的進(jìn)行了二維碼識(shí)別算法的研發(fā)和優(yōu)化,目前ZLG二維碼算法庫(kù)僅提供QR碼接口的調(diào)用。QR碼識(shí)別算法特點(diǎn)如下:

  以算法庫(kù)的形式提供,支持多平臺(tái)移植,可在現(xiàn)有硬件上使用,大大節(jié)省成本;

  算法調(diào)用簡(jiǎn)單,方便開發(fā)人員快速實(shí)現(xiàn)QR碼識(shí)別功能;

  同時(shí)支持手機(jī)屏幕條碼和紙質(zhì)條碼,適用范圍廣;

  識(shí)別速度快,針對(duì)手機(jī)支付場(chǎng)景的優(yōu)化,可實(shí)現(xiàn)閃付;

  支持手機(jī)碎屏QR碼識(shí)別,貼合實(shí)際使用的場(chǎng)景。

  二、二維碼接口調(diào)用

  ZLG二維碼算法庫(kù)目前提供文件列表為:aw_qrcode.h、 libqr.a或libqr.so。算法調(diào)用方式簡(jiǎn)單,僅需要算法初始化、解碼和內(nèi)存釋放三個(gè)步驟,QR碼算法頭文件“aw_qrcode.h”接口如下:

  我們以基于AWorks系統(tǒng)的M7系列平臺(tái)為例,成功調(diào)用ZLG二維碼算法之前,需要準(zhǔn)備的工作如下:

  保證能夠獲取到攝像頭的視頻幀數(shù)據(jù)(不同平臺(tái)可以有不同的實(shí)現(xiàn)方式,linux系統(tǒng)可以通過opencv獲取圖像幀數(shù)據(jù)),并且轉(zhuǎn)為單通道的灰度圖。例如,基于AWorks系統(tǒng)的M7平臺(tái)demo使用如下接口獲取RGB565格式的圖像。

  由于獲取到的圖像為RGB565格式,需要轉(zhuǎn)換為單通道灰度圖,接口如下:

  至此,準(zhǔn)備工作已經(jīng)完成,算法所需要的灰度圖數(shù)據(jù)已經(jīng)得到。接下來進(jìn)行算法調(diào)用,二維碼識(shí)別接口調(diào)用存在三個(gè)步驟。

  首先,使用算法初始化接口實(shí)現(xiàn)內(nèi)存的初始化操作:

  接著,即可通過QR碼解碼接口實(shí)現(xiàn)二維碼圖像解碼操作,指針 imgData指向的地址即為灰度圖像存放的地址。

  最后,釋放初始化過程中分配的內(nèi)存:

  基于AWorks系統(tǒng)的M7平臺(tái)調(diào)用二維碼算法偽代碼如下:

  三、ZLG算法合作模式及平臺(tái)支持

  ZLG二維碼算法可以以SDK包的形式免費(fèi)開放給各位工程師,只需使用ZLG嵌入式核心板(硬件平臺(tái))即可快速開發(fā)出具備商用性能的二維碼識(shí)別應(yīng)用。算法原則上可以支持基于AWorks和Linux系統(tǒng)的所有硬件平臺(tái)。目前,主要測(cè)試了基于AWorks系統(tǒng)的M7系列平臺(tái),及基于Linux系統(tǒng)的A7和A8系列平臺(tái)的相關(guān)性能,并通過提供靜態(tài)庫(kù)或動(dòng)態(tài)庫(kù)的方式供使用。

  各平臺(tái)算法性能如下表:

  四、效果展示

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

  AWorks系統(tǒng)M7平臺(tái)二維碼算法demo.mp4

  視頻中分別展示了基于AWorks系統(tǒng)的cortex-m7硬件平臺(tái)、普通連續(xù)掃碼情形下的紙質(zhì)和屏幕碼識(shí)別、自動(dòng)感應(yīng)(通過感應(yīng)到掃碼操作來觸發(fā)算法,屏幕亮暗用來模擬補(bǔ)光燈亮滅)掃碼情形下的紙質(zhì)和屏幕碼識(shí)別,以及碎屏情況下的屏幕碼識(shí)別。

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

  五、關(guān)于算法庫(kù)獲取

  關(guān)于算法庫(kù)的獲取可以咨詢ZLG立功科技與ZLG致遠(yuǎn)電子相關(guān)市場(chǎng)人員。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。