代码如下:
static void Main(string[] args)
{
Mat src = Cv2.ImRead("lenna.png", ImreadModes.AnyColor);
Cv2.ImShow("src image", src);
Cv2.NamedWindow("output image", WindowFlags.AutoSize);
Mat output_image = new Mat();
Cv2.CvtColor(src, output_image, ColorConversionCodes.BGR2GRAY);//色彩空间转换
Cv2.ImShow("output image", output_image);
Cv2.ImWrite("output image.png", output_image);//亲测肯定支持jpg、png格式
Cv2.WaitKey();
Cv2.DestroyAllWindows();
}
使用Cv2.ImRead()函数读取图像。第一个参数是图像的完整路径。第二个参数是一个标志,它指定了读取图像的方式。有下面几种枚举值可选:
Unchanged = -1,
Grayscale = 0,
Color = 1,
AnyDepth = 2,
AnyColor = 4,
LoadGdal = 8,
ReducedGrayscale2 = 16,
ReducedColor2 = 17,
ReducedGrayscale4 = 32,
ReducedColor4 = 33,
ReducedGrayscale8 = 64,
ReducedColor8 = 65,
IgnoreOrientation = 128
使用Cv2.ImShow()函数在窗口中显示图像。窗口自动适合图像尺寸。
第一个参数是窗口名称,它是一个字符串。第二个参数是我们的对象。你可以根据需要创建任意多个窗口,需要使用不同的窗口名称,名称相同则只创建一个显示窗口。
使用Cv2.ImWrite()函数保存图像。
第一个参数是文件名,第二个参数是要保存的图像。 Cv2.ImWrite(“src1.png”, src);
这会将图像以PNG格式保存在工作目录中。