Как с помощью компьютерного зрения найти углы футбольного поля по координатам местоположения?

Я хочу использовать компьютерное зрение, чтобы мой робот мог определять углы футбольного поля в зависимости от его текущего положения. В Matlab есть функция обнаружения HarrisFeatures, но я считаю, что она предназначена только для 2D-карты.

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

Мои вопросы:

  • Как узнать, где пересекаются линии?
  • Как найти углы линий с помощью компьютерного зрения?
  • Как мне обновить эту информацию на основе моих координат?

Я нахожусь на начальных этапах этой задачи, поэтому любое руководство очень ценится!


person ce1    schedule 23.05.2018    source источник
comment
также как мне справиться с частичной окклюзией линий?   -  person ce1    schedule 23.05.2018


Ответы (1)


Вы можете использовать преобразование Хафа, чтобы найти линии и их уравнения на изображении. как только вы это сделаете, поиск пересечения между двумя линиями сводится к решению линейного уравнения с 1 переменной.

person Matan Hugi    schedule 23.05.2018
comment
будет ли это работать, если робот получает данные во время движения (через центральное зрение), а не с высоты птичьего полета? и не нужно ли тогда находить углы? - person ce1; 24.05.2018
comment
мои мысли заключались в том, что как только мы найдем линии под разными углами, мы сможем удалить дубликаты, сгруппировав их в ячейки на гистограмме. - person ce1; 24.05.2018
comment
На ваш первый вопрос: можете ли вы уточнить, что означает получение ввода при его перемещении? вы получаете ввод в виде изображений RGB? Что касается ваших вторых вопросов: с преобразованием hough вы все равно вычисляете углы и расстояние (до некоторой контрольной точки на изображении), так что это решает ваши проблемы :) - person Matan Hugi; 24.05.2018