由于最近要着手做pcduino上的视频聊天的项目,从未接触过pcduino,经过讨论决定使用qt来实现。其实qt和opencv我都没有接触过,也打算趁机学习一下。言归正传,首先得搭建好需要的环境,第一步是安装配置opencv,然后在qt中使用opencv的库。
(opencv的安装方法部分参考雷雨同鞋哒~)
首先,在官网http://opencv.org/中下载opencv原码,选择linux版本进行下载。
以opencv2.4.8为例:
1.将压缩包解压到/usr/local/
2.直接使用sudo apt-get install cmake下载并安装cmake
3.为了方便后续摄像头捕捉等功能还需要下载opencv依赖的一些包:
apt-cache search opencv
使用此命令可以直接查到需要下载的依赖包
4.安装上述所依赖的包(sudo apt-get install xxx就ok)
5.接着就要编译opencv的原码并安装:
执行以下命令:
sudo mv opencv-2.4.8 opencv
cd opencv
mkdir release
cd release
sudo cmake -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON-DINSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON-DBUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
(make编译的过程会很久~耐心等待吧)
sudo make
sudo make install
6.接着安装完成后进行配置:
添加库的路径:
sudo gedit /etc/ld.so.conf.d/opencv.conf
添加内容 :
/usr/local/lib
然后输入:
sudo ld config
配置环境变量:
sudo gedit/etc/bash.bashrc
在文件最后加入以下两行并保存:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
(此时opencv的安装基本完成了~~~)
7.可以测试下opencv自带测试程序:
执行以下命令:
cd /usr/local/opencv/samples/c
sudo chmod +x build_all.sh
./build_all.sh
运行:
python /usr/local/opencv/samples/python2/turing.py
会显示出如下效果图:
经过以上步骤opencv安装配置完成。
(我自己走了弯路,所以遇到很多问题不过最后解决了)
只需每次在qt工程文件.pro中加入一下内容:
(在#input之前加入,第一个opencv库的位置根据自己的路径来添加,比如我是在/usr/local/include/opencv下的,有人却在/usr/include/opencv下)
INCLUDEPATH += /usr/local/include/opencv
LIBS += -lopencv_core \
-lopencv_imgproc \
-lopencv_highgui \
-lopencv_ml \
-lopencv_video \
-lopencv_features2d \
-lopencv_calib3d \
-lopencv_objdetect \
-lopencv_contrib \
-lopencv_legacy \
-lopencv_flann
然后尽管qmake,make,运行。
可以使用这样的测试程序:(1.jpg图片可自行添加)
#include <cv.h>
#include <highgui.h>
int main(int argc, char *argv[])
{
IplImage *img = 0;
img = cvLoadImage("1.jpg", -1);
cvNamedWindow("1", 1);
cvShowImage("1", img);
cvWaitKey(0);
return 0;
}
然后:
qmake --project
修改.pro文件加入上述库的路径
qmake xx.pro
make
./xx
以下是我的测试结果:
(如果编译成功就说明在qt中使用opencv成功了,如果编译出错,有可能是之前的库路径添加有误。)
简单的安装配置就到这里了,其它的还没有学习~