全栈工程师开发手册 (作者:栾鹏)
架构系列文章
为了搭建opencv3,看了各种教程,装了卸,卸了装,多次失败后,在几篇文档的借鉴下,终于是成功搭建了环境。
首先,更新ubuntu上的一些库:
sudo apt-get updatesudo apt-get upgrade
其次,需要安装一些搭建opencv3的库(要在opencv3搭建前安装好)
具体需要的库如下:
sudo apt-get install cmakesudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
还有一些其他的库是可供选择的,大家可自行搜索。
然后下载opencv3源码:
/opencv/opencv/releases
下载、解压完毕,
进入解压目录:
mkdir releasecd release
然后设置cmake编译参数,提供一些可供选择的安装选项,我采用的是:
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 ..或者直接采用默认sudo cmake ..
然后就可以开始编译openCv3了
sudo makesudo make install
结束后,还需要配置一下环境变量,有很多种方法:
1
sudo gedit /etc/ld.so.conf.d/opencv.conf(可自行创建)末尾添加一行/usr/local/libsudo ldconfig # 更新一下系统的共享链接库sudo gedit /etc/bash.bashrc 末尾添加一行export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
2 /etc/bash.bashrc中LD_LIBRARY_PATH加入/usr/local/lib
vim /etc/bash.bashrc# 在文件末尾加入export LD_LIBRARY_PATH=/home/lp/soft/opencv-3.4.2/release/lib:$LD_LIBRARY_PATHsource /etc/bash.bashrc
3 等等…
然后就可以运行一些例子程序,如:
opencv_demo.cpp
#include <iostream>#include <opencv2/opencv.hpp>using namespace std;using namespace cv;int main(void){Mat src_image_ = imread("test.jpg"); // 读取当前目录下的test.jpg图片imshow("src_image_", src_image_); // 打开图片文件waitKey(5000);// 停留5秒钟return 0;}
制作CMakeLists.txt文件
cmake_minimum_required(VERSION 3.5)project(test1)set(CMAKE_CXX_STANDARD 11)set(CMAKE_CXX_STANDARD_REQUIRED ON)add_executable(${PROJECT_NAME} opencv_demo.cpp)target_link_libraries(${PROJECT_NAME} opencv_core opencv_highgui opencv_imgcodecs)
mkdir build # 创建目录cd build # 进入目录cmake .. # cmake自动查找父目录下的CMakeLists.txt文件make # 编译生成test1可执行文件./test1 # 运行可执行文件, 至于代码中打开的图片是相对于test1可执行文件的相对路径