Объедините несколько файлов JPEG в одно видео

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

3
задан 30 April 2014 в 21:42

2 ответа

Это возьмет все .jpeg файлы в каталоге и создаст видео AVI.

mencoder "mf://*.jpeg" -mf fps=20 -o out.avi -ovc lavc -lavcopts vcodec=msmpeg4v2:vbitrate=640

изображения "дубликата" Обнаружения добавляет некоторую сложность. findimagedupes программа может быть опцией.

0
ответ дан 30 April 2014 в 21:42

Чтобы проанализировать общие черты между Вашими неподвижными изображениями, можно использовать эти compare команда от imagemagick пакет. Вам, вероятно, будет нужно -metric параметр. Я лично не играл очень с ним, но можно читать об этом здесь :

-metric type

  Output to STDERR a measure of the differences between images according
  to the type given metric.

Для создания видео Вы также в состоянии сделать это с avconv от libav пакет. Единственная возможная оборотная сторона его - то, что это требует для всех файлов, которые назовут последовательно без любых разрывов, и они должны запустить с 1. Вы Вам будет нужен сценарий для подготовки каталога, прежде чем Вы будете в состоянии выполнить команду.

последовательная ссылка (Сценарий! нет! записанный мной)

#!/usr/bin/python
"""    Create symlinks from a set of paths returned by glob for FFmpeg to read.  Thanks to: http://programmer-art.org/articles/tutorials/ffmpeg-time-lapse
"""
import os
import glob
import sys
files = sorted(glob.glob("/home/txoof/temp/779OLYMP/*.JPG"))
outdir = "/home/txoof/temp/output/"
if not os.path.exists(outdir):
  os.makedirs(outdir)
for i, f in enumerate(files):
  os.symlink(f, os.path.join(outdir, "%06d.jpg" % (i + 1)))

необходимо будет отредактировать каталоги в этом сценарии вручную, просто установить каталог, где файлы, и каталог, где ссылки будут (который может быть временным каталогом, и будет тогда удален).

После этого сделан, у Вас будет каталог полным файлов, запускающихся с 000001.jpg, и можно выполнить следующую команду:

avconv -i /home/txoof/temp/output/%06d.jpg -c:v copy -an video.avi
0
ответ дан 30 April 2014 в 21:42

Другие вопросы по тегам:

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