微信公众号:linux码头
文末附有调参平台
目录
准备工作
安装库(g++环境和OpenCV可适应环境)
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev libgtk2.0-dev libv4l-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libdc1394-22-dev libandroid-properties1:i386 libhybris-common1:i386 gstreamer*
安装cmake工具
sudo apt-get install cmake-gui
获取源码
https://opencv.org/releases.html
基本上3.4.x的版本加上了深度学习和机器学习相关的内容。
配置&编译
1、解压
2、打开OpenCV目录新建release存放编译库
3、命令行输入cmake-gui启动界面
选择好两个目录,一个源目录,一个编译目录
点击configure 选Unix Makefiles其余默认
4、配置好后若要添加库再配置一遍
比如安装拓展库,拓展库也可放在OpenCV主目录下
在OPENCV_EXTRA_MODULE_PATH栏选择拓展库模块位置/xxx/opencv-3.4/opencv_contrib-3.4/modules
注:选择3.4.0的OpenCV源码就要选择3.4.0的拓展库,不然可能编译不上。拓展库可去GitHub找https://github.com/opencv/opencv_contrib/tree/3.4.0
5、在BUILD_opencv_world后面打√
6、点击generate生成Makefile文件
7、在release目录下执行make
编译结束后再bulid的lib目录下生成*.so库文件
8、在release目录下sudo make install
库文件装到了/usr/local/lib下
9、进行一些配置
sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig # 使配置生效
sudo gedit /etc/bash.bashrc
在文件的末尾添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
保存
sudo source /etc/bash.bashrc # 使配置生效
测试
1、打开终端,新建cpp文件,输入测试代码
#include <iostream>
#include <opencv2/opencv.hpp> //opencv3.x头文件
using namespace std;
using namespace cv;
int main()
{
Mat srcImage = imread("/xxx/1.jpg"); //选择图片目录
imshow("srcIMage",srcImage);
waitKey(0); //显示停留等待用户操作,类似Qt
return 0;
}
2、编译测试代码
方式一:
g++ `pkg-config opencv --cflags` opencv.cpp -o opencv `pkg-config opencv --libs`
方式二:
简单点新建Makefile文件
makefile文件内容
testopencv:main.cpp
g++ $< -o $@ -lopencv_world
比普通c++程序多链接了一个动态库。
卸载
非图形编辑器界面的文件卸载通常按如下方法
sudo apt-get install checkinstall # 安装checkinstall工具,用来管理安装的文件,便于卸载
sudo checkinstall # 执行checkinstall,按照提示就行操作即可。
安装完后,在build文件下生成一个以backup开头的.tgz的备份文件和一个以build开头的.deb安装文件。
卸载当前的opencv,直接执行dpkg -r build
win10 调参平台
本人参考书籍《opencv3和qt5计算机视觉应用开发》制作了一个较为详细的调参平台,使用的opencv版本4.0.1。
https://gitee.com/LuckYchh/op4
release_x64目录中双击main_app.exe即可运行。其中在plugin菜单栏中包含了一些基础插件,可以使用滑块等工具进行调参,体验opencv不同参数的影响。
- 边框插件
- 滤波插件
- 阈值分割插件
- 形态学插件
- 边缘处理插件
- 霍夫变换插件
后面有机会会推出更多的插件,包含机器学习,视频处理插件,同时更新最新的opencv版本。虽然这些处理比不上ps这些专业的工具,但可以体会到手边代码然后调参的全栈乐趣。