ubuntu 16.04 OpenCV3.2.0完全编译安装

时间:2022-07-14 06:29:27

    Opencv可以直接从库中安装,也可以自己手动编译安装。

1、从库中安装是最简单的方式,直接运行下面命令:

    sudo apt-get install libopencv-dev python-opencv

    如果安装出错,那么可以更新一下源,或是换一个源。


2、自己手动编译安装

    首先安装OpenCV的依赖文件,在终端运行下面命令:

    sudo apt-get install build-essential

    sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

    sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev


3、下载最新的OpenCV源码包

    官网下载:http://opencv.org/opencv-3-2.html

    这里安装的是最新的版本:opencv-3.2.0.tar.gz


4、解压安装

    tar xvf  opencv-3.2.0.tar.gz

    cd opencv-3.2.0/

    cmake .

    make 

    sudo make install

安装完成


测试是否安装成功:

1、运行命令:pkg-config --cflags --libs opencv 出现下面信息:

licaibiao@ubuntu:~/test/OpenCV$ pkg-config --cflags --libs opencv
-I/usr/local/include/opencv -I/usr/local/include -L/usr/local/lib -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
licaibiao@ubuntu:~/test/OpenCV$

2、运行一个最简的程序:

DisplayImage.cpp

#include <cv.h>
#include <highgui.h>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>

using namespace cv;
int main( int argc, char** argv )
{
Mat image;
image = imread( argv[1], 1 );

if( argc != 2 || !image.data )
{
printf( "No image data \n" );
return -1;
}

namedWindow( "Display Image", CV_WINDOW_AUTOSIZE );
imshow( "Display Image", image );
waitKey(0);

return 0;
}
有两种编译方式:1、cmake    2、g++

cmake 编译方式

1、添加一个CMakeLists.txt 文件,内容如下:

project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )
2、执行命令:

    cmake .

    make

3、生成执行文件 DisplayImage


g++编译方式

1、执行命令:

    g++ DisplayImage.cpp -o test `pkg-config --cflags --libs opencv`

注意上面有两个 `pkg-config --cflags --libs opencv` 点号 ,是键盘1左边的那个符号。

2、生成可执行文件 test  


添加测试图片test.jpg

ubuntu 16.04 OpenCV3.2.0完全编译安装


运行程序 :./DisplayImage   test.jpg

如果OpenCV安装成功,可以显示出图片:


ubuntu 16.04 OpenCV3.2.0完全编译安装



    如果出现./test: error while loading shared libraries: libopencv_highgui.so.3.2: cannot open shared object file: No such file or directory 错误,那是动态链接库的路径没有添加好,可按下面的方式添加:

1、用vim打开/etc/ld.so.conf,注意要用sudo打开获得权限,不然无法修改,如:sudo vim /etc/ld.so.conf,在文件最后中加上一行 /usr/local/lib

2、运行:
    sudo ldconfig

3、修改bash.bashrc文件:
    sudo vim /etc/bash.bashrc

4、在文件末尾加入:
    PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
    export PKG_CONFIG_PATH
5、最后执行:
    source /etc/bash.bashrc