Как найти контуры только в черном цвете?

Я пытаюсь удалить шумы с изображения. У меня есть черная группа пикселей на изображении. Я использую cv :: findContours и cv :: boundingRect. И я заполняю маленькие прямоугольники (маленькие прямоугольники — это шумы на изображении) белым цветом.
Но этот метод также находит мне белые контуры (например, середина черного круга). Как найти отсчеты для черных пикселей?
Есть ли простое решение?

4

Решение

Контур черного объекта будет иметь противоположную ориентацию от контура белого объекта (по часовой стрелке против часовой стрелки). Вы можете проверить это, вызвав функцию, которая вычисляет подписанную область:

if (contourArea(someContour,true) > 0)
cout << "black" << endl;
else
cout << "white" << endl;
4

Другие решения


По вопросам рекламы [email protected]