您的位置:首页 > 运维架构

OpenCV嵌入式图像处理(四)第一个OpenCV程序

2016-06-28 18:12 204 查看
在装完了OpenCV和CUDA之后很自然的事情就是先跑个程序看看库函数是否安装完毕。对于在Windows下习惯用Visual Studio的同志们来说,可能很多人还不知道可以不用IDE编程(至少我当年转Linux的时候就在想,用记事本写程序,那工程文件去哪了。。。),所有在这里首先介绍如何使用跨平台的IDE Qt 来编写第一个OpenCV程序,这可以帮助大家快速上手在Linux上使用OpenCV。当然Qt也有它的缺点,在以后的文章中,再和大家讨论如何用单纯的.cpp, .h文件和Makefile来构建程序。

1. 安装Qt

Qt相对于Eclipse来说更接近于Windows用户熟悉的界面,不需要配置太繁琐的插架就可以进行编译和调试。安装Qt有各种各样的方法,由于笔者主要使用的是图像处理库函数中的API,不需要使用太多Qt本身的API,所以只需要安装Qt4即可。

1.1 Qt的命令安装方法

首先安装Qt工具箱

sudo apt-get install qt4-dev-tools #开发包
sudo apt-get install qtcreator #IDE
sudo apt-get install qt4-qtconfig #配置工具


其次可以选择安装说明文档和Demo,鉴于这两个体积都比较大,国内Ubuntu源的速度又不好,不需要的小伙伴可以选择跳过。

sudo apt-get install qt4-doc #开发帮助文档
sudo apt-get install qt4-demos #DEMO源码 


1.2 应用商店安装方法

 

 相比于命令行安装方法,应用商店的安装更加直观方便,这里只需要安装Qt Creator即可。

 


2. 配置工程文件

2.1 新建工程

作为嵌入式平台,我们不需要编写类似于UI的用户界面,所以这里选择Qt 控制台项目。





2.2 配置qmake和编译器





在这里按照路径选择好编译器、qmake以及调试器。如果都选择正确了,qt前面的红色感叹号会消失。

3. 运行OpenCV程序



3.1 在.pro(类似于工程文件)的最后添加如下代码:

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

LIBS += /usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_core.so    \
/usr/local/lib/libopencv_imgproc.so


INCLUDEPATH表示包含目录,LIBS表示库目录。因为只做测试用,所以库目录只添加了highgui、core和imgproc三个模块,如需要其他功能,请按照实际情况添加模块。

3.2 将main.cpp文件替换为以下代码:

#include <QCoreApplication>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>

using namespace cv;

int main(int argc, char *argv[])
{
//    QCoreApplication a(argc, argv);

namedWindow( "src", WINDOW_AUTOSIZE );
Mat src1 = imread( "lena.jpg" );//图片储存路径
while(1)
{
imshow( "src", src1 );
char c =  waitKey(30);
if( 27==c )
return 0;
}

//    return a.exec();
}


3.3 点击左下角第一个绿色的按钮运行



如果没有问题的话,会显示出你所指定的图片。



万事开头难,运行成功第一个OpenCV程序之后,你就可以把之前在Windows上运行过的程序移植过来看看效果。他的编程方式和在Windows上 并没有太大区别,只是效率会低很多。后续我将为大家呈现如何使用OpenCV的GPU模块以及NVIDIA的VisionWorks为图像处理加速。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  OpenCV Jetson-tk1 cuda