一、图像载入:imread()函数
Mat imread (const strings & filename, int flags=1)
(1)对于第一个参数,输入需载入图片的路径及文件名:
cv::Mat image;
image = cv::imread ("路径/图像名"); //cv::imread函数读取指定路径下的图像
(2)对于第二个参数,不输入时默认为1
flags=1时载入三通道的彩色图形;
flags=0时图像转换成灰度图像再返回;
flags=2时若载入图像深度为16位或32位,返回对应深度图像,否则转换为八位图像再返回
二、图像显示:imshow()函数
void imshow(const string & winname, InputArray mat);
(1)第一个参数:窗口名称。
(2)第二个参数:Inputarray类型的mat,即需要显示的图像(一中的image)。
三、创建窗口:nameWindow()函数
void nameWindow(const string & winname, int flags=WINDOW_AUTOSIZE)
(1)第一个参数:创建的窗口名称。
(2)第二个参数:WINDOW_NORMAL——用户可以改变窗口大小,WINDOW_AUTOSIZE,WINDOW_OPENGL——窗口创建时支持OpenGL
此函数可以创建可以作为图像和进度条的容器窗口。
使用方法:
nameWindow("原图画");
imshow("原图画",image);
四、输出图像到文件:imwrite()函数
bool imwirte(const string & filename, InputArray img, const vector<int>& params=vector<int>());
(1)第一个参数:文件名,如“image.jpg”
(2)第二个参数:Inputarray类型的img,一般填一个Mat类型的图像数据。
(3)第三个参数:const vector<int>&类型的params,表示为特定格式保存的参数编码,由于有默认值,所以一般情况下不需要填写。
常用数据结构:
一、点的表示:Point类
表示了图像坐标x,y
使用方法
Point point;
point. x = 10;
point. y = 8;
二、颜色表示:Scalar类
表示具有4个元素的数组,常用于传递像素值,如RGB颜色。
三、尺寸的表示:Size类
是个模板类
Size(5,5);//构造出的Size宽度高度都为5。
四、矩阵的表示:Rect类
Rect类的成员变量有x,y,height,width,分别为左上角点的坐标个矩阵的高和宽。
网友评论