当前位置:首页 » 操作系统 » 颜色识别算法

颜色识别算法

发布时间: 2022-12-13 16:08:26

① 用python写识别图片主要颜色的程序

#-*-coding:utf-8-*-

importcolorsys

defget_dominant_color(image):

#颜色模式转换,以便输出rgb颜色值
image=image.convert('RGBA')

#生成缩略图,减少计算量,减小cpu压力
image.thumbnail((200,200))

max_score=None
dominant_color=None

forcount,(r,g,b,a)inimage.getcolors(image.size[0]*image.size[1]):
#跳过纯黑色
ifa==0:
continue

saturation=colorsys.rgb_to_hsv(r/255.0,g/255.0,b/255.0)[1]

y=min(abs(r*2104+g*4130+b*802+4096+131072)>>13,235)

y=(y-16.0)/(235-16)

#忽略高亮色
ify>0.9:
continue

#Calculatethescore,.
#Add0.1tothesaturationsowedon'tcompletelyignoregrayscale
#,butstillgivethemalow
#weight.
score=(saturation+0.1)*count

ifscore>max_score:
max_score=score
dominant_color=(r,g,b)

returndominant_color

if__name__=="__main__":
fromPILimportImage
importos

path=r'.\pics\'
fp=open('file_color.txt','w')
forfilenameinos.listdir(path):
printpath+filename
try:
color=get_dominant_color(Image.open(path+filename))
fp.write('Thecolorof'+filename+'is'+str(color)+' ')
except:
print"Thisfileformatisnotsupport"
fp.close()


pics文件夹和python程序在一个目录下,产生的文件名file_color.txt也在这个目录下。

看看能否帮到你

热点内容
2008文件服务器搭建教程 发布:2025-07-02 18:03:14 浏览:51
离线androidapi文档 发布:2025-07-02 18:02:23 浏览:144
阿里云服务器查看流量 发布:2025-07-02 17:44:42 浏览:838
c怎么编译c程序 发布:2025-07-02 17:30:58 浏览:293
安卓手机变成苹果手机怎么保存 发布:2025-07-02 17:20:24 浏览:192
负源码怎么算 发布:2025-07-02 16:59:42 浏览:595
自设计算法 发布:2025-07-02 16:48:19 浏览:785
mac搭建阿里云服务器 发布:2025-07-02 16:48:17 浏览:443
存储体的构成 发布:2025-07-02 16:47:41 浏览:148
初识java 发布:2025-07-02 16:45:48 浏览:409