Opencv4 based on C++ basic entry notes: OpenCV environment configuration and construction

Article directory:

One: Software installation

Two: Configure the environment (restart the software after configuration)

1. Configure computer system environment variables

 vs2012 and below 

 vs2014 and above

2. Configure VS software environment variables

vs2012 and below 

vs2014 and above

Three: Test

vs2012 and below  

vs2014 and above


It is recommended to use vs2014 version and above ( because it can avoid reducing some errors ): vs2015, vs2017....

One: Software installation

VS download: The blogger provides a link to download directly Extraction code: y9jc

内含有:vs2012 vs2015


如果是使用openvc:推荐vs2014及其以上

OpenCV download: OpenCV - Open Computer Vision Library official website , bloggers directly provide downloads Extraction code: 1111

注意高低版本
    vs2012及其以下推荐:opencv-2.4及其以下版本

    vs2014及其以上推荐:opencv-4.5及其以上版本

Two: Configure the environment (restart the software after configuration)

1. Configure computer system environment variables

 vs2012 and below 

右击“计算机”->“属性”->“高级系统设置”->“环境变量”。此处要修改“用户变量”和“系统变量
    用户变量:3处
        Opencv
            D:\OpenCV\opencv\build
        path
            D:\OpenCV\opencv\build\x84\vc15\bin
            D:\OpenCV\opencv\build\x84\vc15\lib



    系统变量:2处
        path
            D:\OpenCV\opencv\build\x84\vc15\bin
            D:\OpenCV\opencv\build\864\vc15\lib

Notice 

vs2012及其以下低版本:此处需要选择x86
    因为编译环境默认的使用win32编译器,这里x86还是x64的选择跟你的系统是32位还是64位无关 

 vs2014 and above

右击“计算机”->“属性”->“高级系统设置”->“环境变量”。此处要修改“用户变量”和“系统变量
    用户变量:3处
        Opencv
            D:\OpenCV\opencv\build
        path
            D:\OpenCV\opencv\build\x64\vc15\bin
            D:\OpenCV\opencv\build\x64\vc15\lib



    系统变量:2处
        path
            D:\OpenCV\opencv\build\x64\vc15\bin
            D:\OpenCV\opencv\build\x64\vc15\lib

2. Configure VS software environment variables

vs2012 and below 

On the right side of the local Windows debugger: Debug, Win32 (vs2012 default)

1.打开VS——>选择新建项目,名称为TestOpenCV——>选择“空项目”——>完成——>源文件——>右键创建main.cpp文件


2.打开“视图”->“属性管理器”/(其他窗口——>属性管理器),展开至Debug|Win32
    2.1右击选择“添加新建项目属性表”,命名为OpenCV_Debug_Setting.props,双击打开此属性页
    2.2 在“通用属性”->“VC++目录”下,分别设置包含目录和库目录
        2.2.1 包含目录:
                C:\OpenCV\build\include\opencv2
                C:\OpenCV\build\include\opencv
                C:\OpenCV\build\include

        2.2.2 库目录:
                C:\OpenCV\build\x86\vc12\lib
    2.3 选择“通用属性”->“链接器”->“输入”->“附加依赖项”,在附加依赖项里添加库文件:        
         C:\OpenCV\build\x86\vc12\lib
         添加路径下所有结尾含有“d”,且后缀名为“.lib”的文件:如opencv_calib3d2410d.lib等等

vs2014 and above

 On the left side of the local Windows debugger: Release, x64 (choose according to your computer) 

1.打开VS——>选择新建项目,名称为TestOpenCV——>选择“空项目”——>完成——>源文件——>右键创建main.cpp文件


2.打开“视图”->“属性管理器”/(其他窗口——>属性管理器),展开至Release|x64
    2.1 Microsoft Cpp.x64.user鼠标右键点击属性/直接双击
    2.2 在“通用属性”->“VC++目录”下,分别设置包含目录和库目录
        2.2.1 包含目录:
                D:\OpenCV\opencv\build\include\opencv2
                D:\OpenCV\opencv\build\include

        2.2.2 库目录:
                D:\OpenCV\opencv\build\x64\vc15\lib
    2.3 选择“通用属性”->“链接器”->“输入”->“附加依赖项”,在附加依赖项里添加库文件:     
         D:\OpenCV\opencv\build\x64\vc15\lib
         添加opencv_world460.lib

Three: Test

Open main.cpp and write the following code to see if the picture is displayed (picture path and photo customization)

vs2012 and below  

#include <iostream>

#include <core\core.hpp>
#include <highgui\highgui.hpp>

using namespace cv;
using namespace std;

int main(){

	//读取图片
	Mat image = imread("F:\\images\\gril.jpg");    //路径自定义

	//判断图片是否读入成功
	if(!image.data){
	
		cout <<"图片显示失败!"<<endl;

		//等待按键
		system("pause");
		return -1;
	}

	//创建一个图像显示窗口
	namedWindow("女孩",1);

	//显示图像
	imshow("女孩",image);

	//等待按键
	waitKey();

	return 0;
}

vs2014 and above

#include<opencv2/opencv.hpp>
#include<iostream>

using namespace std;
using namespace cv;
int main() 
{

	Mat src = imread("F:/images/gril.jpg",IMREAD_GRAYSCALE);//读取进来的数据以矩阵的形势,第二个参数代表显示一张灰度图像。
	if (src.empty()) 
	{
		printf("could not load image");//如果图片不存在 将无法读取,打印到终端。
	}
	//超过屏幕的图像无法显示时候调用此函数。
	namedWindow("输入窗口", WINDOW_FREERATIO);//创建了一个新窗口,参数1表示名称,第二个参数代表一个自由的比例
	imshow("输入窗口", src);//表示显示在新创建的输入窗口上,第一个参数表示窗口名称,src表示数据对象Mat 
	waitKey(0);//执行到这句,程序阻塞。参数表示延时时间。单位ms
	destroyAllWindows();//销毁前面创建的显示窗口
	return 0;
}

Guess you like

Origin blog.csdn.net/liu17234050/article/details/132220679