Как определить масштаб (линейку) с помощью OpenCV?

Я работаю с фотографиями, содержащими одну или несколько линейок. Размер и форма линейки неизвестны (то есть есть сотни различных типов, которые могут быть использованы). Можно предположить, что фокальная плоскость камеры и цели параллельны (наклон и рыскание контролируются), поэтому нам нужно иметь дело только с вращением линейки. На данный момент мы также можем предположить, что на изображении есть только одна линейка.

Используя OpenCV, я хотел бы идентифицировать линейку, использовать метки для масштабирования изображения и обеспечить визуальную обратную связь с пользователем (то есть линия на линейке, показывающая, скажем, 10 мм).

Я нашел похожий вопрос: Как найти положение линейки на изображении с помощью opencv? но он имеет другой набор ограничений и, похоже, не применяется.

Я также нашел статью, в которой изложены именно то, что я хотел бы сделать: Измерение древних монет на основе изображений (только часть правителя — я ничего не делаю с монетами). Я нахожусь над головой, когда дело доходит до обработки изображений, но я дошел до определения масштаба с помощью БПФ. Концептуально я понимаю, что авторы объясняют в Обнаружение хребта а также Визуальная обратная связь разделы, но я не знаю, какие инструменты использовать для его реализации.

Кто-нибудь сделал что-то подобное или кто-то может указывать мне в правильном направлении? Или, может быть, предложить альтернативы, если я пытаюсь использовать неправильную технику?

2

Решение

Задача ещё не решена.

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


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