Обнаружение кожи и маскировка всего остального, кроме кожи - PullRequest
0 голосов
/ 06 октября 2019

У меня есть заданный алгоритм, который дает мне логику 2х2 изображения. Я хочу знать, как сохранить кожу, маскируя все остальное.

Я пытался использовать img = cat(3, img, img, img). Сначала используйте double, затем uint8. Также попытался сначала преобразовать двоичный файл в оттенки серого, прежде чем использовать cat.

ims1 = (im(:,:,1)>95) & (im(:,:,2)>40) & (im(:,:,3)>20);
ims2 = (im(:,:,1)-im(:,:,2)>15) | (im(:,:,1)-im(:,:,3)>15);
ims3 = (im(:,:,1)-im(:,:,2)>15) & (im(:,:,1)>im(:,:,3));
ims = ims1 & ims2 & ims3;
ims = double(ims);
rgbImage = cat(3, ims, ims, ims);
figure, imshow(rgbImage);

Я хотел просто изображение скина, но все, что он делает, это показывает черно-белое двоичное логическое изображение.

Это прогрессия в том, как он должен выглядеть.

Оригинал:
Original

Отфильтровано:
Filtered

Финал:
Final

...