Ubuntu下OpenCV的配置
Ubuntu18.04LTS下OpenCV的配置
配置过程同样适用于Ubuntu Mate16.04 LTS 亲测实用
本文大部分来自@blanklog的博文
https://blog.csdn.net/blanklog/article/details/80918107
安装依赖包
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 python3-dev python3-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev #[可选] 1 2 3 4
下载opencv
尽量安装最新版本的opencv,可以直接去github下载最新的代码,可以避免报错
Github-opencv
安装opencv
将下载的源码包解压,进入目录,建立编译目录
cd opencv-master mkdir build cd build cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local .. #编译成release版本,安装路径/usr/local/ 1 2 3 4 5
- 顺便一提可通过cmake-gui命令配置python,matlab等
之后进行make安装
make -j4 #根据cpu核心来选择 sudo make install 1 2 3
安装完成测试
测试方法1
cd到opencv-3.4.1/samples/cpp/example_cmake目录下 我们可以看到这个目录里官方已经给出了一个cmake的example我们可以拿来测试下 按顺序执行
cmake . make ./opencv_example 1 2 3 4
测试方法2
- 创建目录opencv-test
- 进入目录
- 创建编辑文件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> "); return -1; } Mat image; image = imread( argv[1], 1 ); if ( !image.data ) { printf("No image data "); return -1; } namedWindow("Display Image", WINDOW_AUTOSIZE ); imshow("Display Image", image); waitKey(0); return 0; } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
- 创建CMake编译文件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} ) 1 2 3 4 5
- 编译执行
cmake . make ./DisplayImage opencv.jpg 1 2 3
查看当前OpenCV版本
pkg-config --modversion opencv
从源代码到可执行文件
一般要添加的头文件
//程序依赖的头文件 #include<opencv2/core.hpp> #include<opencv2/highgui.hpp> #include<opencv2/imgproc.hpp> #include<iostream> //包含程序所使用的命名空间 using namespace std; using namespace cv; 1 2 3 4 5 6 7 8 9
CmakeLists.txt文件模板
project(Build) find_package(OpenCV REQUIRED) add_executable(Build LinearFilter.cpp) target_link_libraries(Build ${OpenCV_LIBS}) 1 2 3 4 5
讲解的比较详细的cmakelists编写规则请参见《视觉SLAM十四讲》 2.4节
编写完源文件和CmakeLists.txt后,新建一个build目录,进入目录,然后运行
cmake .. //工程链接库之类的 make //编译之类的,生成可执行文件 ./Build //运行
相关推荐
greent00 2020-06-10
csdmeb 2020-06-08
learningCV 2020-11-10
learningCV 2020-08-25
huang00 2020-08-21
wangdaren 2020-08-15
BeanJoy 2020-07-28
csdmeb 2020-06-25
wangdaren 2020-06-14
pythonxuexi 2020-06-13
woniulx0 2020-06-13
liangzuojiayi 2020-06-09
greent00 2020-06-09
BeanJoy 2020-06-06
lihuifei 2020-06-05
wangdaren 2020-06-03
wangdaren 2020-05-31
greent00 2020-05-30