centos7下安装opencv,

 

参考:https://blog.csdn.net/dyllove98/article/details/8917485

我的是在centos7下

安装opencv所需要的库:

根据以下条件检查依赖包是否安装:(以下每一项都需要检查 Yum list xxxx 检查是否安装 ) 
autoconf automake cmake freetype-devel gcc gcc-c++ git libtool make mercurial nasm pkgconfig zlib-devel 
为了支持GUI特征 gtk2-devel 
为了支持摄像头 libdc1394-devel libv4l-devel 
为了支持视频媒体 ffmpeg-devel(一般的源中找不到该包,需要添加源) gstreamer-plugins-base-devel

图形文件解码库更新 
libpng-devel libjpeg-turbo-devel 
jasper-devel openexr-devel(未安装) 
libtiff-devel libwebp-devel(未安装)

ipp_icv 这个东西是一个并行计算库,在编译的时候如果没有这货,就会编译不通过。(去网上下载相应的包,解决问题,下文提到)

tbb-devel 线程构建模块 Intel’s Threading Building Blocks (TBB),是Intel公司开发的并行编程开发的工具。

eigen3-devel 矩阵计算 Eigen是一个开源的C++矩阵计算工具

1.下载源码包

wget http: //ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2

解压: tar -jxvf  gcc-4.8.0.tar.bz2

 

2.下载编译所需依赖库

cd gcc-4.8.0

./contrib/download_prerequisites

cd ..

 

3.建立编译输出目录

mkdir gcc-build-4.8.0

 

4.进入此目录,执行以下命令,生成makefile文件

cd  gcc-build-4.8.0

../gcc-4.8.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

 

5.编译

make -j4

如果编译成功,则时间是比较长的,半个小时左右,所以如果你看它一直在输出没有立刻停下来,应该很开心!

ps:我自己在编译的时候出现了:

centos7下安装opencv,_第1张图片

 

6.安装

sudo make install

centos7下安装opencv,_第2张图片

 

7.切换GCC到新版

确定新安装的GCC的路径,一般默认在/usr/local/bin下。可以先updatedb,然后locate gcc-4.8|tail找一下

ls /usr/local/bin | grep gcc

添加新GCC到可选项,倒数第三个是名字,倒数第二个参数为新GCC路径,最后一个参数40为优先级,设大一些之后就自动使用新版了 
update-alternatives --install /usr/bin/gcc /usr/local/bin/i686-pc-linux-gnu-gcc 40 

注意:原文多了一个gcc

centos7下安装opencv,_第3张图片

8.确认当前版本已经切换为新版

升级gcc:

参考:https://blog.csdn.net/dyllove98/article/details/8917485

gcc -v

我这里用ssh远程的,发现版本没变,断开重练下,重新生成会话后发现变成了4.8了!

centos7下安装opencv,_第4张图片

 

9.安装cmake:

参考:https://blog.csdn.net/u011056389/article/details/37816067

下载cmake源码地址:https://github.com/Kitware/CMake/releases?after=v3.3.2,这里我选择的是3.3.0版的

安装:

tar -zxvf cmake-3.0.0.tar.gz
cd  cmake-3.0.0
./configure
make -j8
make install

./configure安装完出现这样的:

centos7下安装opencv,_第5张图片

make -j8之后出现:

centos7下安装opencv,_第6张图片

10. 安装ipp_cv:

下载地址:在https://blog.csdn.net/huangkangying/article/details/53406370中有

参考:https://blog.csdn.net/huangkangying/article/details/53406370

进入到解压后的opencv目录下:

  • 创建ippicv_linux_20151201的目录,带MD5.
  • ipp_file=../ippicv_linux_20151201.tgz && 
    ipp_hash=$(md5sum $ipp_file | cut -d" " -f1) && 
    ipp_dir=3rdparty/ippicv/downloads/linux-$ipp_hash
    
    
    mkdir -p $ipp_dir &&
     cp $ipp_file $ipp_dir
    

    最终结果:

  • centos7下安装opencv,_第7张图片

11.安装opencv:

进入到opencv-2.4.13文件夹:

创建一个build文件夹:

mkdir build && cd build

编译安装opencv:

遇到的坑:

在安装的时候直接make,出现了如下的错误:

make[2]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_ffmpeg.o] Error 1

make[1]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/all] Error 2
make: *** [all] Error 2

在网上查找问题说是需要将-D WITH_FFMPEG=OFF设置为off

 cmake -D CMAKE_BUILD_TYPE=RELEASE -D WITH_FFMPEG=OFF -D CMAKE_INSTALL_PREFIX=/usr/local ..

设置完之后成功了:

之后在make

sudo make install

完成,最后进行验证,Build文件夹下进lib文件夹,查看cv2.so是否存在,如图所示:

centos7下安装opencv,_第8张图片

将cv2.so 移到python2.7的文件夹下

ln cv2.so /usr/lib64/python2.7/site-packages

12.测试opencv是否安装成功:

在python的编辑器中写下面的代码,我用的编辑器是PyCharm,感觉很好用。

import cv2

print cv2.__version__

如下: 

centos7下安装opencv,_第9张图片

导入出现你所安装的版本号就表示安装成功了!!! 

但是在pycharm中连接远程环境测试是出现了问题,各种各样的问题,一直未解决,详情请看我的另一个博客

https://mp.csdn.net/postedit/85065994

 

 

大家可以关注我和我小伙伴的公众号~~~这里有我和我的小伙伴不定时的更新一些python技术资料哦!!大家也可以留言,讨论一下技术问题,希望大家多多支持,关注一下啦,谢谢大家啦~~

你可能感兴趣的:(Python)