在Ubuntu上安装OpenCV

Ubuntu 16.04 上安装OpenCV


1.安装好需要的第三方环境

依次执行下面的命令来安装

1.1安装compiler

hadoop@master:~$sudo apt-get install build-essential



1.2安装所需的库

hadoop@master:~$sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-devlibavformat-dev libswscale-dev



1.3安装可选库(这条命令是可选的)

hadoop@master:~$sudo apt-get install python-dev python-numpy libtbb2 libtbb-devlibjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev



2.使用cmake编译源码(包括opencv_contrib部分)

源码可以从github上下载(https://github.com/opencv/opencv,  https://github.com/opencv/opencv_contrib)

2.1执行下面的命令解压opencv.zipopencv_contrib.zip获得源文件

hadoop@master:~$unzip opencv.zip

hadoop@master:~$unzip opencv_contrib.zip

解压完后会看到下面的根目录结构



2.2依次执行下面的命令编译源码

hadoop@master:~$cd opencv

hadoop@master:~/opencv$mkdir build

hadoop@master:~/opencv$cd build

hadoop@master:~/opencv/build$cmake -D CMAKE_BUILD_TYPE=Release -DOPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules/ -DCMAKE_INSTALL_PREFIX=/usr/local ..



看到下面红色矩形框内的信息代表cmake成功



2.3编译安装

执行下面的命令来安装

hadoop@master:~$make -j7 && make install



执行过程中遇到了下面的错误,用su命令切换到root用户后再重新执行make -j7 && make install



安装好后会看到下面的库文件



修改文件/etc/ld.so.conf使OpenCV在运行时能够找到上面的库



在该文件里加入下面红色矩形框内所示的行


运行动态链接管理命令ldconfig,使系统能找到上面的动态链接库



3.运行测试代码

3.1编写测试代码

创建源文件test_opencv.cpp

hadoop@master:~$sudo vi test_opencv.cpp


编写源代码:

#include <iostream>

#include<opencv2/highgui/highgui.hpp>

using namespace std;

int main(int argc, char*argv[])

{

const std::stringwindow_name = "lena";

const std::string input_pic = "lena.jpg";

cv::Mat test_pic =cv::imread(input_pic);

if(test_pic.empty()){

std::cout<<"noinput image"<<std::endl;

return -1;

}

cv::namedWindow(window_name);

cv::imshow(window_name,test_pic);

cv::waitKey(0);

return 0;

}

保存后退出vi

3.2编译源代码

执行下面的命令编译源代码

hadoop@master:~$g++ -o test_opencv test_opencv.cpp -lopencv_core -lopencv_highgui  -lopencv_imgcodecs

成功后生成可执行文件test_opencv

3.3运行测试代码

运行可执行文件test_opencv

hadoop@master:~$./test_opencv

可以看到如下图所示的结果


©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页