如何用python提取图片颜色?来看看吧

通过知识的不断积累,想必大家已经迫不及待的想要自己编写代码了吧,有小伙伴最近也在询问如何通过python来提取图片中的主要颜色,那么接下来就来和大家讲解一下吧,大家也可以开始操作了 。

如何用python提取图片颜色?来看看吧

文章插图
在代码编写的最开始,要先和大家讲解一下我们待会需要用到的第三方库PIL,PIL是图像处理库,功能非常的强大,它能够处理很多和图像相关的工作,如图像归档,图像处理,图像展示等 。了解完这些,下面就开始实践,代码如下:

from PIL import image,imagedraw,imagefrontdef get_colors(infile):image = image.open(infile)small_image = image.resize((60,60))result = small_image.convert("p",colors = 3,palette = image.adaptive)palette = result.getpalette()color_counts = sorted(result.getcolors(),reverse=True)colors = list()for i in range(3):palette_index = color_counts[i][1]dominant_color = palette[palette_index * 3:palette_index * 3 + 3]colors.append(tuple(dominant_color))return colorsimage_path = r "../flowers.png"color = get_dominant_color(image_path)print(color)接下来我们就一起来分析一下这一段代码,首先文章开头也讲到需要使用到PIL,那么就使用import PIL来进行库的导入 。再定义一个函数,使用image模块来对图片进行加载,并且通过resize来对图片进行重新定义图片大小,在代码中是使图片进行缩小,当然如果有需要也可以进行放大 。
【如何用python提取图片颜色?来看看吧】再使用convert模块对图像进行转换返回副本,编写一个专门放置颜色的列表,使用palette对颜色进行提取,再返回colors的值 。再对程序进行运行就会发现自己所需要的颜色编号就会显示出来,自己就可以拿这些颜色编号进行运用了 。
以上就是关于图片提取颜色的知识点啦,不知道大家是否学会了呢,如果大家都理解学会了,那么就不防自己动手试试吧 。

    推荐阅读