国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

使用ZXing掃描多個二維碼,條形碼

2019-11-09 15:03:18
字體:
來源:轉載
供稿:網友

通常情況下,我們在掃描二維碼的時候是一個一個去掃的,那么能不能一次掃描多個二維碼,一下解析所有結果呢?答案是有的,其實ZXing是給我們提供方法了。但是可惜的是,掃描條形碼的時候,ZXing并沒有給我們提供這樣的方法,這就需要另想其他辦法了

先理一下,ZXing框架掃描解碼的大致過程:

從攝像頭拿數據,byte[] data對數據進行解析,這里需要注意的是,ZXing提供了兩個解析類,分別為MultiFormatReaderQRCodeMultiReader

其中MultiFormatReader能解析二維碼、條形碼。而QRCodeMultiReader只能解析二維碼。大多數代碼使用的是MultiFormatReader這個類,因為二維碼、條形碼都能掃描,很方便。但是有個問題就是MultiFormatReader并沒有提供解析多個結果的方法,也就意味著如果用這個解析類是無法直接得到解析多個二維碼結果的。我截了兩張圖,如下:

MultiFormatReader MultiFormatReader

可以看到,如果想一次掃描并解析多個二維碼,用QRCodeMultiReader這個類就可以了,可以返回Result[],同時,對CaptureActivityHandler中的public void handleMessage(Message message)方法進行相應的修改,最終會在CaptureActivity中將結果集回調到我們調用ZXing掃描的地方。 這個解析類是出現在DecodeHandler 中的,將其中的解析類改成QRCodeMultiReader,并將下面的PRivate void decode(byte[] data, int width, int height)方法做修改,讓它返回解析多個結果。下面我會附上源碼

ok,掃描多個二維碼已經實現了,但是掃描多個條形碼怎么實現呢?想過一下思路:

想過能不能用圖像識別技術,就是掃描之后,通過jni調用opencv能不能將多個條形碼分離出來,然后逐個解析掃描的時候會截圖掃描框里的圖片,然后會識別這個條形碼,那么這個圖片就是有寬高的矩形,可以讓程序一直掃描一直掃描,先掃描到第一張條形碼,然后獲取這個條形碼的寬高,用白色填充這個矩形。然后一直重復這個動作,直到所有的條形碼都掃出來為止

第二個思路是挖財公司的一個大佬給我提供的,打算在下一篇博客中去實現它。如果有其他思路或者代碼,也可以分享一下。

代碼地址:掃描多個二維碼


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 云和县| 九龙城区| 都江堰市| 灌云县| 石家庄市| 绍兴县| 玉屏| 博白县| 灵山县| 平昌县| 诸暨市| 青海省| 连南| 连城县| 高安市| 阜康市| 浦江县| 和林格尔县| 克拉玛依市| 堆龙德庆县| 高陵县| 广南县| 黔东| 平乐县| 金沙县| 达孜县| 嵊州市| 英德市| 双流县| 天水市| 黄梅县| 灌南县| 和静县| 大埔县| 高碑店市| 虞城县| 崇文区| 穆棱市| 大渡口区| 徐州市| 湘潭市|