Я действительно новичок в обработке изображений, поэтому, пожалуйста, извините, что я новичок. Я попытался использовать squares.cpp для обнаружения плакатов (так как они обычно представляют собой прямоугольники) без использования дорогих детекторов функций (например, SIFT). К сожалению, результаты в значительной степени разочаровывают (поскольку это было довольно предсказуемо, результаты ниже).Распознавание плакатов в OpenCV?
На самом деле мне все равно, что обнаружены только плакаты, так как статистически плакаты являются самым большим (или вторым по величине) прямоугольником на изображении (приличная эвристика).
Последнее изображение является результатом этого кода с помощью кода this Hough Transofrm (что кажется хуже, что работает!).
Любая идея, как улучшить этот код?
[
Я уже пробовал [этот] (http://stackoverflow.com/a/10535006/4480180) код, который использует перекрестную обработку Hough, и кажется, что работает еще хуже (я обновлю вопрос, добавляя результаты, используя его) ! – justHelloWorld
Ahh, поэтому этот код пытается сгенерировать прямоугольник из преобразования линии hough. Процесс преобразования hough был обобщен для любой произвольной формы в этой статье: http://www.sci.utah.edu/~gerig/CS7960-S2010/handouts/Ballard-Generalized-HoughT.pdf Я бы попытался использовать в частности прямоугольное преобразование, в отличие от линейного преобразования – bstadt
Что вы подразумеваете под «специально прямоугольным преобразованием»? Знаете ли вы какую-либо реализацию? – justHelloWorld