使用Numpy和Matplotlib实现图片的彩色转灰度

在我们对图片进行处理时,往往需要对其进行彩色灰度之间的转换。Python拥有着很多的库可以实现这一功能。例如Opencv、PIL、Matplotlib等。本文将使用Matplotlib来实现这一功能,因为其转换的数据结构与Matlab更为相似。便于我们对图像的更进一步处理。
首先,我们知道RGB图像是由3通道构成的图像,也即是,每个像素点由3个(0-255,0-255,0-255)之间的数个构成。而灰度图像是单通道图像,每个像素点由1个(0-255)之间的数组成。因此,我们的找到它们之间的转换关系,就可以完成对其的转换,其转换公式如下:

Gray = R * 0.299 + G * 0.587 + B * 0.114

所以,根据上面的转换公式,我们就可以进行编写彩色转灰度程序了,具体代码如下:

import numpy as np
import matplotlib.image as mp
import matplotlib.pyplot as plt
#将彩色图像转为灰度图片
def rgb2gray(A):
    #定义一个空列表
    x = [
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值