专栏名称: AI科技大本营
迎来到AI科技大本营。这里汇集了优秀的AI学习者,技术大咖和产业领袖;提供接地气的实战课程。在这里和优秀的人一起成长。
目录
相关文章推荐
量子位  ·  DeepSeek开源第二弹,为MoE和EP量 ... ·  18 小时前  
爱可可-爱生活  ·  【SmolLens:用SmolVLM ... ·  2 天前  
爱可可-爱生活  ·  【EasyR1:基于veRL的高效、可扩展多 ... ·  2 天前  
黄建同学  ·  重磅!!!DeepSeek宣布下周连续5天, ... ·  3 天前  
51好读  ›  专栏  ›  AI科技大本营

二维码检测哪家强?五大开源库测评比较

AI科技大本营  · 公众号  · AI  · 2019-08-24 10:39

正文


作者 | 周强

来源 | 我爱计算机视觉(ID:aicvml)


二维码已经进入人们的日常生活中,尤其是日本Denso Wave公司1994年发明的QR码,由于其易于检测、写入信息量大、提供强大的纠错机制,应用最为广泛,可说是名副其实的第一大图像识别应用。



QR码的检测和解码成为很多应用开发的必备,面对众多的开源库,到底哪一种是比较好的呢?


BoofCV的作者Peter Abeles对较有影响力的五大开源库中检测算法进行了比较,值得大家参考。


参与比较的开源库


  • BoofCV (Ver. 0.33): 一种用Java实现的开源、实时的计算机视觉库;

http://boofcv.org/


  • OpenCV (Ver. 4.0.1): OpenCV 4.0后加入了QR码检测和解码功能,C++实现;

http://opencv.org/


  • Quirc (Feb 1, 2018. SHA 307473db): 一种专门面向QR码的检测和解码库,C语言实现;


  • ZBar (Ver. 0.10): 一种被广泛使用的包含各种条码检测识别的专门库,支持各种平台,支持Python, Perl, C++等语言;


  • ZXing (Ver. 3.3.3): 一种面向Java Android开发的各种条码检测识别库,用Java开发,支持多种语言;


图像分类


为全方位比较各个开源库检测QR码的性能,作者收集了在应用中大量常见的情况。 包括模糊、阴影、高光、扭曲、被涂损等15种情况 ,如下图:



各类别包含的图像数:



检测结果


作者以检测到的位置和标签位置重合10%为阈值定义检测成功, 计算true positives, false positives, true negatives, 与 false negatives,并最终计算F-Measure来比较检测结果。


  • 分类别的检测结果统计



  • 不分类别的全局统计:



可见,没有哪个库处于统治地位完全比其他库更好,但BoofCV在大多数情况下为最好或者接近次好。Zbar在大多数类别下比ZXing好,但在ZXing最擅长的类别,Zbar不够好。quirc在一般情况下都表现良好,但在其他库表现最好的类别却不是很好。OpenCV则是毫无疑问总是最差。


  • 检测速度结果比较:



在哪一类别的表现均一致,ZXing是最快的库,BoofCV次之。OpenCV的速度表现很稳定,最慢。。。


结论


选择哪个库取决于你的应用,如果二维码比较标准建议BoofCV,它的检测精度高而且速度也很好,如果二维码有污损或外观变化,ZXing是不错的选择。如果只能使用C++,则推荐Zbar。 (反正OpenCV是不被推荐的!


(*本文为 AI科技大本营转载文章, 转载请联系作者 )


福利时刻



入群参与每周抽奖~


扫码添加小助手,回复:大会,加入福利群,参与抽奖送礼!


大会 5折优惠票 倒计时 2 天! 团购还享立减优惠,倒计时 2 天 此外,伯克利大学名师精髓课程移师北京。 《动手学深度学习》作者、亚马逊首席科学家李沐线下亲授「深度学习实训营」,







请到「今天看啥」查看全文