新聞中心

EEPW首頁 > 業(yè)界動(dòng)態(tài) > 立功科技嵌入式平臺(tái)“軟”實(shí)力——二維碼算法篇

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

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

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

本文引用地址:http://butianyuan.cn/article/201912/407844.htm

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

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

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

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

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

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

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

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

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

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

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

259914-fig-05.jpg

我們以基于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格式的圖像。

259914-fig-06.jpg

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

259914-fig-07.jpg

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

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

259914-fig-08.jpg

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

259914-fig-09.jpg

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

259914-fig-10.jpg

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

259914-fig-11.jpg

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

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

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

259914-fig-12.jpg

四、效果展示

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

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

259914-fig-13.jpg

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

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

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




關(guān)鍵詞:

評論


相關(guān)推薦

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

關(guān)閉