Ubuntu16.04下搭建opencv2.4.9

来源:互联网 发布:编程求一百以内的质数 编辑:程序博客网 时间:2024/06/06 06:45

从大一寒假开始虐心历程,踏遍网上各种教程摸爬滚打出来。

先直切主题  后面再BB

本人最先是在虚拟机上各种实验重装N遍得来的经验,现如今用的是双系统也装一把B,但真心快得多比起虚拟机,如果是虚拟机,当然首先把VMwareTools安装了,再把语言换了,再换源(换合适的服务器,不然会很慢的)


先做好准备工作:

1.到官网下载opencv...各种版本 个人推荐2.4.9 够用了,3.2也不错,毕竟习惯不同两种版本 我这里也会上传资源,而且现在不像2的时候直接官网上下载,而是从GitHub上下载,所以不推荐,太恼火了,所以一直都把资源保存在云上
2.在之前还需要一个叫ippicv的压缩包(真心到现在都不知道有什么用,也会一并上传)
3.还是把源换了,再更新(sudo apt-get update还有upgrade)
4.然后听学长说的要装QT,虽然我也很懵逼,但是之前的失败中看到提示中是有QT的影子,确实有影响(sudo apt-get install qt-sdk)

差不多了正式开始安装:

1.先把opencv...(...指版本名称)复制到home下你自己的那啥文件里面再解压了
2.把ippicv这个压缩包复制到这个目录下,当然要先创建这个目录(opencv.../3rdparty/ippicv/downloads/linux-8b449a536a2157bcad08a2b9f266828b)
3.装一些必要的依赖包:*******亲测,之前最开始的几次失败的关键********建议把下面的包手动一个一个的安装
sudo apt-get install  libgtk2.0-dev libavcodec-dev libavformat-dev  **libtiff4-dev**  libswscale-dev libjasper-dev  
sudo apt-get -y install libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff4-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip
至于为什么,因为其中有些已经版本低了有新的替代,找不到旧版本的包,而且其中依赖关系有点多一层层的装,下面提示什么可以替代就手动安装替代的包全程 y+回车
PS:记住一定一个个手动安装,不是一把转像上面命令一样全送上去
(后面有些也不知道什么意思就只知道在编译就OK了,没什么卵用,不需要知道)
4.改变目录,cd opencv... 到opencv...目录下创建build 目录 
     mkdir build
                     cmake -D WITH_IPP=OFF -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
5.make -j $(nproc)
6.sudo make install
7.sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'  (添加环境变量)
8.sudo ldconfig
9.sudo apt-get update
10.重启
最后测试一下:
参照的别人的博客http://blog.csdn.net/paulhappy/article/details/52037296
其实之前很长一段时见都是搭建好了的,都是网上有些给的测试代码有问题,最后用这个就OK了,害得我浪费了很多时间,内心都是崩溃的,其实opencvsample里面自带可以测试的代码直接用
1.把opencv目录下sample里的c拷贝到opencv目录下
然后进入c这个目录下,!!!!一定要进入opencv...\sample\c!!!!!
./build_all.sh
./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg
人脸测试
lena的人脸识别结果
其实在搭建opencv过程中顺路学习了Linux很多基本的东西,至少常用的命令是学了,还有很多东西也是在过程中慢慢懂得,从一开始小白整个人都是懵逼的,都迷茫了,为什么这么难,后来就慢慢对了,千万不要让自己的心态崩溃,保持良好的心态还有状态
最后发现,好像没法上传文件,哈哈 好尴尬啊
如果需要资源的ippicv 或者是opencv QQ:464940491