Итак, я потратил немного времени, работая над этим, но, к сожалению, сегодня у меня нет времени, и я прошу прощения за неполный ответ, но, возможно, это поможет вам начать (если вам нужна дополнительная помощь, я отредактирую этот пост выходные, чтобы дать вам более полный ответ :))
Вот код-
for i=1:3
I = RWBDS(:,:,i);
se = strel('rectangle', [265,50]);
Io = imopen(I, se);
Ie = imerode(I, se);
Iobr = imreconstruct(Ie, I);
Iobrd = imdilate(Iobr, se);
Iobrcbr = imreconstruct(imcomplement(Iobrd), imcomplement(Iobr));
Iobrcbr = imcomplement(Iobrcbr);
Iobrcbrm = imregionalmax(Iobrcbr);
se2 = strel('rectangle', [150,50]);
Io2 = imerode(Iobrcbrm, se2);
Ie2 = imdilate(Io2, se2);
fgm{i} = Ie2;
end
fgm_final = fgm{1}+fgm{2}+fgm{3};
figure, imagesc(fgm_final);
![Результат из изображенийc](https://i.stack.imgur.com/vWFze.png)
Он по-прежнему захватывает края сбоку изображения, но отсюда вы собираетесь использовать связанные bwconnectedcomponents
, и вы получите длины большой и малой осей, и, посмотрев на соотношения объектов, избавится от тех.
В любом случае удачи!
РЕДАКТИРОВАТЬ: я еще немного поиграл с кодом и обновил приведенный выше код новыми результатами. В тех случаях, когда мне удавалось избавиться от бокового «шума», он избавлялся и от боковых мелов. Я решил, что просто оставлю оба.
Что я сделал: в большинстве случаев преобразование в цветовое пространство HSV — это путь, но, как показал @rayryeng, это не путь. Оттенок работает очень хорошо, когда есть один тип цвета, например, если все мелки были красными. (По логике вещей вы могли бы подумать, что использование цветового канала было бы лучше, но это не так.) В этом случае, однако, единственное, что объединяет все мелки, — это относительная форма. Мое решение в основном использовало эту концепцию, установив элемент структурирования se
на что-то вроде базовой формы и соотношения мела и выполнив морфологические операции - как вы изначально догадались, это был путь.
Для получения более подробной информации я предлагаю вам прочитать документацию Matlab по этим конкретным функциям.
И я дам вам понять, как получить последний мел на основе того, что я вам дал :)
person
ABC
schedule
17.06.2015