Обнаружение центра изображения от параболического зеркала?

У меня есть панорамный однократный объектив отсюда: http://www.0-360.com/ и я написал скрипт, используя библиотеку изображений python, чтобы «развернуть» изображение в панораму. Я хочу автоматизировать этот процесс, так как в настоящее время мне нужно указать центр изображения. Кроме того, было бы неплохо получить радиус круга. Входное изображение выглядит следующим образом: введите здесь описание изображения

А «развернутое» изображение выглядит так: введите здесь описание изображения

До сих пор я пробовал обнаружение Hough Circle. У меня есть проблемы с выбором правильных значений для использования. Кроме того, иногда кажется, что темные объекты рядом с центральным кругом отбрасывают его.

Другие идеи, которые у меня были:

  1. Обнаружение Hough Line развернутого изображения. По сути, выберите центральный пиксель в качестве центра, затем разверните и посмотрите, являются ли линии сверху и снизу прямыми или «извилистыми». Если не прямо, то продолжайте пробовать с разными центрами.
  2. Обнаружение моментов/блоба. Может быть, я смогу найти центральную каплю и найти центр этого. Проблема в том, что иногда я получаю яркое кольцо в центре темного диска, как показано на изображении выше. Также проблема с темными объектами возле центра.
  3. Покрасить верхний скос зеркала отчетливым цветом, например, зеленым, чтобы облегчить обнаружение круга? Если я использую зеленый и использую только зеленый канал, будет ли обнаружение проще?

Какой лучший метод я должен попытаться использовать, чтобы получить центр этого изображения и, возможно, радиус внешнего и внутреннего колец.


person Eric Seifert    schedule 03.03.2014    source источник


Ответы (2)


Поскольку ваше изображение имеет несколько кругов с общим центром, вы можете двигаться таким образом, например

  1. Найдите окружность с помощью окружности Хафа и рассмотрите окружность с общим центром.

  2. Теперь проверьте соотношение для соцентрированного круга, так как ваше изображение сохраняет это соотношение постоянным.

person Haris    schedule 03.03.2014

Я думаю, не стоит делать это слишком причудливым. Черный центр находится в центре изображения, верно? Вырежьте квадратную область интереса близко к центру изображения и найдите там «черную» область. Сохраните все местоположения «черных» пикселей и найдите их центр. Вы можете рассмотреть возможность использования цветового пространства CMYK для обнаружения черной области.

person magarwal    schedule 03.03.2014