Pillow图像颜色处理怎么用

技术Pillow图像颜色处理怎么用这篇文章将为大家详细讲解有关Pillow图像颜色处理怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Pillow 提供了颜色处理模块 ImageC

本文将详细解释如何使用枕头图像的颜色处理。边肖觉得挺实用的,分享给大家参考。希望你看完这篇文章能有所收获。

枕头提供了颜色处理模块ImageColor,支持不同格式的颜色,如RGB颜色三元组、十六进制颜色名称(#ff0000)和英文颜色词(' red ')。同时,它还可以将CSS(层叠样式表)样式颜色转换为RGB格式。

请注意,ImageColor模块对颜色的大小不敏感,例如,“red”也可以写成“Red”。

颜色命名

ImageColor支持各种颜色模式的命名(即使用固定的格式来表示面值),比如大家熟知的RGB颜色模式,除此之外还有HSL(色相-饱和度-明度)和HSB(色相-饱和度-明度)颜色模式。以下是对HSL的简单介绍:

h:色相,范围从0到360,其中0表示“红色”,120表示“绿色”,240表示“蓝色”;

s:饱和度,代表颜色的纯度,取0~100%的值,其中0代表灰色(gry),100%代表最饱和的色光;

l:即明度亮度,取值为0~100%,其中0表示“黑”黑色,50%表示正常颜色,100%表示白色。

以下HSL颜色模式用于以以下格式表示红色:

此时HSL(0,100%,50%)的颜色为“纯红色”,相当于RGB (255,0,0)。如果您想了解更多关于HSL/HSB的信息,请点击链接。

ImageColor模块比较简单,只提供了两种常用的方法,即getrgb()和getcolor()函数。

00-1010顾名思义,这个函数用来获取颜色的RGB值,语法格式如下:

使用PIL的例子。ImageColor.getrgb(颜色)如下:

fromPILimportImage,ImageColor

#getrgb()方法

color1=ImageColor.getrgb('蓝色')

打印(彩色1)

color 2=imagecolor . getrgb(# DCDCDC)

打印(彩色2)

#使用红色HSL模式

color 3=imagecolor . getrgb(' HSL(0,100%,50%)')

打印(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 :/用户/管理员/桌面/xin.jpg ')显示以下图片:

Pillow图像颜色处理怎么用

图1:新图像

00-1010这个方法类似于getrgb(),也是用来获取颜色值的,但是它有一个额外的模式参数,所以这个函数可以获取指定颜色模式的颜色值。语法如下:

pil.imagecolor.getcolor(颜色,模式)参数描述如下:

颜色:字符串格式的颜色名称,可以是英语颜色词或十六进制颜色名称。如果是不支持的颜色,将报告值错误错误;

模式:指定颜色模式。如果是不支持的模式,将会报告一个键错误。

用法示例如下:

color 4=imagecolor . getcolor(' # eea9b 8 ',' L ')

打印(彩色4)

color5=ImageColor.getcolor('黄色',' RGBA ')

打印(颜色5)输出结果:

191

(255, 255, 0, 255)

getrgb()方法

importPIL。图像图像

#===========1.打开图片==========

img=Image.open('1.jpg ')

#===========2.正在处理图片=========

#将图片分成小方块

img_array=img.load()

#遍历每个像素块并处理颜色。

宽度,高度=img.size#获取宽度和高度。

forxinrange(0,宽度):

foryinrange(0,高度):

Rgb=img_array[x,y]#获取像素块的Rgb

r=rgb[0]

g=rgb[1]

b=rgb[2]

if b 130 and 120: #判断规则

img_array[x,y]=(255,0,0)

#===========3.保存图片==========

Img.save('2.jpg ')这篇关于“如何使用枕头图像的色彩处理”的文章就分享到这里了,希望。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/113338.html

(0)

相关推荐

  • Java开发必须要学的软件有哪些

    技术Java开发必须要学的软件有哪些 Java开发必须要学的软件有哪些作为Java初学者,应该学会哪些Java软件开发工具呢这个问题就由千锋重庆Java的小编来为大家解答。
    1.JDK:
    jdk:Jav

    礼包 2021年12月7日
  • slickedit怎么设置一直着色(slickedit如何取消复制)

    技术先进SlickEdit编辑器如何使用这期内容当中小编将会给大家带来有关先进SlickEdit编辑器如何使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。SlickEdit 作为一个

    攻略 2021年12月24日
  • 罗马数字0,罗马数字里的0怎么写啊

    技术罗马数字0,罗马数字里的0怎么写啊罗马数字没0 一.罗马数字 罗马数字是一种现在应用较少的一种的数量表示方式。它的产生晚于中国甲骨文中的数码,更晚于埃及人的十进位数字。但是,它的产生标志着一种古代文明的进步。大约在两

    生活 2021年10月27日
  • 如何快速掌握Fink SQL

    技术如何快速掌握Fink SQL这篇文章主要讲解了“如何快速掌握Fink SQL”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何快速掌握Fink SQL”吧!1、导入所

    攻略 2021年10月22日
  • 无线网卡怎么用,如何使用无线网卡进行上网

    技术无线网卡怎么用,如何使用无线网卡进行上网1、把无线网卡连接到电脑的USB接口。连接上之后无线网卡怎么用,电脑就会自动安装无线网卡驱动。2、无线网卡的种类是非常多的,有些需要连接到主机插槽里。直接可以连接到电脑USB接

    生活 2021年10月31日
  • Python全栈推导式和生成器怎么实现

    技术Python全栈推导式和生成器怎么实现本篇内容主要讲解“Python全栈推导式和生成器怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python全栈推导式和生成器

    攻略 2021年12月2日