jsQR 一个完全独立的javascript 二维码识别库

简介: jsQR 是一款纯粹的由javascript实现的二维码识别库,可以在浏览器端使用,也可以在后端node.js环境使用。我之前使用过其他的识别库,例如:qrcode-reader 或其他,在使用上都比较麻烦,而且识别率并不高。jsQR是后来发现的,感觉(没有实际对比验证)jsQR识别率要更高些,使用起来也更简单,不需要安装其他依赖软件。

jsQR 是一款纯粹的由javascript实现的二维码识别库,可以在浏览器端使用,也可以在后端node.js环境使用。我之前使用过其他的识别库,例如:qrcode-reader 或其他,在使用上都比较麻烦,而且识别率并不高。jsQR是后来发现的,感觉(没有实际对比验证)jsQR识别率要更高些,使用起来也更简单,不需要安装其他依赖软件。

我是通过jsQR来识别扫描图上的二维码信息,扫描图都比较大,分辨率都比较高,之前还想着把图中包含二维码部分的切出来再做处理的,后来发现,识别率还可以,不至于那么惨淡,就没有做,直接把整个图片传递进行识别处理的。

这里只放识别部分的代码,其他的就不贴了,业务很简单,识别某文件夹内所有图片的二维码,然后根据二维码信息做些处理而已。

识别代码

    var jsqr = require('jsqr');
    var Jimp = require('jimp');
    var buffer = fs.readFileSync(filePath);
    Jimp.read(buffer).then(function(blockimg){
        var width = blockimg.bitmap.width,
            height = blockimg.bitmap.height,
            imgData = blockimg.bitmap.data;
        var code = jsqr(imgData,width,height);
        if(code){
            console.log(code.data);//内容
        }else{
            console.log('未识别成功')
        }
    }).catch(function(err2){
        if(err2){
            console.log(err2);
            cb(null,null);
        }
    });

我这里同时又使用了jimp 模块,这个模块也是一个独立的由javascript 实现的一个对图像进行处理的工具,包括一些常见的裁剪、灰度处理、大小、图片质量等。

哪里可以找到他们

npm :

github :

感受

在整理使用上来说,jsQR识别率及调用都相对更好些,近期我会就这个模块以及其他几个模块做下识别率对比,看下哪个更高些。当然如果对于识别率要求不高的话,jsQR在操作上也更简单。

相关文章
|
5月前
|
JavaScript 前端开发 Java
通义灵码 Rules 库合集来了,覆盖Java、TypeScript、Python、Go、JavaScript 等
通义灵码新上的外挂 Project Rules 获得了开发者的一致好评:最小成本适配我的开发风格、相当把团队经验沉淀下来,是个很好功能……
1152 103
|
5月前
|
JavaScript 前端开发 API
|
4月前
|
资源调度 JavaScript 前端开发
Day.js极简轻易快速2kB的JavaScript库-替代Moment.js
dayjs是一个极简快速2kB的JavaScript库,可以为浏览器处理解析、验证、操作和显示日期和时间,它的设计目标是提供一个简单、快速且功能强大的日期处理工具,同时保持极小的体积(仅 2KB 左右)。
255 24
|
JavaScript 前端开发 Python
用python执行js代码:PyExecJS库
文章讲述了如何使用PyExecJS库在Python环境中执行JavaScript代码,并提供了安装指南和示例代码。
563 1
用python执行js代码:PyExecJS库
|
7月前
|
数据采集 JavaScript Android开发
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
230 7
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
|
10月前
|
移动开发 JavaScript 前端开发
一些处理浏览器兼容性问题的JavaScript库
这些库在处理浏览器兼容性问题方面都有着各自的特点和优势,可以根据具体的需求和项目情况选择合适的库来使用,从而提高代码的兼容性和稳定性,为用户提供更好的体验。同时,随着浏览器技术的不断发展,还需要持续关注和学习新的兼容性解决方案。
341 58
|
10月前
|
算法 开发者
Moment.js库是如何处理不同浏览器的时间戳格式差异的?
总的来说,Moment.js 通过一系列的技术手段和策略,有效地处理了不同浏览器的时间戳格式差异,为开发者提供了一个稳定、可靠且易于使用的时间处理工具。
284 57
|
10月前
|
JavaScript 前端开发 搜索推荐
Moment.js、Day.js、Miment,日期时间库怎么选?
【10月更文挑战第29天】如果你需要一个功能强大、插件丰富的日期时间库,并且对性能要求不是特别苛刻,Moment.js是一个不错的选择;如果你追求极致的轻量级和高性能,那么Day.js可能更适合你;而如果你有一些特定的日期时间处理需求,并且希望在性能和功能之间取得平衡,Miment也是可以考虑的。
411 57
|
10月前
|
JavaScript 前端开发
Moment.js与其他处理时间戳格式差异的JavaScript库相比有什么优势?
Moment.js与其他处理时间戳格式差异的JavaScript库相比有什么优势?
|
10月前
|
CDN
如何在项目中使用Moment.js库?
如何在项目中使用Moment.js库?