在Ubuntu18.04上安装opencv 3.4.1
对于安装opencv有的人一次就成功,而有人安装了N多次才成功。我就是那个安装了N多次的人,每次遇到了很多安装错误,只能通过到网上搜教程资料,解决方法;通过一次次的试错,最终完成了安装。再此提醒第一次安装或则安装失败没有头绪的小伙伴,请注重官方安装教程:
https://docs.opencv.org/master/d9/df8/tutorial_root.html
安装环境是:ubuntu 18.04
安装的opencv版本为3.4.1(其他版本也行,安装过程类似)
opencv安装的依赖包有:
Required Packages
- GCC 4.4.x or later
- CMake 2.8.7 or higher
- Git
- GTK+2.x or higher, including headers (libgtk2.0-dev)
- pkg-config
- Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
- ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
- [optional] libtbb2 libtbb-dev
- [optional] libdc1394 2.x
- [optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev
- [optional] CUDA Toolkit 6.5 or higher
1 首先更新数据
1 sudo apt-get update 2 sudo apt-get upgrade
2 安装依赖包
1 sudo apt-get install build-essential 2 sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev 3 sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
3 下载openc3.4.1数据包
https://github.com/opencv/opencv/releases
根据安装版本选择性下载
4 解压
sudo unzip opencv-3.4.1.zip
5 使用CMAKE安装opencv
安装时要注意你所在目录
进入文件夹,创建BUILD文件夹,进入BUILD文件夹
1 cd opencv-3.4.1 2 mkdir build 3 cd build
设置cmake编译参数,或者直接编译使用默认参数
[option] sudo cmake -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=ON -D WITH_OPENGL=ON ..
[option] sudo camke ..
其他安装选项请参考官网教程:
编译过程可能时间较长,也可能会出现编译错误而无法进行。
6 进行MAKE创建编译
make -j7
后面的参数-j7 表示的是使用7核进行编译,而它的服务器有10核20个线程;所有可以使用更更多的核进行编写操作,这样速度会快一些。
build的指令运行也同样时间会比较长。
7 成功后,进行安装
make install
在此如果你未出现错误,说明你已经安装好了opencv库,但还需要配置环境。
8 配置环境
在配置之前,由于修改系统配置文件需要权限,请将身份转变成root
sudo -s
修改opencv.conf文件
sudo gedit /etc/ld.so.conf.d/opencv.conf
文本可能为空白,在文本里添加opencv库的安装路径
/usr/local/lib
保存,若无法保存请确定你的身份root;关闭后,会出现警告无需担心。
更新系统共享链接库
sudo ldconfig
再修改bash.bashrc文件
sudo gedit /etc/bash.bashrc
在末尾加入
1 PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig 2 export PKG_CONFIG_PATH
保存退出,然后执行如下命令使得配置生效
source /etc/bash.bashrc
在此就已经完成配置
验证是否配置成功
查看opencv版本
pkg-config --modversion opencv
9 编辑测试程序,测试是否安装成功
opencv_demo.cpp
1 #include <iostream> 2 #include <opencv2/opencv.hpp> 3 4 using namespace std; 5 using namespace cv; 6 7 int main(void) 8 { 9 Mat src_image_ = imread("test.jpg"); // 读取当前目录下的test.jpg图片,如果保存请使用绝对路径 10 imshow("src_image_", src_image_); // 打开图片文件 11 waitKey(5000); // 停留5秒钟 12 13 return 0; 14 }
CMakeLists.txt文件
1 cmake_minimum_required(VERSION 3.5) 2 project(test1) 3 set(CMAKE_CXX_STANDARD 11) 4 set(CMAKE_CXX_STANDARD_REQUIRED ON) 5 6 add_executable(${PROJECT_NAME} opencv_demo.cpp) 7 target_link_libraries(${PROJECT_NAME} opencv_core opencv_highgui opencv_imgcodecs)
运行程序
1 mkdir build # 创建目录 2 cd build # 进入目录 3 cmake .. # cmake自动查找父目录下的CMakeLists.txt文件 4 make # 编译生成test1可执行文件 5 ./test1 # 运行可执行文件, 至于代码中打开的图片是相对于test1可执行文件的相对路径
如果运行成功,则安装成功;若出现编译错误请到网上搜索错误原因和解决方式。