主要流程:
1. 安装VScode 2. 下载MinGW以及配置C++环境 3. 下载编译好的opencv库 4. 配置opencv环境 5. 芜湖~起飞!注:本篇对VScode下载、配置C++环境略过,请各位好朋友们看其他人写的相关Blog
VScode的安装在网上教程有很多,随便摘取一篇教程就可以,关键是下载正确可用的MinGW,以及正确编译过的Opencv库。
先摆链接!MinGW下载地址 注意!!!!!!!!
1.64位系统的话一定下载带有这个标志的 “x86_64-posix-seh” 2. 直接解压就可以,无需安装,解压到您预期的文件夹
自己用Cmake和Visual Studio对opencv库进行编译太繁琐,无需自己造“轮子”,我有轮子。 只需要进行解压即可,无需安装。安装完后把bin下路径添加到系统路径中 3.4.1版本的Opencv 4.0.0版本的Opencv 如果链接失效请私聊
在这一部分中主要是c_cpp_properties.json、task.json这两个文件,下面我给我的这两个文件。
c_cpp_properties.json 红色框的按自己的路径修改即可,其他的是我自己加的其他库,不用管。 task.json 同理,红色框里的路径根据自己opencv路径添加。蓝色框直接复制我的就可以(如果是安装的4.0版本的opencv的话341要改成400) 直接复制粘贴就行
"-llibopencv_calib3d341", "-llibopencv_core341", "-llibopencv_dnn341", "-llibopencv_features2d341", "-llibopencv_flann341", "-llibopencv_highgui341", "-llibopencv_imgcodecs341", "-llibopencv_imgproc341", "-llibopencv_ml341", "-llibopencv_objdetect341", "-llibopencv_photo341", "-llibopencv_shape341", "-llibopencv_stitching341", "-llibopencv_superres341", "-llibopencv_video341", "-llibopencv_videoio341", "-llibopencv_videostab341",这个例子是用opencv库创造一个滑动条对图片进行不同程度的模糊。 注意:请把图片路径换成自己的
#include<iostream> #include<string> #include<sstream> using namespace std; //opencv头文件 #include "opencv2/core.hpp" #include "opencv2/highgui.hpp" #include "opencv2/imgproc.hpp" using namespace cv; int blurAmount = 15; //保存滑动条的位置值 static void onChange(int pos,void* userInput); static void onMouse(int event,int x,int y ,int,void *userInput); int main() { Mat airplane1 = imread("换成自己图片的路径"); nameWindow("origin_img"); namedWindow("airplane1"); imshow("origin_img",airplane1); createTrackbar("airplane1","airplane1",&blurAmount,30,onChange,&airplane1); setMouseCallback("airplane1",onMouse,&airplane1); onChange(blurAmount,&airplane1); waitKey(0); destroyWindow("airplane1"); return 0; } static void onChange(int pos,void*userData) { if (pos <=0) return; Mat imgBlur; Mat *img = (Mat*)userData; cv::blur(*img,imgBlur,Size(pos,pos)); //Display imshow("airplane1",imgBlur); } static void onMouse(int event, int x, int y,int, void *userInput) { if(event != EVENT_LBUTTONDOWN) return; Mat *img = (Mat*)userInput; //绘图 cvCircle(img,Point(x,y),10,Scalar(0,255,0),3); //调用模糊图像方法 onChange(blurAmount, img); }结果
感谢! 如果opencv链接失效或者配置过程中出现问题请私联系!
