本文实例讲述了Python通过PIL获取图片主要颜色并和颜色库进行对比的方法。分享给大家供大家参考。具体分析如下:
这段代码主要用来从图片提取其主要颜色,类似Goolge和Baidu的图片搜索时可以指定按照颜色搜索,所以我们先需要将每张图片的主要颜色提取出来,然后将颜色划分到与其最接近的颜色段上,然后就可以按照颜色搜索了。
在使用google或者baidu搜图的时候会发现有一个图片颜色选项,感觉非常有意思,有人可能会想这肯定是人为的去划分的,呵呵,有这种可能,但是估计人会累死,开个玩笑,当然是通过机器识别的,海量的图片只有机器识别才能做到。
那用python能不能实现这种功能呢?答案是:能
利用python的PIL模块的强大的图像处理功能就可以做到,下面上代码:
import colorsys
def get_dominant_color(image):
#颜色模式转换,以便输出rgb颜色值
image = image.convert('RGBA')
#生成缩略图,减少计算量,减小cpu压力
image.thumbnail((200, 200))
max_score = None
dominant_color = None
for count, (r, g, b, a) in image.getcolors(image.size[0] * image.size[1]):
# 跳过纯黑色
if a == 0:
continue
saturation = colorsys.rgb_to_hsv(r / 255.0, g / 255.0, b / 255.0)[1]
y = min(abs(r * 2
PIL
是
Python
Imaging Library,它为
python
解释器提供了图像编辑功能。的Image模块提供了一个具有相同名称的类,用于表示
PIL
图像。该模块还提供了许多出厂功能,包括从文件加载图像和创建新图像的功能。getcolors()返回此图像中使用的
颜色
列表。用法: Image.getcolors(maxcolors=256)参数:maxcolors-最大
颜色
数。如果超过此数字,...
Python
PIL
图像
颜色
模块:ImageColor Module的讲解图像
颜色
模块(ImageColorModule)支持的字符串格式如下:十六进制(Hexadecimal )
颜色
说明符,如“#rgb”或“#rrggbb”。例如,“#ff0000”表示纯红色。RGB函数,如“rgb(red, green, blue)” ,其中
颜色
值取值范围为【0-255】的整数。作为另外一种选择,也可以使用百...
python
获取
图片
的
颜色
更多0getcolors
图片
颜色
python
image = Image.open("outofmemory.cn.png")
image.getcolors()
返回结果如下
..., (44, (72, 64, 55, 255)), (32, (231, 208, 141, 255)), (2368, (7
python
通过
pil
为png
图片
填充上背景
颜色
的
方法
本文实例讲述了
python
通过
pil
为png
图片
填充上背景
颜色
的
方法
。分享给大家供大家参考。具体分析如下:png
图片
有些是没有背景
颜色
,如果希望以单色(比如白色)填充背景,可以使用下面的代码,这段代码将当前目录下的 jb51.net.png
图片
填充了白色背景。使用指定的
颜色
的背景色即可,然后把该
图片
用alpha通道填充到该单色背景上。比如下面使...
filepath="img.png" #
图片
路径
outpath ="img_
PIL
.png"#
图片
保存路径
pil
_im = Image.open(filepath).convert('L')#打开文件并且把
图片
转化
颜色
,'L'代表灰色
pil
_im.show()#显示
图片
pil
_im.save(outpath)#保存
图片
Convert()是一个改变
图片
颜色
的函数;参数:”RGB”、”1”、”L”、”P”、”R.
PIL
(
Python
Imaging Library)是
Python
的
图片
处理模块。提供了相当强大的图像处理能力,几乎支持所有常见
图片
格式的编码和解码。
Pil
low 支持读取
图片
、创建
图片
、显示
图片
。支持
图片
剪切、
图片
粘贴、
图片
拼接。支持
颜色
变换,
图片
滤镜(过滤器)。支持几何变换:缩放
图片
、旋转
图片
、转置
图片
。支持通道拆分,移除 alpha 通道,把 RGBA
图片
转换成 RGB
图片
。其中
PIL
.ImageDraw 支持绘制各种图形:绘制点、线段、矩形、多边形、弧线、弦、扇形、椭圆、
图片
、文本。
温馨提示:阅读文本大概需要8分钟。自动扫雷一般分为两种,一种是读取内存数据,而另一种是通过分析
图片
获得数据,并通过模拟鼠标操作,这里我用的是第二种方式。一、准备工作1.扫雷游戏我是win10,没有默认的扫雷,所以去扫雷网下载http://www.saolei.net/BBS/2.
python
3我的版本是
python
3.6.13.
python
的第三方
库
win32api,win32gui,win...
PIL
:
Python
Imaging Library,已经是
Python
平台事实上的图像处理标准
库
了。
PIL
功能非常强大,但API却非常简单易用。
Pil
low : 是
PIL
的一个派生分支,但如今已经发展成为比
PIL
本身更具活力的图像处理
库
。