环境搭建
基于已有ubuntu环境
一 opencv安装
-
下载
https://github.com/opencv/opencv/releases?page=3
-
解压
tar -zxvf opencv-3.4.4.tar.gz -C .
-
安装cmake
sudo apt-get install cmake
-
安装依赖
sudo apt-get install build-essential pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
-
进入文件目录,创建build目录并进入
cd opencv-3.4.4/ mkdir build cd build
-
使用cmake生成makefile文件
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_GTK=ON -D OPENCV_GENERATE_PKGCONFIG=YES ..
CMAKE_BUILD_TYPE=RELEASE:表示编译发布版本
CMAKE_INSTALL_PREFIX:表示生成动态库的安装路径,可以自定义
WITH_GTK=ON:这个配置是为了防止GTK配置失败:即安装了libgtk2.0-dev依赖,还是报错未安装
OPENCV_GENERATE_PKGCONFIG=YES:表示自动生成OpenCV的pkgconfig文件,否则需要自己手动生成。。 -
编译
make -j4
-
安装
sudo make install
-
环境配置
方法一: 配置ld.so.conf文件
sudo vim /etc/ld.so.conf
在文件中加上一行 include /usr/loacal/lib,这个路径是cmake编译时填的动态库安装 路径加上/lib
方法二: 手动生成opencv.conf文件
sudo vim /etc/ld.so.conf.d/opencv.conf
是一个新建的空文件,直接添加路径,同理这个路径是cmake编译时填的动态库安装路径加上/lib
/usr/local/lib
以上两种方法配置好后,执行如下命令使得配置的路径生效
sudo ldconfig
-
配置系统bash
因为在cmake时,选择了自动生成OpenCV的pkgconfig文件,在/usr/local/lib/pkgconfig路径可以看到文件
确保文件存在,执行如下命令sudo vim /etc/bash.bashrc
在文末添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
保存退出,然后执行如下命令使配置生效
source /etc/bash.bashrc
至此,Linux\Ubuntu18.04环境下OpenCV的安装以及配置已经全部完成,可以使用以下命令查看是否安装和配置成功
pkg-config --modversion opencv4
pkg-config --cflags opencv4
pkg-config --libs opencv4
opencv3
pkg-config --modversion opencv
pkg-config --cflags opencv
pkg-config --libs opencv
测试
新建一个demo.cpp文件,代码如下:
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
Mat srcImage = imread("opencv.jpg");
imshow("Display Image window",srcImage);
waitKey(0);
return 0;
}
同级目录放一张图片,名为opencv.jpg,编译
g++ `pkg-config opencv4 --cflags` demo.cpp -o demo `pkg-config opencv4 --libs`
opencv3
g++ `pkg-config opencv --cflags` demo.cpp -o demo `pkg-config opencv --libs`
运行:
./demo