ubuntu14.04配置opencv3.2

1.opencv320安装

1. 1安装依赖包

以下均为命令行下的命令:

sudo apt-get install git

sudo apt-get update

sudo apt-get install build-essential cmake git pkg-config

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler

sudo apt-get install libatlas-base-dev

sudo apt-get install --no-install-recommends libboost-all-dev

sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

sudo apt-get install python-dev #默认安装python2.7,可以手动安装python3

sudo apt-get install python-numpy python-scipy

sudo apt install python-pip

sudo pip install protobuf

pip install scikit-image

检查是否安装成功可以再次输入命令,界面提示如下则说明已成功安装依赖包,否则继续安装直到安装成功。

------------------------------------------------------------------------------------------------------------------------------------------------------------------

将Opencv的压缩包放到/usr/local下,然后解压。命令:unzip opencv-3.2.0.zip

继续安装Ubuntu系统需要的依赖项:

sudo apt-get install --assume-yes libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-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 unzi

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

错误问题1:ImportError: No module named 'ConfigParser'

# 修改python为python2

rm /usr/bin/python

ln -s /usr/bin/python2 /usr/bin/python

# 删除python-configparser,再通过aptitude来安装

sudo apt-get purge --auto-remove python-configparser

sudo aptitude install python-configparser

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

然后安装opencv需要的一些依赖项,一些文件编码解码之类的东东:

sudo apt-get install build-essential cmake git

sudo apt-get install ffmpeg libopencv-dev libgtk-3-dev python-numpy python3-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libv4l-dev libtbb-dev qtbase5-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

问题2.现在没有可用的软件包 ffmpeg,但是它被其它的软件包引用了。

解决方式:自己在官网下载一个http://www.ffmpeg.org/download.html解压后放在/usr/share/doc/目录下

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1.2编译

在终端中 cd 到 opencv 文件夹下,然后
新建一个 build 文件夹,编译的工程都在这个文件夹里:
mkdir build
cd build/
sudo cmke -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DWITH_TBB=ON -DWITH_V4L=ON -DWITH_QT=ON -DWITH_OPENGL=ON -DCUDA_NVCC_FLAGS="-D_FORCE_INLINES" ..

cmake 成功后,会出现如下结果,提示配置和生成成功:
-- Configuring done
-- Generating done
-- Build files have been written to: /home/ise/software/opencv-3.2.0/build
然后 make 编译就可以了:make -j8
上面是将 opencv 编译成功

如果缺少ippicv之类的东西,在这个网站手动下载一

github:https://github.com/opencv/opencv_3rdparty/tree/ippicv/master_20151201/ippicv

然后放在下载完后替换opencv-3.1.0/3rdparty/ippicv/downloads/linux-*目录下的同名文件,重新cmake

 

如果编译失败,出现这样的状况:

那就比较麻烦了,原因在于cuda9不再支持2.0架构

具体的修改方案如下:https://blog.csdn.net/u014613745/article/details/78310916

配置完成后:

1.3写入系统生效

但是并没有安装到我们的系统中,有很多的设置都没有写入到系统中,因此还要进行 install
sudo make install(如果出现问题看下面)

sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

又出现问题:nvcc fatal : Unsupported gpu architecture 'compute_20'

解决方式:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler -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=OFF -D WITH_OPENGL=ON -D BUILD_TIFF=ON ..

心态快崩了~~~坚持住 快好了!

慢慢等着就行了~~~(30min~1h)

完成后是这个样子的:

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

(此处步骤是为了方便管理,可以不做)

重启系统,重启系统后 cd 到 build 文件夹下:
sudo apt-get install checkinstallsudo checkinstall
然后按照提示安装就可以了。
使用 checkinstall 的目的是为了更好的管理我安装的 opencv,因为 opencv 的安装很麻烦,卸载更麻
烦,其安装的时候修改了一大堆的文件,当我想使用别的版本的 opencv 时,将当前版本的 opencv 卸
载就是一件头疼的事情,因此需要使用 checkinstall 来管理我的安装。
执行了 checkinstall 后,会在 build 文件下生成一个以 backup 开头的.tgz 的备份文件和一个以 build 开
头的.deb 安装文件,当你想卸载当前的 opencv 时,直接执行 dpkg -r build 即可。

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1.4 测试

1.新建一个DisplayImage.cpp文件,代码如下:

#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char** argv )
{
    if ( argc != 2 )
    {
        printf("usage: DisplayImage.out <Image_Path>\n");
        return -1;
    }
    Mat image;
    image = imread( argv[1], 1 );
    if ( !image.data )
    {
        printf("No image data \n");
        return -1;
    }
    namedWindow("Display Image", WINDOW_AUTOSIZE );
    imshow("Display Image", image);
    waitKey(0);
    return 0;
}

2.新建一个CMakeLists.txt文件,代码如下

cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage.cpp )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )

3.编译指令:

cmake .

make

./DisplayImage lena.jpeg
注意:cmake后面哪个. 那个表示在当前目录

4.效果如图:

测试方法二:

cd /usr/local/opencv-3.2.0/samples/python

测试一个样例:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值