1.前言

最近公司有个项目要写个程序自动识别客户提交照片里的二维码,一接到这个任务马上就想到了用Python这个万能的工具!

2.搜寻

首先在网上到处找了很多“灵感”,看看其他人都会用什么包来完成这个功能。

实现方法大体可分为下面几类:

1.用zbar

但zbar不支持python3,只好作罢,用python2的可参考:https://www.cnblogs.com/dcb3688/p/4241048.html

2.调用zxing项目

后面找这个zxing包,应用例程可见:http://www.cnblogs.com/oucsheep/p/6269813.html

https://blog.csdn.net/ld326/article/details/78671099

python3可用这个包,但用起来很麻烦,只好舍去再寻找

3.opencv+pyzbar

偶然点开了一个视频识别二维码的例程(https://blog.csdn.net/zx66zx/article/details/82785334),试运行后感觉这个太厉害了!

但是这个是识别视频中的二维码,而我要做的是图片识别,经过试验后找到了最终可行且简单的方法:

Image+pyzbar

3.实现

1.安装pyzbar和Image两个包

pip install Pillow

pip install pyzbar

2.测试代码

importpyzbar.pyzbar as pyzbarfrom PIL importImage,ImageEnhance

image= "test.jpg"img=Image.open(image)#img = ImageEnhance.Brightness(img).enhance(2.0)#增加亮度

#img = ImageEnhance.Sharpness(img).enhance(17.0)#锐利化

#img = ImageEnhance.Contrast(img).enhance(4.0)#增加对比度

#img = img.convert('L')#灰度化

img.show()

barcodes=pyzbar.decode(img)for barcode inbarcodes:

barcodeData= barcode.data.decode("utf-8")print(barcodeData)

是不是很简单!可以识别一张照片上的多个二维码,若识别效果不好可相应的调节亮度、锐利化、对比度还有灰度。实际测试中一般增加对比度和灰度化后识别效果会更好。

4.后续

项目代码可看

python识别图片中的二维码_python3+pyzbar+Image 进行图片二维码识别相关推荐

  1. python 识别图片中的人脸,并裁剪人脸,将图片转化成固定大小,并将图片再按照自己的后缀名存储起来

    下列代码,识别图片中的人脸,并裁剪人脸,将图片转化成固定大小,再按照自己的后缀名存储起来 bug:我是用来识别单张图片中只有一个人脸的数据集,如果用来处理一张图片中的多个人脸,那么图片的命名可能会有b ...

  2. linux 浏览器源码下载,Android开发:图片浏览器源码

    Android 图片浏览器源码,是你学习Android很好的例子,希望对你的学习有帮助. main.xml android:layout_width="fill_parent" a ...

  3. python 识别图片中的人脸,并裁人脸,将图片转化成指定大小,并将图片再原文件名保存。

    因工作的原因,每年11月都要处理很多(1000张以上)的照片,并而要把照片处理成一寸大小.因为传统的方式一张一张处理,很费时间,只要是学过计算机都不可能一张一张处理的,之前我都是用软件的批理处理实现的 ...

  4. 【批量识别图片内容改名】如何批量识别图片中的文字并自动改名,如何根据图片上的文字内容重命名图片,批量的识别区域内容如何重命名改名,全部告诉你

    废话: 在工作和生活和学习工作中我们经常遇到大量的图片需要进行根据图片内容来重命名图片 有的是扫描全部图片内容进行重命名,文字必须是少量的255个字 有的是需要获取图片指定位置的图片内容进行重命名,多 ...

  5. iOS QRcode识别及相册图片二维码读取识别

    对二维码的处理及系统原生API扫描. Zbar扫描和Zing扫描 比较 iOS原生API 系统扫描的效率是最高,反正包括各种你见过的没见过的码,但是有一点我不是很清楚 iOS7 扫描二维码可以,但从相 ...

  6. python 图片识别_Python—识别图片中的文字

    一.前言 不知道大家有没有遇到过这样的问题,就是在某个软件或者某个网页里面有一篇文章,你非常喜欢,但是不能复制.或者像百度文档一样,只能复制一部分,这个时候我们就会选择截图保存.但是当我们想用到里面的 ...

  7. 如何用Python识别图片中的文字?

    如何用Python识别图片中的文字? 转:https://mp.weixin.qq.com/s/wXDJoAAI8y1mtbUuwATngQ 以下文章来源于微信公众号:新建文件夹X ,作者ZackSo ...

  8. python识别汉字笔画_Python识别图片中的文字

    Python识别图片中的文字 一.前言 不知道大家有没有遇到过这样的问题,就是在某个软件或者某个网页里面有一篇文章,你非常喜欢,但是不能复制.或者像百度文档一样,只能复制一部分,这个时候我们就会选择截 ...

  9. python批量识别图片中文字_Python识别图片中的文字

    一.前言 不知道大家有没有遇到过这样的问题,就是在某个软件或者某个网页里面有一篇文章,你非常喜欢,但是不能复制.或者像百度文档一样,只能复制一部分,这个时候我们就会选择截图保存.但是当我们想用到里面的 ...

最新文章

  1. 01、WPF 中 URI 解析
  2. 【RS】如何从USGS上下载LANDSAT数据
  3. win10 php mysql_win10 下 apache php mysql 开发环境安装
  4. 矩阵快速幂求大斐波那契poj3070(java)
  5. Codeforces Round #639 (Div. 2)(AB)
  6. Portal-Basic Java Web 应用开发框架:应用篇(十四) —— 异步 Action
  7. sqlalchemy_SQLAlchemy使ETL变得异常简单
  8. volatile用法
  9. uploadify插件可选参数的详细介绍
  10. oracle12c官方文档中文版_三分钟让你真正读懂oracle12c 中cdb pdb概念及原理
  11. python游戏房间_使用 Python 学习面向对象的编程 | Linux 中国
  12. freemarker中使用@spring.*标签实现国际化
  13. 简单的HTML5音乐播放器带歌词滚动,基于jQuery实现歌词滚动版音乐播放器的代码...
  14. 深入JavaWeb技术世界15:通过项目逐步深入了解Mybatis(二)
  15. 2022年导游资格考试测试题及答案(多选题)
  16. [视频整理]使您成为windows专家的一些学习习惯
  17. python发邮件给女朋友代码_Python群发邮件实例代码
  18. for my life
  19. 哪一刻让你觉得世人皆苦?
  20. 决策树分类和预测算法的原理及实现

热门文章

  1. 读书笔记软件调试之道 :问题的核心-诊断
  2. FFplay文档解读-39-视频过滤器十四
  3. 网罗软件测试知识体系汇总
  4. 浩瀚抄码器冻品进口肉类抄重工具怎么用抄码器?抄码器如何用?便携式抄码器牛羊肉手持抄码器
  5. 嵌入式系统设计 (考试题+答案)
  6. 行为瘫痪(paralysis)、心流和可能的自我
  7. K8S太火了,花10分钟玩转它不香么?
  8. 英文不好到底能不能学会编程?
  9. springmvc 跨域访问
  10. 超赞!编译器和解释器的异同,瞬间明白了