利用Python将彩色图像转为灰度图像的两种方法
作者:振华OPPO 发布时间:2021-02-06 05:28:54
标签: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)
第二种方法
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 批量将图片转为灰度图
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)
来源:https://blog.csdn.net/qq_42257666/article/details/122107524


猜你喜欢
- 用coding-pages打开后显示Failed to load resource: the server responded with a
- 系列教程MySQL系列之开篇 MySQL关系型数据库基础概念 MySQL系列之一 MariaDB-server安装 MySQL系列之二 多实
- 我就废话不多说了,大家还是直接看代码吧~from docx import Documentfrom docx import RTimport
- 1、存储过程基本语法: create procedure sp_name() begin ...... end; 2、如何调用: call
- Windows 10 x64macOS Sierra 10.12.4Python 2.7准备好装哔~了么,来吧,做个真正意义上的绿色小软件W
- 作为新手来说,这是一个最简单的人脸识别模型,难度不大,代码量也不算多,下面就逐一来讲解,数据集的准备就不多说了,因人而异。一. 获取数据集的
- 如 现有字符串 "[]aseabcd[12345]ddxabcdsx[]",要截取"abcd[" 和
- 一、需求需求很简单,就是需要查询一个报表,只有1个表,数据量大约60万左右,但是中间有些逻辑。先说明一下服务器配置情况:1核CPU、2GB内
- With语句是什么?有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,Python的with语句提供了一种非常方便的处理方式。一个
- 需求:我要查询百度域名的到期时间或者开始时间思路分析:如果在linux系统中直接使用下面命令即可:echo | openssl s_clie
- 1、检测指定路径下所有文件所占用内存import osdef check_memory(path, style='M'):
- <?php/** * 车票接口类 * * @author chepiao100 * 
- 在开发的时候,用户要求在认证的时候自动添加xadmin登录账户和分配组权限from django.contrib.auth.models i
- 如何在安装setuptools模块时不生成egg压缩包而是源码 Q:如何在安装setuptools模块时
- 昨天我突发奇想,想用display:inline来实现三列的布局可是搞了半天就是不行。但是理论上是可以的呀(后来才发现是不理解的不深刻,我的
- 前言最近在做项目高可用时,需要使用数据同步。由于只有双节点,且采用主主同步可能存在循环同步的风险,故综合考虑采用Mysql主从同步(Mast
- 存储过程采用的是select top 加 not in的方式完成,速度也算是相当快了 我测试过了百万级数据量一般查询在1秒一下,贴出来大家交
- 本文实例讲述了python使用urllib2提交http post请求的方法。分享给大家供大家参考。具体实现方法如下:#!/usr/bin/
- 大家好,由于公司忙着赶项目,导致有段时间没有发布新文章了。今天我想跟大家谈谈Cookie的使用。同样,这个Cookie的使用方法是我从公司的
- 一:脚本需求利用Python3查询网站权重并自动存储在本地数据库(Mysql数据库)中,同时导出一份网站权重查询结果的EXCEL表格数据库类