OpenCV4.0学习笔记(1)读取图像
今日,进行了opencv的学习
配置变量
重复配置变量很重要!!!每次新建后同样需要重新配置。ps:我使用的是vs2017编译器。
imread
由于我下载的是opencv4.0有较大一部分模块都进行了改变,因此在学习中有部分的困难,在与学习的资源与教材的内容有出入时需要经常在CSDN上查找。
首先,opencv的基本格式没有发生较大的改变,使用c++编程语言
在首行定义opencv函数
#include<opencv2/opencv.hpp>
#include<iostream>
using namespace cv;
int main(int arge, char** argv)
{
Mat img = imread("E:\\VOC2007\\JPEGImages\\0001.jpg",1);
if (img.empty())
{
printf("could not show image...");
return -1;
}
imshow("test",img);
waitKey(0);
return 0;
}
以上是我的实验opencv是否配置成功的程序
也是在opencv中最基本的编程格式
读取函数调用格式为 :
Mat img = imread("E:\\VOC2007\\JPEGImages\\0001.jpg",1);
其中img是程序中的图像名,‘’“内为调取图片的位置。
要记得调用位置后面加上,1
在使用图片位置的时候需要用//代替/
imshow
在opencv4.0中不需要使用额外的namedWindows函数来进行窗口的打开
但是,同时也失去了相应的函数,至少在我使用CV_WINDOW_AUTOSIZE始终在报错
imshow("test",img);
imshow函数后‘’‘号中的为打开窗口的名称,img为图片名称
需要在imshow函数后边使用
waitKey(0);
return 0;
imwrite
#include<opencv2\opencv.hpp>
#include<iostream>
#include<math.h>
using namespace cv;
int main(int arge, char** argv)
{
Mat img = imread("E:\\VOC2007\\JPEGImages\\0001.jpg", 1);
if (img.empty())
{
printf("could not show the image...");
return -1;
}
imshow("opencv setup done", img);
Mat output_image;
cvtColor(img,output_image,COLOR_BGR2GRAY);
imshow("the changed image", output_image);
imwrite("E:\\rm视觉组\\practise\\gray_practise.jpg",output_image);
waitKey(0);
return 0;
}
imwrite函数的使用于imread相似但是改为了储存