5
Я пытаюсь обработать изображение. Существует фотография листьев RGB, и я хочу только вырезать лист.MATLAB - Как устранить затененный фон на изображении
Процедура Я следую является
- Я прочитал изображение из файла
- Преобразовать в оттенки серого
- Применить 5x5 медианный фильтр
- Преобразовать в BW
Как вы видите, тень в нижнем правом углу прикреплена к изображению BW. Есть ли способ выбрать только лист.
I = imread(files{404});
hcsc = vision.ColorSpaceConverter;
hcsc.Conversion = 'RGB to intensity';
Ig = step(hcsc, I);
medFilt= vision.MedianFilter([f f]);
Ig = step(medFilt, Ig);
at = vision.Autothresholder;
Ibw = step(at, Ig);
Почему преобразовании в оттенки серого? Возможно, вы можете преобразовать в HSV и выбрать лист на основе диапазона оттенков. См. [This anwer] (http://stackoverflow.com/a/4064205/2586922) –
@ LuisMendo Я никогда не думал об этом. Я попробую. – zkanoca