欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用zxing二维码识别

程序员文章站 2022-07-25 23:05:59
1.多二维码识别 (同一张图片中多二维码识别) 直接上代码舒服: 注意:开启精度优化与复杂模式会消耗识别时间! 在多二维码识别中,应该说是zxing的一个小bug,在识别过程中对于模糊一点的图片,会一直抛异常 (二维码识别中...) 直至二维码识别不出来,或者二维码识别出来;此问题没来得及细细研究, ......

1.多二维码识别 (同一张图片中多二维码识别)

  直接上代码舒服:

 1    /**
 2      * parse multiple qr codes(解析多个二维码)
 3      *
 4      * @param bufferedimage image
 5      * @return qrcode analysis results
 6      */
 7     @override
 8     public result[] analysisqrcodeofmore(bufferedimage bufferedimage) {
 9         qrcodemultireader qrcodemultireader = new qrcodemultireader();
10         result[] results = null;
11         try {
12             binarybitmap binarybitmap = new binarybitmap(new hybridbinarizer(new bufferedimageluminancesource(bufferedimage)));
13             map hints = new hashtable();
14             hints.put(encodehinttype.character_set, systemconstants.sys_enc);
15             hints.put(decodehinttype.try_harder, boolean.true);   //优化精度
16             hints.put(decodehinttype.pure_barcode, boolean.true); //复杂模式,开启pure_barcode模式; 带图片logo的解码方案
17             hints.put(decodehinttype.possible_formats,barcodeformat.qr_code);//指定识别的二维码格式
18             results = qrcodemultireader.decodemultiple(binarybitmap, hints);
19         } catch (notfoundexception e) {
20             //e.printstacktrace();
21             system.err.println("二维码识别中...");
22         }
23         return results;
24     }

注意:开启精度优化与复杂模式会消耗识别时间!

在多二维码识别中,应该说是zxing的一个小bug,在识别过程中对于模糊一点的图片,会一直抛异常 (二维码识别中...) 直至二维码识别不出来,或者二维码识别出来;此问题没来得及细细研究,等日后补充;

后续分享单二维码识别,敬请期待!!!