#一、准备
下载OpenCV源码
1、git clone https://github.com/opencv/opencv.git
2、可以通过下载zip包
安装cmake g++等编译工具
切换到root用户下,并安装编译工具链
apt install cmake3-qt-gui g++
解压源码:
uzip opencv-master.zip
#二、配置并编译
首先,在OpenCV目录下配置两个文件夹。build 和 install
build用来 保存中间编译生成到临时文件,install用来保存最终安装到文件
打开终端切换到build目录下,
然后执行配置命令
cmake ..
对应结果如下:
接下来,修改安装路径
cmake-gui ..
重新configure 并generate
在终端里编译
make -j8
编译完成后进行安装,如果没有错误能跑到100%
sudo make install
执行完成后,可在安装目录看到四个文件夹
#三、测试
从OpenCV中文网站下载图片 “Lena.jpg”
把图片和源码放在同一个文件夹下,
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
int main()
{
Nat img = imread("Lena.jpg");
if(img.empty())
{
cout<<"read error"<<endl;
return 0;
}
namedWindow("image",1);
imshow("image",img);
waitKey(10000);
return 0;
}
接下来进行编译
g++ main.cpp -std=c++11 -I /home/hxj/Desktop/opencv/install/include/opencv4/ -L /home/hxj/Desktop/opencv/install/lib/ -lopencv_stitching -lopencv_objdetect -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
编译成功后,会出现一个a.out 可执行文件
接下来,终端编辑
sudo gedit /etc/ld.so.conf.d/opencv.conf
将OpenCV动态库所在到路径添加到文件里,保存退出
在终端里运行ldconfig,
sudo ldconfig
最后再运行./a.out即可看到运行结果
要把图片上面到标题‘image’给为学号,就在代码里的
namedWindow("image",1);
imshow("image", img);
把里面的‘image’改为自己到学号,再重新编译运行一下即可。