Java+opencv3.2.0之灰度化

来源:互联网 发布:西北师范知行教务管理 编辑:程序博客网 时间:2024/06/05 19:27

图片灰度处理即是把彩色图片转为灰度图片,目的是为了加快图片处理速度。24位彩色图像每个像素用3个字节表示,每个字节对应着RGB分量的亮度。当RGB分量值不同时,为彩色图像;当RGB分量相同时,为灰度图像。
Opencv3.2.0中提供了图像彩色空间转换方法:Imgproc.cvtColor(Mat src, Mat dst, int code, int dstCn)
参数说明:
src:输入源图像
dst:输出的目标图像
code:code是一个掩码,表示由src到dst之间是怎么转的,比如是彩色转为灰度,还是彩色转为HSI模式。code的模式如:Imgproc.COLOR_BGR2GRAY:<彩色图像转灰度图像>
dstCn:dst图像的波段数,这个值默认是0
例子:
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
Mat srcImage = Imgcodecs.imread("F:\\2625035632820481613.jpg");
Mat dstImage = new Mat();
Imgproc.cvtColor(srcImage, dstImage, Imgproc.COLOR_BGR2GRAY,0);
Imgcodecs.imwrite("F:\\gray.jpg", dstImage);

源图像:
这里写图片描述

灰度图:
这里写图片描述