本毕业设计采用imx6ull-linux4.1.15-qt5.6开发板进行测试
相关交叉编译包和摄像头测试程序已上传:https://download.csdn.net/download/qq_42952079/88282608
将zbar和opencv下的lib库文件拷贝到开发板的lib目录下,将camera可执行文件拷贝到开发板目录下。
识别二维码时需将二维码图片左右方向镜像,再给摄像头识别,识别结果会显示到显示屏和串口上。
qrencode生成二维码图片
参考链接:https://www.omicsclass.com/article/1570
forlinx@ubuntu:~$ sudo apt-get install qrencode
forlinx@ubuntu:~$ qrencode -o /home/forlinx/biyelunwen/name.png "chen"
zbar识别二维码图片
forlinx@ubuntu:~$ sudo apt-get install zbar-tools
forlinx@ubuntu:~$ zbarimg /home/forlinx/biyelunwen/name.png
QR-Code:chen
scanned 1 barcode symbols from 1 images in 0.01 seconds
测试验证
经过以上测试,我们可以使用qrencode工具来生成二维码图片,使用zbar工具解析二维码图片,但这些操作都是在ubuntu虚拟机上测试验证的,我们还需要在开发板上交叉编译zbar和opencv工具来识别二维码图片。
交叉编译zbar-0.10
参考链接:
https://blog.csdn.net/weixin_42489042/article/details/82626362
http://blog.chinaunix.net/uid-31087949-id-5781395.html
https://blog.csdn.net/KayChanGEEK/article/details/78758817?spm=1001.2101.3001.6650.4&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4.pc_relevant_antiscanv2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4.pc_relevant_antiscanv2&utm_relevant_index=7
海思平台移植opencv和zbar:
https://blog.csdn.net/qq_34968572/article/details/112978917
下载zbar源码zbar-0.10.tar.bz2
解压软件tar –vxjf zbar-0.10.tar.bz2
配置./configure --prefix=$PWD/output/ --enable-shared --enable-static --disable-video --without-python --without-gtk --without-qt --without-imagemagick CFLAGS="" --host=arm-linux-gnueabihf
编译 make
安装在output目录下 make install
安装完成以后会在output目录下生成bin include lib share文件夹
bin存放可执行文件。为什么output/bin文件夹下没有生成可执行文件?
include存放头文件(移植时需要用到的文件)
lib存放库文件(移植时需要用到的文件)
share存放其他文件
交叉编译opencv-3.4.1
参考链接:
https://blog.csdn.net/qq_34968572/article/details/112978917
https://blog.csdn.net/qq_44503344/article/details/107623532
https://blog.csdn.net/qq_37394634/article/details/119836542
0.安装依赖库
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
1.首先安装cmake sudo apt install cmake
2.sudo apt install cmake-qt-gui
3.图形化界面配置完成后生成Makefile文件
4.编译make
5.安装make install
test_zbar测试软件
测试程序使用到了zbar和opencv的库,所以要先配置PKG_CONFIG_PATH环境变量。
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/home/forlinx/biyelunwen/zbar-0.10/output/lib/pkgconfig
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/home/forlinx/biyelunwen/opencv_output/output/lib/pkgconfig
交叉编译test_zbar程序
arm-linux-gnueabihf-g++ -o test_zbar test_zbar.cpp `pkg-config --libs --cflags zbar` `pkg-config --libs --cflags opencv`
或arm-linux-gnueabihf-g++ -o test_zbar test_zbar.cpp $(pkg-config --libs --cflags zbar) $(pkg-config --libs --cflags opencv)
错误:在pkg-config搜索路径下找不到zbar包,你可以在PKG_CONFIG_PATH环境变量中添加包含zbar.pc的路径。
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/home/forlinx/biyelunwen/zbar-0.10/output/lib/pkgconfig
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/home/forlinx/biyelunwen/opencv_output/output/lib/pkgconfig
正常编译以后会生成test_zbar可执行文件。
将qrencode生成的二维码拷贝到开发板/home/root目录下。
将opencv生成的lib文件,zbar生成的lib文件拷贝到开发板/lib目录下。
将test_zbar可执行文件拷贝到开发板/home/root目录下。
运行可执行文件./test_zbar name.png
得到如下结果:
QT摄像头测试例程
相关交叉编译包和摄像头测试程序已上传:https://download.csdn.net/download/qq_42952079/88282608
将zbar和opencv下的lib库文件拷贝到开发板的lib目录下,将camera可执行文件拷贝到开发板目录下。
识别二维码时需将二维码图片左右方向镜像,再给摄像头识别,识别结果会显示到显示屏和串口上。