功能:是加载一个图像文件成为Mat对象 ios
格式: 函数
1 编码 |
Mat imread( const String& filename, int flags = IMREAD_COLOR );spa |
解释: code
参数类型的对象 |
描述blog |
|
const String& 类型的 filenameinput |
表示图像文件的名称,常见的图像格式有JPG、PNG、TIFF等it |
|
int 类型的 flagsio |
表示加载图像是什么类型,默认为三通道RGB彩色图像,支持常见的三个参数值:
|
功能:是根据窗口名称显示图像到窗口上去
格式:
1 |
void imshow(const String& winname, InputArray mat); |
解释:
参数类型的 |
描述 |
const String& 类型的 winname |
填须要显示的窗口标示名称 |
InputArray 类型的 mat |
填须要显示的图像 |
功能:是建立一个OpenCV窗口,它由OpenCV自动建立于释放。
格式:
1 |
void namedWindow(const String& winname, int flags = WINDOW_AUTOSIZE); |
解释:
参数 |
描述 |
||
Const 类型的 String& winname |
填写建立窗口名称 |
||
Int 类型的 flags |
窗口标识,常见的三种值:
|
做用:cvtColor的功能是将图像从一个色彩空间转换到另外一个色彩空间。
格式:
1 |
void cvtColor( InputAvoid cvtColor( InputArray src), OutputArray dst, int code, int dstCn = 0 ); |
解释:
参数 |
描述 |
InputAvoid cvtColor( InputArray src ) |
原图像 |
OutputArray dst |
色彩空间转换以后的图像 |
Int 类型的 dstCn |
源和目标色彩空间例如:COLOR_BGR2HLS、COLOR_BGR2GRAY等 |
格式:
1 |
bool imwrite( const String& filename, InputArray img,const std::vector<int>& params = std::vector<int>()); |
参数:
参数 |
描述 |
const 类型的 String& filename |
填写存储出的位置、文件名称以及后缀例如"D:/1.jpg" |
InputArray 类型的 img |
通常填写Mat类型的图像数据名称 |
Const 类型的 std |
表示为指定格式保存的参数编码(通常可不填) |
格式:
1 |
void cvtColor( InputArray src, OutputArray dst, int code, int dstCn = 0 ); |
参数:
参数 |
描述 |
InputArray src |
输入图像 |
OutputArray dst |
输出图像 |
Int 类型的 code |
颜色空间转换的标识符 |
Int 类型的 dstCn |
目标图像的通道数,默认为0,表示目标图像取源图像的通道数 |
例子:
1 2 |
Mat src1, dst; cvtColor(src1, dst, CV_BGR2GRAY); |
拓展:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
#include <opencv2/opencv.hpp> #include <iostream> #include <math.h>
using namespace cv; int main(int argc, char**argv) { Mat src = imread("./picture/1.jpg"); //Mat src = imread("D:/Picture/123.jpg", IMREAD_GRAYSCALE);看、能够为绝对路径与相对路径 if (src.empty()) { printf("路径不对"); return -1; } /*namedWindos建立一个OpenCV窗口 */ imshow("input", src);
namedWindow("output_Gary", WINDOW_AUTOSIZE); /* WINDOW_AUTOSIZE:自动调整为适应图像大小窗口 WINDOW_NORMAL:用户能够改变窗口大小 WINDOW_OPENGL;建立窗口支持OPENGL IMREAD_COLOR做为RGB加载 */ Mat output_woman; cvtColor(src, output_woman, CV_BGR2GRAY); //将图像转换为灰度图 imshow("output_Gary", output_woman);
imwrite("焰灵姬.jpg", output_woman); //保存图像
waitKey(0); return 0; } |