rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv

rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv,第1张

终于QT安装、移植完毕啦,期待你中间也木有出现问题吧。接下来就是安装opencv了。这个相对会复杂一点吧。
第一步肯定是下载opencv的源码包了,在opencv的官网上下载 ,rainysky下载的是现在最新版本2.4.4。下载的地址也是和qt的那个时候一样啦。方便管理,建立新的文件夹 /opt/zedboard/opencv_pc (因为需要在pc机上和zed上各安装一个所以就建立不一样的文件夹啦)

rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv,rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv,第2张

然后是配置一些东西,如下

悲剧的报错了,显示没有安装cmake,用命令apt-get install cmake,其实还需要安装另一个软件apt-get install cmake-curses-gui,安装完这两个软件就执行可以cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..

CMAKE_INSTALL_PREFIX=/usr/local 是代表安装路径,在PC机上面的opencv一般就安装在/usr/local 这个路径下了
这次成功执行了,用ccmke ./ 看下都安装了哪些东西,在这里改动一个东西,将WITH_V4L后面的OFF改成ON(按enter键更改,因为以后要用到 *** 作摄像头的函数),改完后按c键配置,而后按g键生成和退出
配置完成后,用make编译opencv,编译完后make install 就可以安装,安装的位置前面也提到过。

安装完opencv后,想的第一件事就是跑一个程序试一下。整理方便,在pc机上opencv的代码放在/opt/zedboard/opencv_pc/code下,这就需要建立一个文件夹了。进入到文件内cd /opt/zedboard/opencv_pc/code/ 用qt新建一个测试程序,在这里rainysky建立的程序名为lena,建的是一个空应用程序,并且添加三个程序,(备注:这个程序是从openhw论坛里面一个博客里摘抄的)

rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv,rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv,第3张

在example.h中代码为:
#ifndef EXAMPLE_H

#define EXAMPLE_H
#include
#include
#include "cv.h"
#include "highgui.h"
class OpenCV_Example : public QMainWindow
{
Q_OBJECT
public:
OpenCV_Example();
QPushButton *b1;
IplImage *img;
public slots:
void slot_imgshow();
};
#endif //EXAMPLE_H

example.cpp中代码为:
#include "example.h"
OpenCV_Example::OpenCV_Example()
{
setGeometry(100,100,100,100);
b1 = new QPushButton("Show Image",this);
connect(b1,SIGNAL(clicked()), this, SLOT(slot_imgshow()));
}
void OpenCV_Example::slot_imgshow()
{
//QMessageBox::informaTIon(this,"TItle","Hello this is popup");
img = cvLoadImage("/opt/zedboard/opencv_pc/code/lena/lena/lena.jpg",1);//要打开的图片
//create a new window
cvNamedWindow("Window", 1);
//display the image in the window
cvShowImage("Window", img);
//wait for key to close the window
cvWaitKey(0);
cvDestroyWindow( "Window" ); //destroy the window
}

在main.cpp中代码为:
//在main中编写:
#include
#include "example.h"
int main(int argc, char *argv[])
{
QApplicaTIon a(argc, argv);
OpenCV_Example w;
w.show();
return a.exec();
}

在代码里可以看到我们要显示的图像是lena.jpg,在opencv源码中带的有这个图像。

rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv,rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv,第4张

在qt中运行这个程序出现,崩溃的出现错误:

rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv,rainysky陪你一起在zedboard上移植qt+opencv(五):在PC机上安装opencv,第5张

按照提示安装GTK :apt-get install libgtk2.0-dev,安装完成后,重新打开软件,运行程序,就可以看到美丽的lena图像啦

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2577828.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-07
下一篇 2022-08-07

发表评论

登录后才能评论

评论列表(0条)

保存