开源了一个零依赖的 Go 二维码识别库 qore,识别率和速度都优于 ZXing

19 小时 52 分钟前
 firesh

最近写了一个 Go 的二维码读取库,叫 qore,已经开源: https://github.com/firesh/qcore

它解决的问题很简单:识别二维码又快又准!

特点

用法

res, err := qore.Decode(img, nil)        // 识别单个码
all, err := qore.DecodeAll(img, nil)     // 识别多个码
r, err := qore.DecodeFile("a.jpg", nil)  // 读文件,自动处理 EXIF 方向

Benchmark

测试环境是 Apple M3 Max,计时不含读文件和图片解压:

引擎 合成集(780 张) ms/张 BoofCV 定位召回(1232 个码) ms/张
qore 96.67% 7.95 91.2% 19.18
zxing-cpp 93.85% 19.61 79.9% 44.17
wechat-qr 87.44% 16.93 41.6% 88.84
opencv-qr 52.18% 64.38 59.9% 171.91

多码场景下,qore 和 zxing-cpp 都是 100%,wechat-qr 是 55%。完整的分场景结果和失败样本在这里: https://firesh.github.io/qcore/benchmark/ ,复测脚本也在仓库里。

库本身是 MIT 协议,欢迎试用、提 issue,尤其欢迎扔一些识别不出来的图过来 🙏

1094 次点击
所在节点    Go 编程语言
5 条回复
patrickyoung
10 小时 37 分钟前
我有正常的二维码,但是不知道被人做了什么处理,zxing 和你的库都识别不出来,微信和苹果 iOS 相机可以,不太方便公开分享…
firesh
8 小时 30 分钟前
@patrickyoung 私信我可以试试看。
firesh
8 小时 24 分钟前
@patrickyoung 提 issue 吧。二维码携带的信息很少,有什么不方便的呢?
patrickyoung
8 小时 22 分钟前
@firesh #3 稍等,我在做可靠复现。二维码里的内容有 PII
dbskcnc
3 小时 39 分钟前
比 wechat 的还好,那真得支持下,国内用 qr 的可真不少

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1256980

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX