1 Star 0 Fork 0

paperballin/ScreenCut

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
GetHSV.py 796 Bytes
一键复制 编辑 原始数据 按行查看 历史
paperballin 提交于 2020-06-03 15:58 . Create Test
import colorsys
import PIL.Image as Image
def get_dominant_color(image):
max_score = 0.0001
dominant_color = None
for count, (r, g, b) in image.getcolors(image.size[0] * image.size[1]):
# 转为HSV标准
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)
# 忽略高亮色
if y > 0.9:
continue
score = (saturation + 0.1) * count
if score > max_score:
max_score = score
dominant_color = (r, g, b)
return dominant_color
if __name__ == '__main__':
image = Image.open('./png/redred.png')
image = image.convert('RGB')
print(get_dominant_color(image))
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/paperballin/ScreenCut.git
git@gitee.com:paperballin/ScreenCut.git
paperballin
ScreenCut
ScreenCut
master

搜索帮助