C#确定图像中是否存在对象

CSh*_*Dev 5 c# image colors image-processing

背景:

我们计划在传送系统上使用相机来计算物体.在这种特定情况下,我们不能使用传感器.我的所有物体都非常一致,如果它们出现在图片中,很容易被发现.我一直在寻找Aforge和其他一些图书馆,看起来很容易. 这就是我想要做的.

话虽如此,我确实有一些担忧.在过滤过程中,您必须指定要搜索的颜色.我的对象是纯色,但我们都知道在我看到的特定点上可能有100多个不同的rgb值.

有没有办法搜索一系列颜色,或者看一种颜色是否"喜欢"特定的颜色?

这是我第一次进行任何图像处理.我还没有尝试任何东西,即将开始,这在我开始之前就是一个问题.

任何帮助将不胜感激.

Yoh*_*nnP 2

您可以使用 HSL(色相饱和度光)来代替 RGB 颜色模型,在该模型中您可以忽略饱和度和光,仅检查色相参数:

http://en.wikipedia.org/wiki/HSL_and_HSV

这是使用 c# 的方法(感谢如何将 rgb 颜色更改为 hsv):

System.Drawing.Color color = System.Drawing.Color.FromArgb(red, green, blue);
float hue = color.GetHue();
float saturation = color.GetSaturation();
float lightness = color.GetBrightness();
Run Code Online (Sandbox Code Playgroud)