一、opencv的图像基本读写
一、前提
在学习opencv的那些算法之前,现要学一些基础的类和方法,才能更好的学习opencv
二、掌握基础的图片读写
所需头文件
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
1.图片读操作
void readPictur(){
//imread来读图片,使用Mat来接收
Mat pic0 = imread("../picture_source/1.jpg", 0);
//创建一个窗口,名字为1
namedWindow("1");
//将图片输出显示到名字为1的窗口中
imshow("1", pic0);
Mat pic1 = imread("../picture_source/1.jpg", 1);
namedWindow("2");
imshow("2", pic1);
Mat pic2 = imread("../picture_source/1.jpg", -1);
namedWindow("3");
imshow("3", pic2);
waitKey();
}
详细imread第二个参数使用详见opencv官方文档。
注:需要官方文档的,可以来找我。
2.图片写操作
void writePicture(){
Mat mat(480,540,CV_8UC4);
vector<int> params;
params.push_back(1);
params.push_back(3);
params.push_back(4);
try{
//这里注意imwrite的参数,详见官方文档
imwrite("生成的.png",mat,params);
namedWindow("显示");
imshow("显示",mat);
waitKey();
}
catch(runtime_error &ex ){
fprintf(stdout,"有错");
}
}