我是图像处理新手。在我的应用程序中,我想检测并去除眼睛周围的皮肤。
在上图中,我想要在没有皮肤的情况下提取眼部区域(和眉毛)。
首先,我尝试在从图像中去除皮肤之前进行皮肤检测。我在emgu cv中使用了AdaptiveSkinDetector
方法,这是我的代码
AdaptiveSkinDetector a = new AdaptiveSkinDetector(1, AdaptiveSkinDetector.MorphingMethod.ERODE);
Image<Gray, Byte> skin = new Image<Gray, Byte>(ImageFramecolourrighteye.Width, ImageFramecolourrighteye.Height);
a.Process(ImageFramecolourrighteye, skin);
CvInvoke.cvShowImage("Skin detection", skin);
但它没有检测到皮肤。我的代码中有错误吗? 有没有更好的方法来进行皮肤检测? (或许用颜色?) 参考/代码示例将非常有用。
非常感谢您的帮助
提前致谢
答案 0 :(得分:1)
答案 1 :(得分:0)
皮肤是一个非常好的例子,被证明可以通过色调很好地检测,使用色调进行检测,并使用饱和度和值进行游戏,直到达到最少的颜色,例如下面,其中有很多。 无论颜色或亮度如何,色调检测都可以让您获得皮肤。