使用PIL进行简单图像度量
我想用PIL处理上传的照片,并判断一些“软性”的图像指标,比如:
- 这张图片的对比度是高还是低?
- 颜色丰富还是单色?
- 明亮还是暗淡?
- 这张图片的色调是暖色还是冷色(关于光的温度)?
- 有没有主导的色调?
这些指标应该用评分的方式来衡量,比如说非常丰富的颜色可以标记为colorful++++,而比较单调的图片可以标记为colorful+。
我注意到PIL的ImageStat模块可以计算一些有趣的值来帮助我判断这些指标,比如直方图的均方根(RMS)等等。不过,这个模块的文档不是很好,所以我在寻找更具体的算法来确定这些指标。
1 个回答
1
我觉得没有完全符合你需求的方法,但现有的一些方法,比如RMS,可以帮助你达到目标。要处理颜色,你可以把图片分成每种颜色一个层,然后对每个层计算RMS,这样可以告诉你一些你想知道的信息。你还可以用不同的方式转换图片,只保留颜色信息等等。