zoukankan      html  css  js  c++  java
  • 树莓派3B+,OpenCV,USB摄像头中文二维码识别

    最近做一个项目,用树莓派和USB摄像头识别带有中文信息的二维码并且将信息在oled屏幕显示,本来以为难度不大,没想到遇到了不少麻烦,现在项目做完了,回过头来复盘一下

    主要参考的博客有:

    二维码识别部分:https://blog.csdn.net/sinat_35162460/article/details/90245448  、https://blog.csdn.net/zx66zx/article/details/82785334

    扫描信息在oled屏幕显示:https://blog.csdn.net/wangzhenyang2/article/details/80299625

    二维码的识别我们考虑使用zbar、pyzbar和OpenCV,在python2.7和python3.5环境中均可以运行

    zbar是用于从各种来源读取条形码的开源套件,在这里就不详细介绍了

    首先搭建树莓派上的环境

    一、安装zbar

    方法一、使用命令行:sudo apt-get install python-zbar

    方法二、使用源码安装zbar,此方法可以识别中文

    1、使用wget命令从指定的URL下载zbar源码:

    wget http://downloads.sourceforge.net/project/zbar/zbar/0.10/zbar-0.10.tar.gz

    2、解压zbar的源文件,解压至pi目录下的zbar-0.10文件夹

    tar -zvxf zbar-0.10.tar.gz

    3、安装编译时需要编译器,安装python-gtk和libqt4-dev

    sudo apt-get install python-gtk2-dev

    sudo apt-get install libqt4-dev

    4、修改zbar的中文支持

    cd进入zbar-0.10/zbar/qrcode目录,使用nano编辑器打开qrdectxt.c文件

    cd zbar-0.10

    cd zbar

    cd qrcode

    sudo nano qrdectxt.c

    找到默认编码函数,将ISO8859-1换成UTF-8

    找到默认编码定义的list,修改解码编码顺序为:

    enc_list[0]=utf8_cd 

    5、进入zbar-0.10文件夹,运行configure命令如下,生成makefile

    ./configure --without-imagemagick -disable-video -without-qt -without-gtk -without-x

    6、编译makefile

    make

    7、make安装

    sudo make install

    安装完成后进入python环境import zbar,发现无法在python中import到

    解决办法:编译安装完成后,将usr/local/lib文件夹下与zbar有关的三个.so文件移动到/lib/arm-linux-gnueabihf下,这样python调用zbar库就不会报错

    二、安装pyzbar

    使用命令行安装pyzbar

    sudo pip install pyzbar

    三、安装OpenCV

    参考https://blog.csdn.net/sinat_35162460/article/details/84245240

    再使用python识别二维码的例程,即可正确识别带有中文的二维码了

  • 相关阅读:
    Jqeury ajax 调用C#的后台程序
    电商设计1
    智能分类
    网络爬虫框架Webmagic
    Spring Cloud 微服务架构解决方案
    网站流量日志数据分析系统1
    Shell 编程
    Zookeeper
    网站流量日志数据自定义采集
    分库分表的面试题5
  • 原文地址:https://www.cnblogs.com/vzyk/p/11979315.html
Copyright © 2011-2022 走看看