Расчет площади в opencv/javacv?
Кто-нибудь может объяснить, как определить область, которая должна быть красного и синего цветов на следующем изображении? Я пытался использовать метод cvFindContours(), но он не дал ожидаемого результата для меня.
Входное изображение
Ожидаемый результат
Мне бы хотелось узнать, есть ли какие-либо другие методы для определения или расчета площади такого рода контуров. Пожалуйста, будьте любезны поделиться простым примером кода с этим.
1 ответ
Функция floodFill также может возвращать область в качестве возвращаемого значения. Итак, вы можете сделать растровое сканирование каждого пикселя: каждый раз, когда вы достигаете нетронутого пикселя, окрашиваете его в какой-то цвет (черный) и сохраняете область этой области вместе с координатами пикселя, продолжайте, пока все изображение не будет покрыто,
В конце у вас будет набор областей с кординатами для одного пикселя в каждой области.
Если вам нужно восстановить конкретный регион, вы можете снова использовать floodFill, закрасив этот регион определенным цветом.