通过知识的不断积累,想必大家已经迫不及待的想要自己编写代码了吧,有小伙伴最近也在询问如何通过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的值 。再对程序进行运行就会发现自己所需要的颜色编号就会显示出来,自己就可以拿这些颜色编号进行运用了 。
以上就是关于图片提取颜色的知识点啦,不知道大家是否学会了呢,如果大家都理解学会了,那么就不防自己动手试试吧 。
推荐阅读
- python中的index函数是什么?怎么使用index函数?
- python中的跳转指令是什么?有哪些跳转指令?
- 大于小于在Python中怎么表示?Python比较运算符解析
- 什么是python动态内存?动态内存如何分配?
- Python怎么进入编程界面?Python代码在哪编写
- Python怎么定义一个变量的类型?Python机制讲解
- Python怎么定义变量不赋值?Python如何只定义不赋值
- Python中reverse方法的作用是什么?reverse()怎么用
- Python如何关闭应用程序?Python关闭应用程序用什么方法
- Python代码怎么集体右移?Python代码如何格式化