Как вариант, считать статистические характеристики картинок, типа моментов (среднее, дисперсия и т.д.), гистограммы, независимые от поворота. А далее кластеризовать вектора признаков, точнее находить выброс.
Контуры не нужны. Просто преобразуете картинку в черно-белый формат, так чтобы объект был белым, а фон - черным. Далее вызываете функцию cv2.fitLine, из ее результатов берете арктангенс и все, угол получен.
Я бы в матлабе/скайлабе сделал примерно так:
1. Выделил слой зеленой краски используя цветовые пространства и получил ч/б маску.
2. Возможно поработал бы морфологическими фильтрами, если необходимо.
3. Нашел связанные компоненты bwlabel и подсчитал их свойства regionprops.
4. Селекция компонент по площади, топологии и/или другим инвариантным к поворотам признакам в соответствии с шаблонами.
Ответ написан
Комментировать
Комментировать
Оценили как «Нравится»
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.