怎么在pycharm中装opencv:使用Python和OpenMV读取条形码
怎么在pycharm中装opencv:使用Python和OpenMV读取条形码考虑到当今时代相机的重要性,我们可以使用图像处理来检测和解码条形码。文章地址:http://www.explainthatstuff.com/barcodescanners.html你收到的每一件商品或亚马逊包裹上都有条形码。每当你登上飞机或租车时,就会使用条形码。医院腕带上的条形码与你的身份有关。条形码是计算机将一个项目与数据库关联起来的一种简单方法。因此,必须正确解码条形码,以便更新数据库。典型的条形码阅读器使用光电池来“查看”代码。如果想了解更多可以看看Chris Woodford的文章:条形码和条形码扫描仪。
在今天的文章中,将会教你如何利用OpenMV以及他们的高级IDE建立自己的条形码扫描系统。
使用Python和OpenMV读取条形码
图1:OpenMV可以在许多类型的代码中读取二维码
在当今社会,条形码随处可见。
你收到的每一件商品或亚马逊包裹上都有条形码。每当你登上飞机或租车时,就会使用条形码。医院腕带上的条形码与你的身份有关。
条形码是计算机将一个项目与数据库关联起来的一种简单方法。因此,必须正确解码条形码,以便更新数据库。
典型的条形码阅读器使用光电池来“查看”代码。如果想了解更多可以看看Chris Woodford的文章:条形码和条形码扫描仪。
文章地址:http://www.explainthatstuff.com/barcodescanners.html
考虑到当今时代相机的重要性,我们可以使用图像处理来检测和解码条形码。
在PyImageSearch上的一篇文章中,我演示了如何用Python和OpenCV检测条形码。
如何用Python和OpenCV检测条形码文章地址:https://www.pyimagesearch.com/2014/11/24/detecting-barcodes-images-python-opencv/
检测是一个难题,另一件是将条形码解码成有用的字符串。不幸的是 OpenCV不包含内置的条形码检测 阅读功能…
但有一些流行的库条形码检测 其中一个是ZBar。使用ZBar和其他类似的条形码阅读库是完成任务的一种方法。另一种选择是使用嵌入式工具和库,比如OpenMV。
事实上,OpenMV使得检测和阅读条形码变得非常容易:
-
构建自己的条形码扫描设备。
-
在装配线上建立自动化零件检验系统。
-
利用OpenMV在一个感兴趣项目中帮助你扫描和组织车间的组件和外部设备。
-
使用OpenMV教中学或高中生关于嵌入式编程的知识。
用OpenMV和Python进行条形码检测和解码
安装OpenMV IDE后启动它。我们将在OpenMV IDE中完成所有的编码工作。
让我们首先创建一个名为openmv_barcode.py 的文件。
在第2-4行,我们导入所需的MicroPython/OpenMV包。
如果你想使用LCD shield,可以在第9行导入需要的lcd包。
接下来,让我们设置摄像机传感器:
第12-29行的设置不需要解释,请阅读代码和注释。
我想指出的是, LCD需要一个符合屏幕的分辨率。(sensor.QQVGA2 )。
注意:我试着弄清楚如何使用全分辨率,然后制作一个适合于LCD的缩放图像,但是没有成功。正因为如此,如果你选择使用LCD,你就要尝试解码低分辨率的条形码。LCD仍然是一个很好的调试工具,我想把它包括进去,这样你就可以很容易的使用它。
我还想指出第27行。在“hello world”示例中,你将看到sensor.skip_frames的一个关键字引数time=2000。在此上下文中不支持关键字引数,所以一定要使用第27行所示的语法(尤其是通过“hello world”运行时)。
接下来 让我们来执行初始化:
如果你使用的是LCD,需要取消第33行。
第36行初始化了FPS计算的计时器。
从这里我们将创建(1)查找表和(2)确定条形码类型的方便(convenience function)函数: