mrgloom 242 Жалоба Опубликовано September 23, 2011 Допустим есть искажение "бочка" и в центре изображения изображение "прямое" , а чем ближе к краю тем больше "испорченное". делаем снимки скажем одного и того же места и смещаем с каким то шагом(n пикселей) не больше чем на половину размера изображения по всем направлениям.(тут несколько непонятно ибо бочка радиальная, а изображения квадратные, ну это так мелочи реализации). потом пользователь отмечает характерные точки на парах изображений руками или даже возможно это делается автоматически и определяются некие параметры, чтобы потом исправлять эту бочку на всех снимках. вообщем вопрос реализуемо ли это? и может есть уже готовые решения? вообщем хочется что то типа самокалибровки.в английском варианте self calibration вроде бы. еще вопрос есть ли какие то ограничения на искажения? т.е. я так понимаю бочку(наверно) можно устранить, т.к. в центре изображение четкое. а вот скажем наклон уже непонятно как, т.к. нет эталона. возможно ли устранить только бочку(не попортив всего остального) если искажения имеют вид бочка+что то? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Nuzhny 243 Жалоба Опубликовано September 23, 2011 "Бочка" - это дисторсия. Она довольно просто исправляется средствами OpenCV с помощью калибровки на шахматной доске и последующих вызовов cvInitUndistortMap + cvRemap Но там есть идеальная шахматная доска, на основе которой заполняются две матрицы: 3х3 и 5х1 Фактически, тебе надо получить эти же значения по снимкам... Трудная задача. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
mrgloom 242 Жалоба Опубликовано September 23, 2011 ну так дело в том что у меня этой доски нету, т.е. ее нельзя использовать. а камера должна сама откалиброваться, т.е. например снять первый кадр(вырезать центральную область) и сместиться влево на n пикселей снять опять кадр и вырезать ту же область.(для точности наверно надо делать с малым шагом и во всех направлениях). потом имея 2 эти "в реальности" одинаковые области, а на деле 1 искаженная, а другая нет, найдя соответствующие точки(возможно даже в ручном режиме) понять параметры искажения. две матрицы: 3х3 и 5х1 эти параметры видимо эти матрицы, да кстати что это за матрицы? хотя с таким же успехом можно просто обрезать снимок по центру, а все остальное откидывать и получать условно ровное изображение ) но все равно надо знать сколько обрезать, а для этого надо оценить. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах