彩色图像转变为灰度图像的matlab的程序代码是什么?

彩色图像转变为灰度图像的matlab的程序代码是什么?,第1张

RGB=imread('img.bmp','bmp')%读入彩色图片

figure(1),imshow(RGB),title('彩色图')%显示彩色图片

I=rgb2gray(RGB)%彩色转化成灰度

figure(2),imshow(I),title('灰度图')%显示灰度图

1.

python中对图像进行处理和数学计算需要导入以下几个库,代码如下: importmatplotlib.pyplotaspltimportcv2importnumpyasnp

2.

获取图像并以RGB格式读取,图像的通道顺位BGR,示例如下: img=cv2.imread('img.path.jpg')# 括号内的参数需要换成图片的路径

3.

使用uint8的数据格式并以RBG顺序将图片显示出来,代码如下 plt.figure(figsize=(15,10)) plt.imshow(cv2.cvtColor(img.astype(np.uint8), cv2.COLOR_BGR2RGB)) plt.show()

4.

图片显示出来后就可以将图像的灰度进行计算处理,并对图片进行灰度的

24位色位图,一个像素是用3个字节表示,每个字节分别表示R、G、B通道的值(红绿蓝)、组合成实际颜色。

这段程序就是遍历像素点,每种颜色按权值运算,转换为1个字节的灰度值(256级灰度),关键就是这句:

buf2[x] = (BYTE)(0.11*buf[i] + 0.59*buf[i+1] + 0.30*buf[i+2])


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8001631.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存