Извлечение всех неподвижных изображений из фильма

4515
Aaron Digulla

У меня есть большое количество листов бумаги для сканирования. Вместо автоподачи или планшетного сканера, я хотел бы использовать свой фотоаппарат. Через некоторое время мне пришло в голову, что вместо того, чтобы делать фотографию для каждой страницы, я мог установить камеру на штатив, настроить ее на запись видео, а затем извлечь изображения из видео.

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

Существует ли программное обеспечение для Linux, позволяющее извлекать из фильма все изображения без движения ? Вид не обнаружения движения.

11

2 ответа на вопрос

12
slhck

Мне нравится твоя идея. Я думаю, я нашел способ сделать то, что вы хотите.

Использование ffmpegдля экспорта кадров с заданным интервалом

Вы можете установить ffmpegи затем преобразовать видео в неподвижные кадры.

ffmpeg -i input_file.mp4 -r 1 image_%4d.png 

Управление частотой кадров

-rОпция принимает один номер в качестве параметра, а именно частоты кадров. Таким образом, аргумент для этой опции будет 1, деленный на время, когда вы держите листы перед камерой .

Например:

  • Выбирая бумагу каждую секунду, используйте -r 1.
  • Выбирайте бумагу каждые две секунды, используйте -r 0.5- потому что 0,5 кадра в секунду означают 2 секунды на кадр.
  • ...

Вам нужно будет только синхронизировать это с вашим временем запуска, поэтому я бы предложил использовать секундомер.

Сдвиг стартовой позиции

Вы также можете «сдвинуть» видео с помощью -ss <some number>, где <some number>время в секундах от начала видео. Таким образом, использование -ss 5начнется через пять секунд.

Если вам нужно сместить его более точно, используя hh:mm:ss.xxxсинтаксис, указав xxx, например, миллисекунды, например 00:00:00.500.

Управление выходными именами и форматом

Вы можете изменить, image_%4d.pngчтобы использовать больше цифр. %4dбудет выводить изображения нравится 0001, 0002и так далее. Так что этого должно быть достаточно для большинства случаев.

ffmpegтакже может выводить в JPG, так что вам просто нужно соответствующим образом изменить суффикс. Я предлагаю использовать PNG, хотя, из соображений качества.

Некоторые советы

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

Вы можете использовать IrfanView для пакетной обработки или использовать пробную версию Adobe Lightroom .

+1 за общее направление ответа. То, что я хотел бы, это способ найти дубликаты / очень похожие кадры и сохранить только те. Aaron Digulla 13 лет назад 0
Я должен разобраться в этом! Если вы соблюдаете время, вы не должны получать дубликаты. slhck 13 лет назад 0
Но трудно придерживаться времени. Иногда мне приходится перелистывать страницы или проверять обратную сторону и т. Д. Было бы гораздо удобнее, если бы программа могла просто извлечь первый кадр из всех дубликатов. Aaron Digulla 13 лет назад 0
Я понимаю :) Ну, у меня есть идея, которая использует [ImageMagick] (http://www.imagemagick.org/script/index.php), но это потребует немного программирования - к сожалению, не хватает времени для этого в ближайшие дни. slhck 13 лет назад 0
2
megpants

Я профессиональный VFX-художник, и лучший способ сделать это - просто делать фотографии. Мы по-прежнему делаем такие вещи на съемочной площадке для маленьких кусочков фильма, которые должны выглядеть как живое действие, но не могут быть сняты напрямую.

Даже если у вас есть регистрационная отметка на ваших страницах, ее трудно вытащить с помощью размытия в движении. Ваша лучшая ставка (наименее трудоемкая в течение И после того, как вы сделаете снимки) на самом деле все еще, вероятно, делает фотографию, перемещает страницу, снова нажимает кнопку фотографии.

Это должен был быть комментарий. Это ценное замечание, но не ответ на вопрос. Jan Doggen 9 лет назад 0

Похожие вопросы