背景:
我们计划在传送带系统上使用摄像头来计数物体。在这种特定情况下,我们不能使用传感器。我所有的对象都非常一致,并且很容易检测到它们是否出现在图片中。我一直在查看 Aforge 和其他一些库,这似乎很容易。 This is what I want to do.
话虽如此,我确实有些担心。过滤过程中,您必须指定要搜索的颜色。我的对象是纯色,但我们都知道在我查看的特定点上可能有 100 多个不同的 rgb 值。
有没有什么方法可以搜索一系列颜色,或者查看一种颜色是否“像”一种特定颜色?
这是我第一次尝试任何类型的图像处理。我还没有尝试过任何东西,正要开始,这在我开始之前就已经是一个问题了。
如有任何帮助,我们将不胜感激。
最佳答案
您可以使用 HSL 模型(Hue Saturation Light)代替 RGB 颜色模型,您可以忽略饱和度和光线,只检查 hue 参数:
http://en.wikipedia.org/wiki/HSL_and_HSV
这是一种使用 C# 实现的方法(感谢 how to change rgb color to hsv):
System.Drawing.Color color = System.Drawing.Color.FromArgb(red, green, blue);
float hue = color.GetHue();
float saturation = color.GetSaturation();
float lightness = color.GetBrightness();
关于C# 确定图像中是否存在对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12198288/