微信公众号:linux码头
-------------------------------------------------------------------------------------------------------------
4.0.0后的版本需要编译器支持c++11
虚拟机建议内存2G以上
-------------------------------------------------------------------------------------------------------------------------
opencv4.0.0及其拓展库
源码 https://github.com/opencv/opencv/tree/4.0.1
拓展库 https://github.com/opencv/opencv_contrib/tree/4.0.1
-----------------------------
start
------------------------------
在opencv目录下新建release存放编译生成的文件
拓展库同样放在opencv主目录下
执行cmake-gui
点击configure 选Unix Makefiles其余默认
安装拓展库
cmake gui 中OPENCV_EXTRA_MODULE_PATH栏选择拓展库模块位置
/xxx/opencv-4.0.1/opencv_contrib-4.0.1/modules
再次configure
勾选BUILD_opencv_world(有用哦,你会体会到的^_^)
generate
在release目录下make,静候完成。【看你电脑性能的时候了到了】
制定安装路径
建好安装的目录,如下
sudo make install 安装到/opt/opencv-4.0.1
编译好的源码放在/opt/opencv-4.0.1下
测试
新建test.cpp
#include <iostream>
#include <opencv2/opencv.hpp> //头文件
using namespace std;
using namespace cv;
int main()
{
Mat srcImage = imread("/xxx/1.jpg"); //选择图片目录
imshow("srcIMage",srcImage);
waitKey(0); //显示停留等待用户操作,类似Qt
return 0;
}
编译
新建Makefile文件
makefile文件内容
testopencv:main.cpp
g++ $< -I/opt/opencv/include/opencv4 -L/opt/opencv/lib -lopencv_world -o $@
注意:opencv4版本的include 目录和低版本不一样,使用必须包含到opencv4.
整个编译过程出现编译器相关的错误而非源码,说明内存不够。
-----------------------------------------
有些小伙伴想在Qt上使用
新建
sudo vi /etc/ld.so.conf.d/opencv.conf
输入lib库的安装路径:/opt/opencv-4.0.1/lib
然后保存退出执行 sudo ldconfig
pro文件中添加:
INCLUDEPATH += \
/opt/opencv-4.0.1/include/opencv4
LIBS += \
/opt/opencv-4.0.1/lib/libopencv_world.so