Encontre a posição do arquivo de vídeo usando uma correspondência de imagem

2

Qual seria a melhor ferramenta / método para encontrar automaticamente uma posição de um arquivo de vídeo, onde o quadro corresponde aproximadamente a uma determinada imagem?

Basicamente, um comando para: "Encontre a posição em que [image.jpg] aparece no [video.mpg]"

Preferencialmente com ffmpeg , ou alguma outra ferramenta de linha de comando do Linux.

* - ou talvez o quadro que melhor de todos os quadros no vídeo, corresponde à imagem

    
por Ilari Kajaste 22.10.2013 / 16:39

1 resposta

0

Você pode usar o md5 e framemd5 muxers se a imagem e o quadro forem exatamente iguais . Exemplo:

  1. Obter a soma MD5 da imagem de destino:

    $ ffmpeg -i frame.jpg -f md5 - 2>&1 | grep MD5
    MD5=b7fb5124a65108ebb067129d9d81ed57
    
  2. Encontre um quadro de imagem exato em vídeo:

    $ ffmpeg -i video.mov -f framemd5 - 2>&1 | grep b7fb5124a65108ebb067129d9d81ed57
      0,        62,        62,         1,  1424400, b7fb5124a65108ebb067129d9d81ed57
    

Os números de saída referem-se a: stream_index, packet_dts, packet_pts, packet_duration, packet_size, MD5 .

No entanto, provavelmente não é isso que você está procurando. É concebível que isso funcione se video.mov for mjpeg; por exemplo, se você fizer um vídeo a partir de entradas jpg e < href="http://ffmpeg.org/ffmpeg.html#Stream-copy"> copie as cópias para a saída:

ffmpeg -pattern_type glob -i "*.jpg" -codec copy output.mkv
    
por 23.10.2013 / 01:07