Как убрать искажения из-за движения, из изображения - PullRequest
12 голосов
/ 07 августа 2011

Я пытаюсь отследить движение игрушечной машины.Я записал несколько видео и сейчас пытаюсь вычислить вращение.

Моя проблема с извлечением объектов с поверхности объекта из-за размытия в движении перестала быть сложной.Ниже изображение показывает обрезанное изображение из видеокадра.Искажения происходят в горизонтальных линиях.На этом изображении видны искажения, когда объект движется.Когда объект не движется, нет искажений.

Изображение показывает искаженное изображение автомобиля, когда его движение вперед по диагонали пересекает рамку изображения.

enter image description here

Я попробовал фильтр Винера, основанный на медиане и дисперсии, но он не принес большого улучшения.Это дало мне только сглаженное изображение, как если бы к нему было применено размытие по Гауссу.

Какие улучшения необходимо сделать, чтобы получить лучшее изображение?

видео - 720 x 576 кадров - 25 кадров в секунду

Ответы [ 4 ]

9 голосов
/ 07 августа 2011

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

я нашел довольно крутой сайт, который говорит о деинтерлейсинге на тот случай, если вы захотите увидеть, можете ли выесть другие возможности:

http://www.100fps.com/

(о, и я не очень внимательно изучил изображение, поэтому возможно, что существует какая-то другая схема чередования, отличная от любой другой строки;в этом случае мой первый ответ не будет работать должным образом, и это означает, что вы потеряете разрешение, но это только природа чересстрочного видео ...)

2 голосов
/ 07 августа 2011

Учитывая, что ваша камера выводит чересстрочное видео, вам лучше использовать одно поле видео. Либо используйте только четные строки изображения, либо только нечетные. Изображение будет раздавлено, но вы не будете смешивать два изображения вместе.

1 голос
/ 07 августа 2011

Да, это изображение должно быть чересстрочным.Исправление «искажения» из-за линейного движения - это другое дело, вам нужно выполнять линейную направленную фильтрацию в зависимости от скорости автомобиля, расстояния до камеры и скорости обтюрации.Сначала необходимо рассчитать импульсную характеристику для заданного набора условий (те, которые указаны выше, которые представляют отклонение или расстояние между той же точкой, взятой в начале захвата, и в конце ее), а затем применить обратную фильтрацию.Возможно, вам понадобится какой-нибудь набор инструментов для фильтрации или обработки изображений, если вы используете Matlab, это будет легко.

0 голосов
/ 13 сентября 2014

Вы пробовали:

deconvblind

Следуйте примеру на deconvblind mathworks .Это может хорошо работать на вашем примере изображения.Другой пример - Восстановление изображения

...