从图像中,我如何确定阴影?

时间:2010-01-21 15:07:27

标签: database image colors compare photoshop

对于数据库应用程序,我正在尝试根据色标确定照片部分的平均色调。

作为一个新手,我发现这很难解释,所以我创建了一个简单的图表,显示我正在努力实现的目标。

http://www.knockyoursocksoff.com/shade/

如果有人有时间给我一些想法,我会非常感激。

祝福,

沃伦。

2 个答案:

答案 0 :(得分:1)

如果您使用彩色照片,则应首先将选定区域从RBG(红色,绿色,蓝色)转换为HSL / HSV(article)。

HSL代表“色调,饱和度,亮度”。 1 您感兴趣的数字是亮度

一般来说,亮度是指您如何感知彩色表面的亮度。很难用红色/绿色/蓝色组件来表示一片红色是否比一片蓝色更明亮/更暗。转换为HSL可以解决这个问题。

完成转换后,您只需平均所选区域的亮度值即可。

关于亮度值的快速说明:从技术上讲,您不能简单地平均亮度值,因为亮度的感知不是线性的(article)。但是,除非你正在编写一个非常科学的应用程序,否则简单地平均亮度将给你一个“足够准确”的值。


1 在Adobe Photoshop中,他们称之为HSB(色调,饱和度,亮度)

答案 1 :(得分:0)

我想我会从像素值的平均值开始:

for x = start_x to end_x
for y = stary_y to end_y
  total += getPixel(x,y)
shade = total / (xlen*ylen)

如果你是用彩色的话,它会变得更复杂。