2011-01-10 39 views

回答

2

将像素想象成RGB空间中的一组3D点。通过像素的3d凸包的体积来评估图像。

+0

我的可怜的大脑:( – 2011-01-10 07:39:17

+2

这种方法会使仅在单个像素中出现的颜色与图像的一半颜色相同,也许我应该改写为“最完整,最均匀”? – hippietrail 2011-01-10 07:44:14

+0

好吧,也许你可以找到你的一套像素的平均R,G和B值,然后对每个像素,您计算从平均值的的R,G,B的距离,并把它添加到R,G和B累加器。通过除以累加器像素数,并通过RGB立方体的容积率的图像。 – 2011-01-10 08:00:10

0

为每个通道运行一个直方图,正如Nicolas所说的那样。

编辑:

好直方图将为您提供离散值和频率。

您需要考虑离散值例如如果等于0 fq,那意味着图像没有关于该通道和值的信息。您不能直接将该值乘以fq,因为这会混淆计算评级,例如,一个完整的黑色图像可以有一个非常高fq的单个离散值。

所以你需要考虑最丰富的图像作为包含零fq离散值较少。

1

建议将图像从RGB值转换为HSV值。

然后,图像越分散,色调越丰富。

对于性能,您可能只需拍摄图像的子样本,和/或减少色调'筒仓'或量子的数量。

Wiki是你的朋友

编辑“均匀度”:

好吧,我想你可以通过假定理想“的意思是”将像素的“偶数”分配使用标准偏差的方法来此跨越色调箱(即平均=总#像素除以离散色调箱的总数)。标准差就是实际计数和这个平均值之差的平方。这种方法有一些注意事项,因为平方会严重惩罚任何非常低或非常高计数的色相(您可能想要“限制”直方图范围)。您还需要将图像中的像素数量(用于计数)和图像上的色调箱数量标准化,以使比较标准化。

另一个问题是,对于大量的色调箱,对所有色调赋予相同的权重,而不管它们之间的光波长的“距离”(例如,具有许多不同蓝色色调的图像将平均计数到具有少量离散色调的红色绿色和蓝色的图像 - 这是其他海报提到的容积方法可能更可取的地方

0

如果通过“完整覆盖全色谱”,您的意思是让每个离散的颜色值都可能在一个给定的色彩空间中至少一次,那么你可以只计算每个图像中的所有独特的颜色,而具有最高值的那个可以被称为最多彩的。如果通过光谱来表示色调的数量,那么您可以将每个像素的颜色转换为HSV或HSL,计算图像所具有的独特色调值的数量,然后再考虑其中色彩数量最多的色彩值。

如果,通过完整的,你的意思是在你的另一个问题是这样大约绕了一圈,我想可能是定义某种线性密度指标的有益之处 - 虽然我不能完全如何最好地应用到手头的数据......或者即使这就是你的意思。

相关问题