Я хочу рассчитать число Эйлера, поэтому мне нужно количество подключенных компонентов и количество отверстий в изображении. Я нашел, как найти номер подключенного компонента. Используя этот код;
vector<vector<Point>>contours;
vector<Vec4i>hierarchy;
findContours(mat,contours,hierarchy,CV_RETR_CCOMP,CV_CHAIN_APPROX_SIMPLE );
objects_num=contours.size();
Но я не уверен в правильности кода для расчета подключенных компонентов. Знаете ли вы, этот код правильный?
Во-вторых, ** но я не знаю, как рассчитать количество отверстий? В документе opencv сказано, что все контуры организованы в двухуровневую иерархию,
Вы знаете, как получить количество отверстий.
Я пытаюсь извлечь особенности из этого изображения. Например мне нужен номер Эйлера, заполненные атрибуты области. По этой причине; Я пытаюсь выяснить количество отверстий в картине меланомы и количество подключенных компонентов. Знаете ли вы какую-либо функцию, чтобы найти эти атрибуты.
PS: я работаю на платформе Android, используя OpenCV для Android.
Итак, я могу посоветовать вам начать изучать, как OpenCV обрабатывает большие двоичные объекты (и контуры, которые описывают большие двоичные объекты).
Если вы заинтересованы в свойствах BLOB-объектов, таких как площадь, центроид и т. Д., Вы можете использовать моменты изображения (также посмотрите на Вот).
Попробуйте взглянуть на эти учебники для обработки «поиска дыр», Вот а также Вот.