大蟒蛇python教程共享利用Python将彩色图像转为灰度图像的两种方法

目录
  • 第一种方法
  • 第二种方法
  • python 批量将图片转为灰度图
  • 总结

第一种方法

python的cv2库中自带彩色转灰度的方法,而且非常简单,代码就9行,核心代码就1行。

大题思路就是先读取一张彩色图片,然后在窗口中显示出来,再然后就让cv2处理一下,转换成灰度图像,这时候它是个二维的灰度矩阵,所以,我们想保存得先将它从array转成image,最后在另一个窗口中显示出来,为了避免窗口一闪而过,我们需要加上waitkey(0)这一句。

  import cv2  from pil import image  #读取彩色图像  color_img = cv2.imread(r'dataset3/beauty.jpg')  #在窗口中显示图像,该窗口和图像的原始大小自适应  cv2.imshow('original image',color_img)  #cvtcolor的第一个参数是处理的图像,第二个是rgb2gray  gray_img=cv2.cvtcolor(color_img,cv2.color_rgb2gray)  #gray_img此时还是二维矩阵表示,所以要实现array到image的转换  gray=image.fromarray(gray_img)  #将图片保存到当前路径下,参数为保存的文件名  gray.save('gray.jpg')  cv2.imshow('gray image',gray_img)  #如果想让窗口持久停留,需要使用该函数  cv2.waitkey(0)    

利用Python将彩色图像转为灰度图像的两种方法

利用Python将彩色图像转为灰度图像的两种方法

第二种方法

pil中的image库也自带转灰度图像的方法,然后再用pyplot显示在画布上就行了。一共8行代码,核心代码就1行。

  from pil import image  from matplotlib import pyplot as plt  color_img=image.open('dataset3/beauty.jpg')  gray_img=color_img.convert('l')  plt.figure('beauty')  plt.imshow(gray_img,cmap='gray')  plt.axis('off')  plt.show()  

利用Python将彩色图像转为灰度图像的两种方法

python 批量将图片转为灰度图

  from pil import image  import os  path = 'f:/quexianjianceshiyan/posdata'  file_list = os.listdir(path)  for file in file_list:      i = image.open(path+"/"+file)      l = i.convert('l')      l.save(path+"/"+file)      #print(file)    

总结

到此这篇关于利用python将彩色图像转为灰度图像的文章就介绍到这了,更多相关python彩色图像转为灰度图像内容请搜索<计算机技术网>以前的文章或继续浏览下面的相关文章希望大家以后多多支持<计算机技术网>!

需要了解更多python教程分享利用Python将彩色图像转为灰度图像的两种方法,都可以关注python教程分享栏目—计算机技术网(www.ctvol.com)

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ctvol.com/pythontutorial/993735.html

(0)
上一篇 2021年12月26日
下一篇 2021年12月26日

精彩推荐