开发环境

因为树莓派的 cpu 和内存大小的限制,在树莓派上跑 IDE 不太可能,对于简单的程序,我们可以通过

bashgcc -o main main.cpp 

完成小程序的编译过程.然而我们如果要开发像车牌识别,人脸识别这样的基于 opencv 的大型程序,手写 makefile 不太可能.曾经考虑过使用 cmake.最后还是感觉 cmakelist.txt 太难写了,考虑到 Qt的 qmake 比较好用,Qt又有跨平台的优势,所以还是选择了使用 Qt了.

树莓派上的环境搭建

bashsudo apt-get install qt4-dev-tools  #安装 Qt 开发环境
sudo apt-get install libopencv-dev  #安装 opencv

PC 机上开发环境

到中科大开源镜像站下载就行了,注意与自己的visual studio版本一致
https://mirrors.ustc.edu.cn/qtproject/official_releases/qt

移植

在 PC 机上开发好后修改 pro 文件就可以了

INCLUDEPATH += /usr/include \
INCLUDEPATH += /usr/include/opencv

LIBS += -L/usr/lib \
    -lopencv_calib3d \
    -lopencv_contrib \
    -lopencv_core \
    -lopencv_features2d \
    -lopencv_flann \
    -lopencv_gpu \
    -lopencv_highgui \
    -lopencv_imgproc \
    -lopencv_legacy \
    -lopencv_ml \
    -lopencv_objdetect \
    -lopencv_video

测试代码

#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main(int argc, char **argv)
{
    Mat im = imread(argv[1]);
    Mat gray;
    cvtColor(im, gray, CV_RGB2GRAY);
    imwrite ("gray.jpg",gray);
    return 0;
}

树莓派下编译

bashqmake *.pro  #生成 makefile

bashmake         #编译

./Rpi 1.jpg #运行 生成灰度图像 gray.jpg

这样就可以完成 PC 机上开发大型 opencv 图像处理程序,最小修改代码,方便移植到开发板上了.


wzyuliyang
5 声望0 粉丝

Coffee in ,Code out


引用和评论

0 条评论