LINUX.ORG.RU

Как определить начинается ли несколько видеофайлов с одного кадра?(и заканчиваются)


0

1

есть несколько видеофайлов которые начинаются примерно одинаково.
Нужно выяснить tvrip ли это. В случае если это так - то они должны немного отличатся по длительности.
Нужно сравнить первые кадры всех файлов
Как сделать это?

Мне не понятен до конца вопрос если честно.

Вот такой командой можно извлечь все первые кадры из avi(для примера)-файлов:
for i in $( ls *.avi ); do ffmpeg -i $i -f image2 -an $i.png ; done

А дальше, если предполагается, что они могут быть 100% одинаковыми, то можно размер получившихся изображений сравнить или их контрольные суммы.

Tayler ★★
()
Ответ на: комментарий от Tayler

Степень сжатия может сильно повлиять на размер полученных файлов или их контрольную сумму. Однако, если изображения имеют одинаковый размер, можно сравнить их при помощи корреляционной функции или с помощью вейвлетов.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Не совсем понятна ситуация автора. Там может вообще один и тот же скажем MPEG2-поток с записью, прерванной в разных местах, сохраненный в разные файлы, и нужно найти дубликаты. Я по крайне мере так понял задачу =)

А если там еще разные степени/алгоритмы сжатия, размеры... Наверно есть готовые решения для сравнения изображений, которые сами уменьшат, вытянут контраст, обесцветят и что там еще нужно сделать с изображениями, чтобы вычислить дубликаты.

Tayler ★★
()
Ответ на: комментарий от Tayler

По меньшей мере gqview умеет искать схожие изображения. Но не знаю умеет ли он делать это без GUI, впрочем, думаю он такой не единственный.

sin_a ★★★★★
()
Ответ на: комментарий от sin_a

Самый лучший алгоритм - в гугловской пикасе. Но, увы, он закрыт...

Eddy_Em ☆☆☆☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.