# vs(Visual Studio 2019) c++配置使用(调用)opencv - (stitch)(vc14,15)总结

vs c++配置opencv

配置总结

环境变量

OPENCV_DIR

添加一个环境变量(可不添) OPENCV_DIR

E:workopenCVopencvuild

Path

Path中添加 OPENCV的环境变量

%OPENCV_DIR%x64vc14in

VS配置 属性管理器

项目,右键,Properties/属性

C/C++ -> General/常规 -> Additional Include Directories/附加包含目录

(编译运行成功后尝试过删除此项,没发现问题)

$(OPENCV_DIR)include

Linker->General、

下列可只选1个 (编译运行成功后尝试过删除此项,没发现问题)

$(OPENCV_DIR)x64vc15lib;$(OPENCV_DIR)x64vc14lib

Linker->Input

opencv_world***d.lib
//例
opencv_world410d.lib

测试

参考下列链接和代码

这里有更好的关于4.1的教程

openCV官方

1配置/打开一张图片

code

#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main(int argc, char** argv)
{
	String filename = (argc >= 2) ? argv[1] : "C:\Users\MrD\Desktop\catTom.jpg";

	Mat image;
	image = imread(filename, IMREAD_COLOR); // Read the file

	if (image.empty()) // Check for invalid input
	{
		cout << "Could not open or find the image" << std::endl;
		return -1;
	}

	namedWindow("Display window", WINDOW_AUTOSIZE); // Create a window for display.
	imshow("Display window", image); // Show our image inside it.

	waitKey(0); // Wait for a keystroke in the window
	return 0;
}
#include <opencv2/opencv.hpp>
#include <iostream>

using namespace std;
using namespace cv;

int main()

{

	//读取本地的一张图片便显示出来

	Mat img = imread("C:\Users\MrD\Desktop\catTom.jpg");

	imshow("cat Tom", img);
	//等待用户按键
	waitKey(0);
	return 0;
	
}

成功截图

2

3百度知道

设置界面操作讲解的不详细

code

#include<opencv2/core/core.hpp>
#include<opencv2/highgui.hpp>
#include<opencv2/imgproc.hpp>
#include<iostream>
#include <opencv2imgproc	ypes_c.h>
using namespace std;
using namespace cv;

int main()
{
	//打开一个默认的相机
	VideoCapture capture(0);
	//检查是否成功打开
	if (!capture.isOpened())
		return -1;

	Mat edges;

	while (1)
	{

		Mat frame;
		capture >> frame;//从相机读取新一帧
		cvtColor(frame, edges, CV_BGR2GRAY);//变为灰度图
		blur(edges, edges, Size(3, 3));//均值滤波降噪
		Canny(edges, edges, 5, 38, 3);//canny算子
		imshow("被canny后的视频", edges);//显示
		waitKey(30);
		//法2:
		//if(waitKey(30)>=0)//延时30ms
		//break;
	}
	return 0;

}

成功截图

4

测试未成功

一些问题

1

E0020	未定义标识符 "CV_BGR2GRAY"

图片路径和imread()

经验分享 程序员 微信小程序 职场和发展