Python 利用4行代码实现图片灰度化的项目实践

 更新时间:2024年04月01日 10:54:20   作者:数据人阿多  
灰度处理是将彩色图像转换为灰度图像的过程,即每个像素的颜色由红、绿、蓝三个通道的值组成,转换为一个单一的灰度值,本文主要介绍了Python 利用4行代码实现图片灰度化的项目实践,感兴趣的可以了解一下

背景

不论是在进行深度学习时的图片处理,还是在商业用途出版书刊,基本都会用到对图片进行灰度转换,也就是灰度化,本文章利用简单的4行代码来快速实现图片灰度化,仅供参考

效果

效果

实现代码

from PIL import Image
wechat_image='./微信头像.jpg'
wechat_image_greyscale=Image.open(wechat_image).convert('L')   #对图片进行灰度化
wechat_image_greyscale.save('微信头像_灰度化.jpg')

实现代码

图像灰度转化

图像是由红(Red)、绿(Green)、蓝(Blue)三原色来表示,R、G、B的取值范围均为0~255,正常读取的图片构成的三维矩阵就是图像各像素点的RGB值。
图像的灰度化,就是让像素点矩阵中的每一个像素点都满足这样的关系:R=G=B,此时的这个值叫做灰度值
灰度化后的R = 处理前的R * 0.299+ 处理前的G * 0.587 +处理前的B * 0.114
灰度化后的G = 处理前的R * 0.299+ 处理前的G * 0.587 +处理前的B * 0.114
灰度化后的B = 处理前的R * 0.299+ 处理前的G * 0.587 +处理前的B * 0.114

PIL库里面在灰度转化时,利用的公式
When translating a color image to greyscale (mode “L”), the library uses the ITU-R 601-2 luma transform:
L = R * 299/1000 + G * 587/1000 + B * 114/1000

最大值法:

original = original.max(axis=2)
print(original.shape)
# (640, 640)
plt.imshow(original,cmap='gray')
plt.show()

平均值法:

original = original.mean(axis=2)
print(original.shape)
# (640, 640)
plt.imshow(original,cmap='gray')
plt.show()

加权平均法

original = np.dot(original,[0.299,0.587,0.114])
print(original.shape)
# (640, 640)
plt.imshow(original,cmap='gray')
plt.show()

到此这篇关于Python 利用4行代码实现图片灰度化的项目实践的文章就介绍到这了,更多相关Python 图片灰度化内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • 在Python中使用判断语句和循环的教程

    在Python中使用判断语句和循环的教程

    这篇文章主要介绍了在Python中使用判断语句和循环的教程,是Python学习当中的基础知识,代码基于Python2.x,需要的朋友可以参考下
    2015-04-04
  • 手把手教你打包Python项目为whl文件

    手把手教你打包Python项目为whl文件

    Wheel文件可以包含编译后的二进制文件,这对于包含C扩展的Python项目尤为重要,可以避免用户在安装时重新编译,下面就来介绍一下如何打包Python项目为whl文件
    2025-07-07
  • Python与MongoDB轻松管理数据

    Python与MongoDB轻松管理数据

    本文将介绍如何使用Python操作MongoDB,包括安装MongoDB、安装Python的MongoDB驱动程序、连接到MongoDB、插入、查询、更新和删除数据,以及示例代码
    2023-11-11
  • python利用wx实现界面按钮和按钮监听和字体改变的方法

    python利用wx实现界面按钮和按钮监听和字体改变的方法

    今天小编就为大家分享一篇python利用wx实现界面按钮和按钮监听和字体改变的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Python自动操作Excel文件的方法详解

    Python自动操作Excel文件的方法详解

    大家平时在工作与学习中都会操作到Excel文件格式,特别是很多数据的时候,靠人力去识别操作非常容易出错。今天就带大家用Python来处理Excel文件,让你成为一个别人眼中的秀儿
    2022-05-05
  • Pycharm配置pyQt External Tools方式

    Pycharm配置pyQt External Tools方式

    文章介绍了如何在PyCharm中配置QtDesigner、PyUIC和PyRCC,以便方便地启动并进行PyQt文件的编译转换,它还提供了关于如何找到designer.exe目录、使用PyUIC和PyRCC的配置参数,并总结了个人经验
    2026-03-03
  • 如何通过安装HomeBrew来安装Python3

    如何通过安装HomeBrew来安装Python3

    这篇文章主要介绍了如何通过安装HomeBrew来安装Python3,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Python探索之自定义实现线程池

    Python探索之自定义实现线程池

    这篇文章主要介绍了Python探索之自定义实现线程池,使用queue实现线程池的方法,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • Django网络框架之HelloDjango项目创建教程

    Django网络框架之HelloDjango项目创建教程

    这篇文章主要介绍了Django网络框架之HelloDjango项目创建,结合实例形式详细分析了Django框架创建HelloDjango项目的具体步骤与详细实现技巧,需要的朋友可以参考下
    2019-06-06
  • python 3利用Dlib 19.7实现摄像头人脸检测特征点标定

    python 3利用Dlib 19.7实现摄像头人脸检测特征点标定

    这篇文章主要为大家详细介绍了python 3利用Dlib 19.7实现摄像头人脸检测特征点标定,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02

最新评论