Pillow图像颜色处理
注意,在 ImageColor 模块对颜色的大小并不敏感,比如 "Red" 也可以写为 " red"。
颜色名
ImageColor 支持多种颜色模式的的名(即使用固定的格式对颜值进行表示),比如我们熟知的 RGB 色彩模式,除此之外,还有 HSL (色调-饱和度-明度)、H (又称 HSV,色调-饱和度-亮度)色彩模式。下面对 HSL 做简单介绍:
H:即 Hue 色调,取值范围 0 -360,其中 0 表示“red”,120 表示 “green”,240 表示“blue”;
S:即 Saturation 饱和度,代表色彩的纯度,取值 0~,其中 0 代表灰色(gry), 表示色光最饱和;
L:即 Lightness 明度,取值为 0~,其中 0 表示“black”黑色,50% 表示正常颜色, 则表示白色。
下面使用 HSL 色彩模式表示红色,格式如下:
此时的颜色为“纯红色”,等同于 RGB (255,0,0)。如果想了解有关 HSL/H 的更多知识,点击链接前往。HSL(0,,50%)
ImageColor 模块比较简单,只提供了两个常用方法,分别是 getrgb() 和 getcolor() 函数。
getrgb()方法
顾名思义,该函数用来得到颜色的 RGB 值,语法格式如下:
PIL.ImageColor.getrgb(color)
使用示例如下:
from PIL import Image,ImageColor
# getrgb()方法
color1=ImageColor.getrgb("blue")
print(color1)
color2=ImageColor.getrgb('#DCDCDC')
print(color2)
#使用HSL模式红色
color3=ImageColor.getrgb('HSL(0,,50%)')
print(color3)
输出结果如下:
(0, 0, 255)
(220, 220, 220)
(255, 0, 0)
通过 new() 方法可以新建图像,此时也可以使用 ImageColor.getrgb(),如下所示:
显示图片如下:#使用new()绘制新的图像
im= Image.new("RGB", (200, 200), ImageColor.getrgb("#EEB4B4"))
im.save("C:/Users/Administrator/Desktop/xin.jpg")

图1:新建图像
getcolor()
该方法与 getrgb() 类似,同样用来获取颜色值,不过它多了一个mode参数,因此该函数可以获取指定色彩模式的颜色值。语法格式如下:PIL.ImageColor.getcolor(color, mode)
参数说明如下:
color:一个颜色名称,字符串格式,可以是颜色的英文单词,或者十六进制颜色名。如果是不支持的颜色,会报 ValueError 错误;
mode:指定色彩模式,如果是不支持的模式,会报 KeyError 错误。
使用示例如下:
color4=ImageColor.getcolor('#EEA9B8','L')
print(color4)
color5=ImageColor.getcolor('yellow','RGBA')
print(color5)
输出结果:
191
(255, 255, 0, 255)
- 随机文章
- 风儿(风儿轻轻的吹)
- 饿了么红包怎么用(饿了么红包怎么用微信支付)
- 儿童教育文章(儿童教育)
- 光遇花手先祖位置(安卓光遇手花先祖)
- 广州4a广告公司(广州4a广告公司创意总监年薪)
- 抖音卡(抖音卡顿怎么解决)
- xboxones(xboxone手柄怎么配对主机)
- 兵马俑(兵马俑介绍和历史背景)
- 陈武简历
- 帆船比赛(帆船比赛视频)
- 韩国媳妇和小雪(韩国媳妇和小雪的父亲工资是多少)
- 儋州市第二中学(儋州市第二中学录取分数线)
- 鬼泣5攻略(鬼泣5攻略第三关怎么跳)
- 地球日主题(2020年世界地球日主题)
- 和柳亚子(和柳亚子先生于田)
- 冰客(冰客果汁)
- 国外成人游戏(国外成人游戏注册需要visa信用卡)
- 充值卡代理(充值卡代理加盟)
- 拆奶罩
- 东天目山(东天目山景区)
- 杭同(杭同培训中心怎么样)
- 大松电饭煲(美的大松电饭煲)
- 服饰加盟(服饰加盟店招商)
- 疯狂填字(疯狂填字5)
- 点对点短信息(点对点短信息费是什么意思)
- 河北省大运会(河北省大运会时间)
- 哈利波特官网(哈利波特官网在哪里)
- 骇客神条(骇客神条怎么辨别真假)
- 杜星霖(杜星霖图片)
- 查传倜(查传倜个人生活)
