2014-01-22 2 views
0

이미지 처리가 없습니다. 내 응용 프로그램에서는 눈을 감싸고있는 피부를 감지하고 제거하고 싶습니다. enter image description hereEmgucv의 스킨 탐지 및 제거

위 이미지에서 피부가없는 눈 영역 (눈썹)을 추출하고 싶습니다.

먼저 이미지에서 피부를 제거하기 전에 피부 감지를 시도했습니다. 나는 여기에 내 코드

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); 

입니다 그러나 그것은 피부를 감지하지 못하고 있음을, emgu의 이력서에 AdaptiveSkinDetector 방법을 사용했다. 내 코드에 오류가 있습니까? 피부 검색을 수행하는 더 좋은 방법이 있습니까? (색상을 사용 하시겠습니까?) 참조/코드 샘플이 유용 할 것입니다.

는 당신의 도움이 매우

+0

임계 값 이미지를 바이너리 형식으로 채우려고 했습니까? –

+0

예,이 코드 사용 이미지 Binary_Image = eyebrow_img_crop.ThresholdBinary (새 회색 (threshold_value), 새 회색 (255)); 예상 결과가 표시되지 않음 – gouthaman93

답변

1

망가 Emugcv에 대해 알고 있지만 datast이 예와 일치하는 경우, 내가 (로컬 이진 패턴이 눈의 윤곽을 감지하는 데 사용할 수 있다고 생각 미리

감사합니다 감사합니다 피부가 없으면). 자세한 설명은 here이고 구현은 here입니다. 심지어 구현 MATLAB 희망이 도움이됩니다.

0

피부는 색조에 의해 잘 검출되고, 색조를 사용하여 탐지되고, 채도 및 값으로 재생되는 것으로 입증 된 아주 좋은 예입니다. 아래 예에서 볼 수있는 것처럼, 많은 예가 있습니다. 색조를 감지하면 색상이나 밝기에 관계없이 피부색을 얻을 수 있습니다.

http://bytefish.de/blog/opencv/skin_color_thresholding/

관련 문제