Идентификация изогнутых и прямых объектов в OpenCV
У меня есть следующее изображение. Моя задача состоит в том, чтобы исследовать форму червей (заключенных в прямоугольники) и классифицировать их как мертвых / живых - те, которые похожи на жезлы (прямые), мертвы, а изогнутые - живы.
Я использовал адаптивный порог на исходном изображении, рисовал контуры и ограничивающие прямоугольники, используя OpenCV 3.1.0 в Python 2.7.1 . Что было бы самым простым и, возможно, эффективным способом достижения вышеуказанной цели.
(isConvex () определенно не работает:p)
2 ответа
Один из подходов заключается в сравнении длины контура (или червяка) с диагональным расстоянием ограничительной рамки (расстояние от верхнего левого угла до нижнего правого угла). Прямые будут иметь длину ближе к этому расстоянию, чем пышные.