Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Чем заменить пропущенный кадр


Автор: MoebiusCat 9.6.2011, 14:14
Проблема: пропущенные кадры в видео. Вот решения ,которые приходили мне в голову, но ни одно из них не является достаточно хорошим:
  •  Пропустить его совсем
  •  Заменить предыдущим/следующим
  •  Заменить средним предыдущего и следующего
  •  Заменить каким-то взвешенным средним окрестности
  •  Сделать что-то ужасно умное, которое видит движущиеся объекты, и рисует их посредине между предыдущим и следующим кадром
Есть ещё идеи?

Автор: Pavia 9.6.2011, 18:25
Цитата(MoebiusCat @  9.6.2011,  14:14 Найти цитируемый пост)
Сделать что-то ужасно умное, которое видит движущиеся объекты, и рисует их посредине между предыдущим и следующим кадром

Обычно так и делают.

Обрати внимание на этот проект.
http://forum.ixbt.com/topic.cgi?id=62:12524


http://cgm.computergraphics.ru/content/view/111

Автор: MoebiusCat 10.6.2011, 00:53
Большое спасибо!

Так значит эта штука называется компенсация движения... Изучаю. Кое-что знала, но больше в связи со сжатием видео. 

Вопрос (если что, сильно не бить и тапками не кидаться): а почему не сделать, скажем, трёхмерный Фурье в релевантной окрестности? 

Автор: esperanto 10.6.2011, 12:18
С какой целью делать фурье в релевантной окрестности? И почему не 4х мерный?

Автор: MoebiusCat 10.6.2011, 13:39
Цитата(esperanto @ 10.6.2011,  12:18)
С какой целью делать фурье в релевантной окрестности? И почему не 4х мерный?

Для того, чтобы сделать интерполяцию отсутствующего кадра. Почему не четырёхмерный - догадайтесь сам ;)

Автор: Pavia 10.6.2011, 14:45
Цитата(MoebiusCat @  10.6.2011,  00:53 Найти цитируемый пост)
а почему не сделать, скажем, трёхмерный Фурье в релевантной окрестности? 

релевантной? Ты имеешь в виду в область интереса? 
Сделать можно, даже работать будет. 
Но ссылки я не зря дал. Если ты делаешь изменение частоты видео к примеру с 25 на 30 то тебе надо их аппроксимировать и найти точки которые будут на этой кривой уже с другой частотой. То есть в новом видео у тебя не будет ни одного исходного кадра. 
В таком случае БПФ не подходит. Так как работая в частотной области во временной мы получим искажения. 

В частотной области ты не сможешь отличить ВЧ сигнал(границы) от ВЧ шума(пропущенный кадр). В результате посл сглаживания у тебя хоть и получится интерполированный кадр, но все точечные особенности(края границы объектов) у тебя просто расползутся. 
А смотреть размытое видео не интересно. Поэтому выход один работать во временной области.

Но если у тебя не передискретизация, а просто по кокой-то причине один кадр из всего видео потерялся. То можно и через БПФ.



Автор: MoebiusCat 14.6.2011, 22:04
Цитата

релевантной? Ты имеешь в виду в область интереса? 

Наверное... Не знаю правильной терминологии... Ну, если отсутствует кадр n, то пользуемся информацией из кадров n-k, ..., n+k

Цитата

Но ссылки я не зря дал.

Читаю...

Спасибо!

Автор: MoebiusCat 18.6.2011, 16:03
Вот! Нашла! Метод http://ru.wikipedia.org/wiki/%D0%9E%D0%BF%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%BF%D0%BE%D1%82%D0%BE%D0%BA. Делаем интерполяцию с помощью вычисления трёхмерных производных! Как я не догадалась, я же думала об интерполяции!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)