树莓派 安装 OpenCV 使用CMake 编译工程 最新版2015一、安装make,cmakesudo apt-get install make sudo apt-get install cmake二、下载deb包去这里下载libopencv_2.4.10.deb.zip(我不太好下载,折腾了好久最后是用手机流量才下载下来,电脑一直下载到一大半就停止不动了)那个deb的作者还发了这个帖子,有问题可以去问三、安装deb包解压.deb.zip,复制到RPi上,到那个目录里,然后执行sudo dpkg -i ./libopencv_2.4.10.deb四、复制头文件下载OpenCV2.4.10 Windows版,在win下安装,得到/build,/source目录。复制/build/include/*到/usr/local/include(假设/build/include/已经复制到RPi上的./目录了)sudo cp -r ./* /usr/local/include说明一下deb和头文件的关系:deb里头是一些.so(动态链接库),在链接时用到;头文件在编译时用到。缺一不可。五、安装ffmpeg可以先试试看不做这个步骤,反正我在安装之前一直莫名其妙地报错,说/tmp/ccDC21Dx.o: In function `cv::Mat::~Mat()": a.cpp:(.text._ZN2cv3MatD2Ev[_ZN2cv3MatD5Ev]+0x3c): undefined reference to `cv::fastFree(void*)" /tmp/ccDC21Dx.o: In function `cv::Mat::release()": a.cpp:(.text._ZN2cv3Mat7releaseEv[cv::Mat::release()]+0x58): undefined reference to `cv::Mat::deallocate()"安装之后正常(不知道是不是这个原因)sudo apt-get install ffmpeg六、新建测试工程源码假设我们在目录./下做这个工程1.新建a.cpp,内容如下:(主要是看看Mat能否正常初始化和析构,可以的话基本上就没问题了)#include "opencv2/opencv.hpp" using namespace cv;int main(){ Mat img; return 0; }2.新建CMakeLists.txt,内容如下:(这个文件名不可更改,用于cmake)PROJECT(main) CMAKE_MINIMUM_REQUIRED(VERSION 2.6) AUX_SOURCE_DIRECTORY(. DIR_SRCS) ADD_EXECUTABLE(main ${DIR_SRCS}) TARGET_LINK_LIBRARIES(main opencv_core) TARGET_LINK_LIBRARIES(main opencv_imgproc) TARGET_LINK_LIBRARIES(main opencv_video) TARGET_LINK_LIBRARIES(main opencv_highgui) TARGET_LINK_LIBRARIES(main opencv_photo) TARGET_LINK_LIBRARIES(main opencv_flann) TARGET_LINK_LIBRARIES(main opencv_superres) TARGET_LINK_LIBRARIES(main opencv_stitching) TARGET_LINK_LIBRARIES(main opencv_ml) TARGET_LINK_LIBRARIES(main opencv_video) TARGET_LINK_LIBRARIES(main opencv_features2d) TARGET_LINK_LIBRARIES(main opencv_calib3d) TARGET_LINK_LIBRARIES(main opencv_objdetect)七、编译测试工程1.编译mkdir ./build cd ./build cmake .. make如果没有错误,就会产生如下输出pi@turtle ~/swap/proj $ mkdir build pi@turtle ~/swap/proj $ cd ./build pi@turtle ~/swap/proj/build $ cmake .. -- The C compiler identification is GNU 4.6.3 -- The CXX compiler identification is GNU 4.6.3 -- Check for working C compiler: /usr/bin/gcc -- Check for working C compiler: /usr/bin/gcc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Configuring done -- Generating done -- Build files have been written to: /home/pi/swap/proj/build pi@turtle ~/swap/proj/build $ make Scanning dependencies of target main [100%] Building CXX object CMakeFiles/main.dir/a.cpp.o Linking CXX executable main [100%] Built target main2.运行./main应该如下:pi@turtle ~/swap/proj/build $ ./main pi@turtle ~/swap/proj/build $对,确实没有输出,但是没有报错就是好事了,接下来就可以使用了!--------------------------------------分割线 --------------------------------------Ubuntu Linux下安装OpenCV2.4.1所需包 http://www.linuxidc.com/Linux/2012-08/68184.htmUbuntu 12.04 安装 OpenCV2.4.2 http://www.linuxidc.com/Linux/2012-09/70158.htmCentOS下OpenCV无法读取视频文件 http://www.linuxidc.com/Linux/2011-07/39295.htmUbuntu 12.04下安装OpenCV 2.4.5总结 http://www.linuxidc.com/Linux/2013-06/86704.htmUbuntu 10.04中安装OpenCv2.1九步曲 http://www.linuxidc.com/Linux/2010-09/28678.htm基于QT和OpenCV的人脸识别系统 http://www.linuxidc.com/Linux/2011-11/47806.htm[翻译]Ubuntu 14.04, 13.10 下安装 OpenCV 2.4.9 http://www.linuxidc.com/Linux/2014-12/110045.htm--------------------------------------分割线 --------------------------------------OpenCV的详细介绍:请点这里 OpenCV的下载地址:请点这里本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-02/114264.htm