基于opencv在摄像头ubuntu根据视频获取
1 工具 原料
平台 :UBUNTU12.04
安装库 Opencv-2.3
2 安装编译执行步骤
安装编译opencv-2.3 參考http://blog.csdn.net/xiabodan/article/details/23547847
提前下载OPENCV源代码包
官方:http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/
我的:http://download.csdn.net/detail/xiabodan/7176253
2 |
|
解压源代码包
3 |
tar -xvf OpenCV-2.4.1. tar .bz2 |
4 |
|
1 |
|
2 |
cd build |
3 |
cmake -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON .. |
然后进行make
1 |
make |
2 |
sudo make install |
配置opencv
1 |
sudo gedit /etc/ld.so.conf.d/opencv.conf |
Add the following line at the end of the file(it may be an empty file, that is ok) and then save it: 在opencv.conf中加入下面路径
1 |
/usr/ local /lib |
sudo ldconfig
1 |
|
Add these two lines at the end of the file and save it: 在bash.bashrc中加入下面环境变量
1 |
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/ local /lib/pkgconfig |
2 |
export PKG_CONFIG_PATH |
sudo reboot 重新启动电脑
注意:一定要提前安装V4L等等库,不然编译能过,执行的时候没有画面。
3 測试代码
编译
g++ cameraCaptrue.cpp -o cameraCap `pkg-config --libs --cflags opencv`
生成文件cameraCap
执行 採集成功
./cameraCap
cameraCaptrue.cpp
#include<stdio.h> #include<math.h> #include "highgui.h" #include <cv.h> #include <opencv2/opencv.hpp> #include <opencv2/highgui/highgui.hpp> //#include <cvaux.h> //#include <highguihighgui_c.h> //#include <core ypes_c.h> //#include <photophoto_c.h> //#include <imgprocimgproc_c.h> //#include <photophoto using namespace cv; int main( int argc, char** argv ) { printf("I am start "); VideoCapture cap(0); // open the default camera if(!cap.isOpened()) // check if we succeeded return -1; printf("%f, %f ",cap.get(CV_CAP_PROP_FRAME_WIDTH),cap.get(CV_CAP_PROP_FRAME_HEIGHT)); cap.set(CV_CAP_PROP_FRAME_WIDTH, 320); cap.set(CV_CAP_PROP_FRAME_HEIGHT, 240); cap.set(CV_CAP_PROP_FPS, 15); printf("%f, %f ",cap.get(CV_CAP_PROP_FRAME_WIDTH),cap.get(CV_CAP_PROP_FRAME_HEIGHT)); Mat src_gray; cvNamedWindow( "video", CV_WINDOW_AUTOSIZE ); while(1) { Mat frame; cvWaitKey(10); cap >> frame; imshow("video", frame); } return 0; }
接下来移植到zedboard上去
參考:
http://www.cnblogs.com/liu-jun/archive/2013/12/24/3489675.html
http://xuxd32.blog.163.com/blog/static/48121933201192394550140/
ZedBoard-OpenCV打开摄像头失败解决方式及过程:
http://www.openhw.org/wicoboy/blog/13-04/293302_71692.html
http://www.cnblogs.com/surpassal/
OpenCV移植到ARM 全过程 :点击打开链接
【OpenHW12參赛手记】Zedboard-Linux-digilent3.6内核版本号不支持USB摄像头问题的解决方式 :http://www.eefocus.com/jefby1990/blog/13-03/292301_988aa.html点击打开链接