Matlab - центр масс объекта, имеющий только край

Я пытаюсь сделать программу распознавания объектов, используя классификатор k-NN. У меня есть куча изображений для учебной части классификатора и куча изображений для распознавания. Эти изображения в оттенках серого, и для каждого изображения есть объект. Проблема в том, что есть только край объекта (не заполнен), поэтому я не думаю, что с помощью regionprops(img,'centroid') будет работать правильно для того, что я понимаю... Так как я могу получить их центр масс?

2 ответа

Решение

Ответ xenoclast должен быть совершенно ясным, просто чтобы добавить что-то дополнительное. Как только вы закончите создание двоичного изображения из вашего изображения в градациях серого, используя im2bw; если край вашего объекта является границей, которая полностью покрывает объект, вы можете использовать regionprops(bw,'centroid') прямо, не проходя через imfill,

Первым шагом было бы преобразовать изображение в двоичную форму im2bw, Тогда вы можете использовать imfill(img, 'holes') превратить его из контура в заполненное тело. После этого regionprops будет работать как положено.

Другие вопросы по тегам