使用python将图片改为灰度图或黑白图
使用python将图片改为灰度图或黑白图有三种方式,分别是是使用cv2库和PIL库来实现,详细过程如下所示。
1. 使用cv2库将图片改为灰度图
在使用cv2进行读取原彩色图片时,在里面添加一个参数cv2.IMREAD_GRAYSCALE表示将图片作为灰色图数据进行加载。
示例代码:
import cv2image = cv2.imread('./images/sunflower.jpg', cv2.IMREAD_GRAYSCALE)
cv2.imwrite('./images/gray_sunflower.jpg', image)
运行效果:
对处理后的图片再次进一步的探究。
示例代码:
import cv2# image = cv2.imread('./images/sunflower.jpg', cv2.IMREAD_GRAYSCALE)# cv2.imwrite('./images/gray_sunflower.jpg', image)# 进一步探索图片格式
image = cv2.imread('./images/sunflower.jpg')
print(image.shape)
imageGray = cv2.imread('./images/gray_sunflower.jpg')
print(imageGray.shape)
imageGray2 = cv2.imread('./images/sunflower.jpg', cv2.IMREAD_GRAYSCALE)
print(imageGray2.shape)
运行效果:
从运行结果可以看出,在用cv2读取数据时,即使读取的原图是灰度图片,但是返回的结果仍然是BGR格式的图像,BGR格式是默认的格式。
2. 利用PIL库将图片改为黑白图
原理是转为“1”的模式,为二值图像。即:非黑即白。它每个像素用8个bit表示,0表示黑,255表示白(除了这两个值外再没有别的值)
示例代码:
from PIL import Image# open colour image
image_raw = Image.open("./images/sunflower.jpg")
# convert image to black and white
image_black_white = image_raw.convert('1')
image_black_white.save('./images/black_white_sunflower.jpg')
image_black_white.show()
运行结果:
3. 利用PIL库将图片改为灰度图
原理是转为“L”的模式。0表示黑,255表示白,其它数字表示不同的灰度。在PIL中,从模式"RGB"转为"L"模式是按照下面公式转换
L = R * 299/1000 + G * 587/1000+ B * 114/1000
示例代码:
from PIL import Image
import matplotlib.pyplot as plt# open colour image
image_raw = Image.open("./images/sunflower.jpg")
image_gray = image_raw.convert('L')
# image_gray.show()
plt.figure('sunflower') # 图名
plt.imshow(image_gray, cmap='gray') # cmap即colormap,颜色映射
# plt.axis('off') # 关闭网格线
plt.show()
运行效果:(下图1关闭网格线,下图2带有网格线)
使用python将图片改为灰度图或黑白图相关推荐
- 如何将 WORD中将彩色图片变成灰度图 或 黑白图 ?
文章目录 1 灰度图像与黑白图像的区别 2 彩色图 灰度图 相互变换 2.1 彩色图 变 灰度图 2.2 灰度图 变 彩色图 3 彩色图 黑白图 相互变换 3.1 彩色图 变 黑白图 3.1 黑白图 ...
- 如何用DELPHI区分彩色图和黑白图(多色与单色)??
如何用DELPHI区分彩色图和黑白图(多色与单色)?? Delphi / Windows SDK/API http://www.delphi2007.net/DelphiMultimedia/html ...
- 图片一:单通道、三通道、灰度图、黑白图、三通道转灰度图(单通道)
图片的概念经常搞不清楚,导致对图片处理很糟糕.感觉还是总结下比较好,省的每次都要找一堆博客看.下面的内容是博主个人理解,不能保证全部正确,如有错误,敬请指出. 1.图片:通常指的是数字图片,数据结构通 ...
- Python修改图片像素值(变彩色为黑白)
如何使用python将彩图变为黑白图? 以RGB图片为例,其色彩展现是依靠这像素点上的像素值,正是这些数值使图片绚烂多彩,同时,我们也知道,像素值的范围为0-255,其中0为黑色,255为白色,那么我 ...
- 灰度图、黑白图,彩色图理解
黑白图,是指每个像素的颜色用二进制的1位来表示,颜色只有"1"和"0"这两个值 ,(Data值为0或者255)这也就是说,要么是黑,要么是白.例如: CvInv ...
- python将图片转成灰度图
运行代码工具:jupyter notebook 图片保存在运行目录下 from PIL import Image I = Image.open('C:/Users/LitmoonHoney/Deskt ...
- python宣传图片_Python爬虫,高清美图我全都要!爬取你想要的,嘿嘿嘿
select = 'div#main div.list ul li a' imgUrls = screen(url, select) 通过这两行代码获取的列表中的值,形如此:星空 女孩 观望 唯美夜景 ...
- python plot label改字体_python – 如何在matplotlib图中更改xticks字体大小
参见英文答案 > Matplotlib make tick labels font size smaller 10个 我有以 ...
- python将图片转为字符_Python将图片转化为字符画
简介 最近发现一个有趣的操作, 将一张图片转化为字符串的模式来显示! 如图 准备 首先需要安装一个CV模块用来导入图片的#pip install opencv-python 然后明确下程序的设计思路1 ...
- 灰度图、RGB图的区别
一.灰度图 灰度图就是单通道图像,而单通道图是指维度数为2的图像. 而灰度就是没有色彩,RGB色彩分量全部相等(可将这点与下文的RGB图进行对比).那么灰度图的每个像素点就只有一个值表示颜色,像素值的 ...
最新文章
- 检查是否支持 SO_REUSEPORT
- html css bootstrap,CSS Bootstrap是什么?
- python preference界面设置_偏好设置如何更改Preference的样式
- 乌班图系统16.04安装
- jupyter notebook切换到其他配置好的conda虚拟环境
- python traceback most recent_pyspider启动错误: Traceback (most recent call last):
- QEMU 源代码阅读经验开山之作
- python链表逆序实例_python 单链表翻转的简单示例
- Excel如何合并单元格
- 宝塔面板ab模板建站_2020PHP自助建站系统源码/宝塔在线自助建站系统源码/集成多套模板/在线云建站系统模板...
- 致所有仍然关注BreezeMaphack的朋友
- 跨越专业翻译的语言之墙:百度翻译的技术攀登
- 阿里云账号注册流程方法(图文教程)
- qq邮箱日历同步服务器,科技教程:qq邮箱客户端怎么使用exchange服务同步日历?...
- Elasticsearch:理解 Elasticsearch 中的 Percolator 数据类型及 Percolate 查询
- 计算机技术水平考核试卷带答案,中小学教师计算机技术水平考核试卷笔试题带答案...
- [tcpreplay] tcpreplay高级用法--使用tcpreplay-edit进行循环动态发包
- 碎碎念日常——一个反思日记
- 西电微机原理期末考试复习重点
- PYTHON爬虫爬取豆瓣电影的一周口碑电影排行榜