當二維碼識別不再依賴專用攝像頭模組,,即使是常見的數(shù)字攝像頭,、模擬攝像頭、USB攝像頭都可以輕松快速識別二維碼時,,再提供免費使用的二維碼識別算法,是否能給您的方案帶來了便捷。
一,、居高不下的成本
隨著無現(xiàn)支付逐步深入我們的日常生活,我們平時出門可以沒有現(xiàn)金但卻離不開手機,,這便是二維碼為我們帶來的便捷,,本文將重點介紹如何將二維碼識別植入產(chǎn)品設計。
目前大家所熟知的二維碼識別需要配變專用的攝像頭,,成本一直居高不下,,若通用的CSI攝像頭就能完成二維碼的識別與運算,那么無論是設計成本還是BOM成本都將帶來可觀的改善。但二維碼專用攝像頭的成本又居高不下,,如何降低成本,?是很多人關(guān)注的問題,本文將通過CSI攝像頭為示例,,淺析如何通過普通攝像頭識別二維碼信息,。
二、二維碼開發(fā)環(huán)境
搭建維碼組件主要由主控——M1052核心板,、采集攝像頭——OV725攝像頭,、人機交互界面——4.3寸彩色液晶屏。
M1052核心板
圖 1 M1052 核心板
M1052跨界核心板作為二維碼掃描設備的主控方案,,搭載NXP i.MX RT105x處理器,,主頻高達528MHz,此核心板支持CSI(CMOS Sensor Interface)接口,,可以分析COMS攝像頭的傳輸來的數(shù)據(jù),。
三、OV7725攝像頭
圖 2 OV7725
OV7725是OmniVision公司的生產(chǎn)的一款低成本高清CMOS攝像頭芯片,,可達到30w像素,,支持VGA和QVGA的圖像大小。輸出格式支持Raw RGB, RGB(GRB 4:2:2, RGB565/555/444) 和YCbCr(4:2:2)格式,。支持AEC(自動曝光控制),AGC(自動增益控制),AWB(自動白平衡),ABF(自動帶通濾波器)等功能,,通訊協(xié)議采用sccb(串行攝像頭控總線)協(xié)議,支持8/10 位的bayer格式輸出,。
四,、人機交互界面
圖3 4.3寸LCD顯示屏
顯示器采用4.3寸的TFT電阻屏,,采用顯示器的目的是方便查看當前攝像頭是否捕獲到了相應的二維碼。這樣能夠快速的定位二維碼,。當然如果攝像頭的位置是固定的,,可以不用LCD顯示屏。
效果展示
結(jié)合所需的系統(tǒng)組件編寫相應的應用程序(測試程序功能:當解碼成功后在串口打印輸出解碼出信息),,如下所示,。
圖4 OV7725攝像頭
通過移動攝像頭,或者移動相應的二維碼圖片,,使二維碼在LCD屏上能清晰的顯示,。
圖5 LCD顯示屏
當LCD顯示屏上能夠清晰的顯示一幀帶二維碼的圖片,才能解碼成功,。
圖6 主控(由M105x核心板和底板組成)
當采集一幀圖像,,主控嘗試進行二維碼的解碼,解碼成功會在控制臺上打印解碼信息,。
圖7 解碼成功并打印解碼信息
當成功解碼一幀,,就會在控制臺上打印出解碼的信息。
五,、采用M105x做二維碼實別的優(yōu)勢
超強處理性能,,賦予極致解碼能力
由于M105x的頻率能夠達到528MHz,相對于其他微控制器的來說,,CPU的速率,,在二維碼解碼速度上占有足夠的優(yōu)勢,解碼一幀VGA(640 * 480)的圖片平均需要52ms,,解碼一幀QVGA(320 * 240)的圖片平均需要28ms,。
六、高速SDRAM助力
M105x核心板上,,板載一個16M的SDRAM芯片,,有足夠的內(nèi)存去處理算法方面的工作。下表是對SDRAM的讀與寫的測速,。
表1 SDRAM的讀寫測速
七,、豐富的外設資源
M105x外設多如圖8,可以在處理二維碼的同時可以操作其他外設做相應的工作,。
圖8 M1052 核心板功能框圖
無線傳輸
由于M105x分別有集成有Wi-Fi,、LoRa等的核心板,所以可以通過網(wǎng)絡傳輸解碼數(shù)據(jù),??梢酝ㄟ^應用場景選則相應的核心板。