2014-03-13 127 views
0

我有一个图像,我正在采摘颜色RGB(数据采样)。我从图像中具有“相同”颜色的特定区域选择N点。我的意思是,“相同”,图像的那部分属于一个物体,(假设一个黄色物体)。 RGB案件中的每个挑选点都有三个值[R,G,B]。例如:[120,150,225]。每个字段的最大值和最小值分别为和。 假设我从图像中的物体区域选取了N个点。这些点显然具有不同的值,但来自相同的家族(特定颜色的梯度)。如何选择RGB颜色过滤点的范围?

问题: 我要找到每个RGB场,当我的形象与该特定对象像素保持上应用的彩色滤光片(被认为是正常值)的范围。从采样点中找出最大值和最小值并将其视为滤波范围是否正确?例如,如果字段R的最大值和最小值分别为120,170,它可以用作应该保留的范围。

在我看来,这个想法是不正确的。因为当选择一组采样数据的最大值和最小值时,某些点将超出该范围,并且该物体上会有一些不适合该范围的点。

什么是更好的解决方案,包括更多的点作为inliers?

如果有人需要查看收集的数据样本,请告诉我。

回答

1

我不确定我是否完全掌握了你所要求的内容,但在我看来,过滤RGB并不是一种好的方法。如果要比较相似颜色的像素,则应该使用与RGB不同的颜色空间。 RGB对于在屏幕上表示颜色很有用,但实际上您需要查看色彩,饱和度和亮度(亮度或亮度),以分析颜色中的可见相似性。

例如,您应该先将像素转换为HSI或HSL色彩空间,然后比较您获得的不同参数。此时,比较色相范围内的色相,饱和度范围内的饱和度等是比较自然的。

Go here有关如何转换为RGB的更多信息。

1

这里发生的事情是,你隐式尝试重新创造颜色索引或直方图反投影。你称之为滤色片,但最好把重点放在概率上而不是颜色和色彩空间上。颜色当然不是非常可靠并且随着照明而改变(尽管色彩在非彩色照明下保持不变),这就是为什么一些色彩空间比其他色彩更好的原因。你可以单独处理这个,但是你似乎更关心计算“过滤操作”的原理,它将从背景中分割出前景对象。希望。

简而言之,直方图反投影的工作原理是首先为对象区域内的R,G,B创建直方图,然后按照以下方式将它们反投影到图像中。对于图像中的每个像素,在直方图中查找其bin,并计算给定bin的总和的相对权重(概率),并将该概率放入图像中。以这种方式,每个像素都有可能属于该对象。如果你想模拟背景,你可以通过分割背景概率来改善它。

结果将是混乱的,但有点类似于一个对象段加上一些背景噪音。必须使用单独的方法(如连接组件,抓取,形态操作,模糊等)将其清理并重新连接到对象中。