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)

相关推荐

  • oracle中expdp和impdp如何导出导入表空间

    技术oracle中expdp和impdp如何导出导入表空间小编给大家分享一下oracle中expdp和impdp如何导出导入表空间,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有

    攻略 2021年11月11日
  • Maven安装与配置

    技术Maven安装与配置 Maven安装与配置目录Maven安装与配置1.下载Maven
    2.配置环境变量
    3.配置阿里云镜像
    4.配置本地仓库Maven安装与配置
    1.下载Maven
    maven下载地

    礼包 2021年12月5日
  • lte网络注册流程,3)

    技术lte网络注册流程,3) lte网络注册流程(3)
    lte网络注册流程(3)
    本文介绍下下lte网络注册的附着和建立默认承载的过程之中消息分析.
    1.attach request消息中主要包括:EP

    礼包 2021年11月25日
  • 利用socket实现一个简单的web聊天(websocket服务器开源)

    技术如何分析基于WebSocket的聊天开源项目如何分析基于WebSocket的聊天开源项目,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。如果你是站长,是否

    攻略 2021年12月24日
  • 如何使用node开发一款图集打包工具

    技术如何使用node开发一款图集打包工具这篇文章主要为大家展示了“如何使用node开发一款图集打包工具”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用node开发一款图

    攻略 2021年11月30日
  • JavaWeb学生成绩管理系统功能有哪些

    技术JavaWeb学生成绩管理系统功能有哪些小编给大家分享一下JavaWeb学生成绩管理系统功能有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一

    攻略 2021年11月23日