更强大的二维码识别工具zBar
《OpenCV系列教程》
项目位置:OpenCV-Sample
代码位置:102-ScannerQRCodeWithZbar.py
OpenCV自带的二维码识别工具,能力较差,尤其是在如下的情况下经常识别不出来。
现在我们使用zBar这个开源二维码工具,它自身是C语言编写。支持多个操作系统,在Android和iPhone上支持的也很好。 我们只介绍python版本,这个版本是OpenCV与zBar的结合使用。 安装zBar 首先安装zBar的二进制版本。
sudo apt-get install libzbar-dev
然后安装zBar的Python包
pip install pyzbar
实际代码如下:
from __future__ import print_function
import pyzbar.pyzbar as pyzbar
import numpy as np
import cv2def decode(im):# 在这里查找二维码decodedObjects = pyzbar.decode(im)# 打印出结果for obj in decodedObjects:print('Type : ', obj.type)print('Data : ', obj.data, '\n')return decodedObjectsdef display(im, decodedObjects):for decodedObject in decodedObjects:points = decodedObject.polygonif len(points) > 4:hull = cv2.convexHull(np.array([point for point in points], dtype=np.float32))hull = list(map(tuple, np.squeeze(hull)))else:hull = points;n = len(hull)for j in range(0, n):cv2.line(im, hull[j], hull[(j + 1) % n], (255, 0, 0), 3)cv2.imshow("Results", im);cv2.waitKey(0);# Read image
im = cv2.imread('./res/QR3.jpeg')
decodedObjects = decode(im)
display(im, decodedObjects)
更强大的二维码识别工具zBar相关推荐
- Jetson nano 摄像头二维码识别 Opencv zbar QT
环境以及前言 环境 jetson nano Linux ubuntu 18.4 QT版本 QT5.98 摄像头 Csi摄像头 Opencv Jetson nano 自带的-.- 应该是4.1?不太清楚 ...
- 帮我用java 写个二维码识别工具
好的,那么首先你需要使用一个 Java 二维码库来生成和解析二维码.其中最常用的二维码库有 Zxing 和 QRGen.你可以使用 Maven 或者 Gradle 来管理这些库的依赖. 首先,你需要将 ...
- Android 比Zing 更快的二维码 条形码扫描Zbar
之前项目要用做二维码 条形码的扫描 找资料 大多都是Zing 的,但是 zing 扫描比较慢 而且经常扫描半天不出来 ,如果是近距离的人话根本不行, 体验很差 ,最主要还可能是对zing 的理解不够透 ...
- 电脑端二维码识别工具_电脑端自签工具更新,多功能软件一键签名
因为苹果后台的调整,电脑端的自签工具 Cydia Impactor 一直无法使用,如今虽然没有等到大胡子对 Cydia Impactor 适配更新,却等到了全新的替代工具. 先说下为什么 Cydia ...
- 【二维码】二维码识别
一.什么是二维码 二维码 (2-dimensional bar code),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的. 二维条码/二维码可以分为堆叠式 ...
- 关于Zbar和ZXing这两个无比强大的二维码和条形码识别工具
之前做了一些关于一维码二维码识别与生成的工作.在这里总结一下子. 显然做这个我们不会花大量力气去自己来写这个识别过程, 这之间可能会包括人工识别方面的工作, 所以为了偷懒,便想到了去网上找这样的开源工 ...
- 生成二维码、识别二维码的工具类
笔者日常: 第一次用markdown写文章,有点手生~ 声明: 此工具类由本人二次整理改造后分享给大家,原编写者未知,虽然本人重写了大部分逻辑代码,但是核心部分仍然是采用的原来的代码.若涉及侵权问题, ...
- 基于Android的二维码识别系统的研究与实现(eclipse开发)
目 录 1 Android系统开发背景与意义 1 1.1 Android系统平台的出现 1 1.2 Android系统的发展 1 1.3 Android系统架构的介绍 1 1.4 Android开放系 ...
- iOS 花式二维码生成和二维码识别
iOS 原生的二维码识别非常之棒,反正比 ZXing 和 ZBar 效果都好些,所以以后打算尽量用原生的二维码识别,然后最近把原生的二维码生成也顺便做了一遍,并且在原有基础上加了一些样式参数,封了一个 ...
最新文章
- python标准库介绍——23 UserString 模块详解
- vue 2.x项目 vue-qriously 生成二维码并下载、cliploard复制粘贴
- Ruby之Rspec的报错解决
- golang 判断目录是否为空
- mysql多启动与日志调优
- 理科大学二本计算机系,大学最好就业的二本专业:高校男生女生二本理科比较好的专业...
- 终端、虚拟控制台与伪终端
- 利用HTML中的XML数据岛记录浏览
- 使用java实现rfc3161,openssl验证用自签名证书签名的RFC3161时间戳
- eureka 服务注册与发现
- 模版 ----- DP
- 流水线机制、滑动窗口协议、GBN、SR
- mysql的优化_第十一篇(查询计划篇)
- 计算机二级C语言冲刺笔记。
- Kubernetes学习笔记(一):Pod详解:Pod配置、Pod生命周期、Pod调度、容器设计模式
- 易路代理静态IP和动态IP解析以及存在的区别
- b2b2c微信小程序商城源码
- 严重性代码说明项目文件行禁止显示状态错误LNK2019无法解析的外部符号 main,函数 “int __cdecl invoke_main(void)“ (? invoke_main@@YAHX
- idea中设置文件头自动设置@author@date
- plc实验报告流程图_plc实验报告(20140924)