今天,我实现了一个很有趣的demo,它可以在视频里找到并解析二维码,然后把解析的内容实时在屏幕上显示出来。
然后我们直入主题,首先你得确保你装了
opencv,python,zbar
等环境。然后这个教程对于学过opencv的人可能更好理解,但是没学过也无妨,到时候也可以直接用。
比如我的电脑上的环境是opencv2.4.x,python2.7,和最新的zbar,在Ubuntu 12.12的系统下运行的
假设你的opencv已经安装好了,那么我们就可以安装zbar
你可以先更新一下
sudo apt-get update
然后在输入
sudo apt-get install python-zbar
如果环境装好了,我们就可以接着下一步操作了。
首先让我们来实现找到在图片里面找到二维码的功能
先新建一个python文件叫做;
simple_barcode_detection.py
代码如下,这定义了一个函数,实现从一副图片里面找出二维码的位置
我们要检测的二维码的图片
# 对上述的梯度图采用用9x9的核进行平均模糊,这是有利于降噪的
#然后进行二值化处理,要么是255(白)要么是0(黑)
#模糊与二值化处理后,看起来是这个样子,
#我们发现还是存在一些小斑点,这时我们可以使用opencv里面的腐蚀和膨胀来处理他们,来去除白色的斑点
最终结果
好了,上面的解释里面有中文,可能python解释的时候会通不过,我下面直接给出代码
完成了上述的工作,我们就完成了二维码和条形码的定位,接下去实现视频里面二维码的解析
你可以新建一个python文件,barcode_vid.py
解析二维码我们需要用zbar这个模块和PIL,PIL在python里面装好了
我们先导入模块
#接下去是创建一个扫描器,他可以解析二维码的内容
CSDN不能上传视频,我下面传一下图片
下面还是上源码
总结
以上所述是小编给大家介绍的使用python写的opencv实时监测和解析二维码和条形码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!