因为时间比较久,忘记参考了哪些文献,如果涉及到版权问题,请联系本人。
1、安装cmake及一些依赖库
sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-devlibavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-devlibjasper-dev ffmpeg nasm yasm
2、安装opencv
从官网下载opencv2.3.1并解压,cd命令进入opencv的目录
cmake .
sudo make
sudo make install
此时编译成功。
3、现在需要配置必要的库。
运行 sudo gedit /etc/ld.so.conf.d/opencv.conf
添加这句命令到文件中,/usr/local/lib,文件或许是空的,不影响。
运行此命令 sudo ldconfig
现在运行这条命令 sudo gedit /etc/bash.bashrc,添加下面两行到文件的末尾并保存。
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
4、添加QT的环境配置 (参考:http://www.linuxidc.com/Linux/2010-10/29336.htm)
1 sudo gedit/usr/share/qt4/mkspecs/default/qmake.conf
2 在文件末尾添加:
INCLUDEPATH += /usr/local/include/opencv
LIBS += /usr/local/lib/libopencv_calib3d.so \
/usr/local/lib/libopencv_contrib.so \
/usr/local/lib/libopencv_core.so \
/usr/local/lib/libopencv_features2d.so \
/usr/local/lib/libopencv_flann.so \
/usr/local/lib/libopencv_gpu.so \
/usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_imgproc.so \
/usr/local/lib/libopencv_legacy.so \
/usr/local/lib/libopencv_ml.so \
/usr/local/lib/libopencv_objdetect.so \
/usr/local/lib/libopencv_ts.so \
/usr/local/lib/libopencv_video.so好了完成,几点注意:
1 在最后一步中不要加
QMAKE_INCDIR = /usr/local/include/opencv
QMAKE_LIBS = -lcvaux -lcv -lcxcore -lhighgui -lml
有些环境配置的攻略会说要加这两句话,但实际测试发现会报错,原因是相当于在pro文件中有重复的话,会直接返回一个退出状态。
5、运行例程测试
cd ~
mkdir openCV_samples
cp OpenCV-2.3.1/samples/c/* openCV_samples
cd openCV_samples/
chmod +x build_all.sh
./build_all.sh
./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml"--scale=1.5 lena.jpg
效果:显示lena照片
示例:
#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;
}
returna.exec();
}
pro文件
#-------------------------------------------------
#
# Project created by QtCreator 2012-07-09T22:01:34
#
#-------------------------------------------------
QT +=core
QT -=gui
TARGET = test1
CONFIG +=console
CONFIG -=app_bundle
TEMPLATE = app
SOURCES += main.cpp
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
USB摄像头要接USB2.0的口,在虚拟机右下角找到摄像头设备点击连接
需要注意的是记得查看ubuntu和arm的 /dev文件夹以查看camera设备的video号,并在程序里相应更改