OpenCV обнаруживает углы - PullRequest
       6

OpenCV обнаруживает углы

6 голосов
/ 24 апреля 2011

Я использую OpenCV на iPhone. Я хочу найти судоку на фотографии. Я начал с небольшого размытия по Гауссу, адаптивного порога, инвертирования изображения и расширения. Затем я сделал несколько findContour и drawContour, чтобы изолировать сетку судоку. Затем я использовал преобразование Хафа, чтобы найти линии, и теперь мне нужно найти углы сетки. Фотография Судоку может быть сделана под углом, поэтому мне нужно найти углы, чтобы правильно обрезать и деформировать изображение.

Так могут выглядеть две разные фотографии. Один довольно прямой, а другой под углом:

Вероятностный Хаф

http://img96.imageshack.us/i/skrmavbild20110424kl101.png/

http://img846.imageshack.us/i/skrmavbild20110424kl101.png/

(Standard Hough входит в комментарий. Я не могу опубликовать более двух ссылок)

Итак, как лучше всего найти эти углы? И какое из двух преобразований проще всего использовать?

С наилучшими пожеланиями Линус

Ответы [ 4 ]

2 голосов
/ 24 апреля 2011

Почему бы не использовать обнаружение углов OpenCV? Посмотрите на cvCornerHarris ().

В качестве альтернативы, посмотрите на cvGoodFeaturesToTrack (). Это швейцарский армейский нож для определения характеристик, и его можно настроить на использование углового детектора Harris (среди прочих).

1 голос
/ 24 апреля 2011

Я предлагаю следующий подход.Сначала найдите все пересечения линий.Полезно разделить линии на «горизонтальные» и «вертикальные» по углу (т.е. найти два основных направления линий).Затем найдите выпуклую оболочку приобретенных точек.Теперь у вас есть углы и несколько точек на границах.Вы можете удалить последнее, проанализировав угол между соседними точками в выпуклой оболочке.Углы будут иметь угол около 90 градусов, а точки на границах - около 180 градусов.

0 голосов
/ 26 апреля 2011

Вы видели эту ссылку: Судоку граббер с OpenCV

0 голосов
/ 25 апреля 2011

Вы смотрели этот пост в блоге, в котором рассказывалось, как создать солдуко-солвер для iPhone с использованием OpenCV?

http://sudokugrab.blogspot.com/2009/07/how-does-it-all-work.html

...