对于图片分析,一直觉得很高大上,从来不动这方面。今天翻看python weekly,发现一个很有趣的库-Haishoku。
haishoku 是一个日语词, 意思是配色.
Haishoku 是一个用来获取图片主色调和主要配色方案的python库,依赖于python3和pillow。
获取图片的 主色调
获取图片的 配色方案
如果使用机器学习,只是分析下图片最基本的元素-主色调和主要配色-这个库就够用了。我感觉这个库可以用到感官营销方向的研究中去,比如:
等等 当然不止于这个应用场景,受限于我的认知水平和研究领域,我只想到这点。
from haishoku.haishoku import Haishoku
imagepath = '/Users/suosuo/Desktop/test.jpeg'
haishoku = Haishoku.loadHaishoku(imagepath)
#获取主色调
print(haishoku.dominant)
#获取配色方案
print(haishoku.palette)
返回:
(126, 117, 137)
[(0.32, (126, 117, 137)), (0.25, (234, 234, 212)), (0.21, (62, 109, 136)), (0.12, (187, 135, 145)), (0.03, (147, 182, 183)), (0.03, (119, 160, 174)), (0.03, (228, 181, 162)), (0.01, (51, 83, 116))]
palette返回一个结构为: [(percentage, (R, G, B)), (percentage, (R, G, B)), …] 最大长度为8的数组
我想看看主色调和配色方案直观的肉眼感受,而不是冰冷的数字。
没关系,Haishoku can do it!!
from haishoku.haishoku import Haishoku
Haishoku.showDominant(imagepath)
showDominant会生成一个临时文件用来预览主色调的颜色。(注意:不会保存在本地)
from haishoku.haishoku import Haishoku
Haishoku.showPalette( image )