8
votes

Amélioration de l'extraction de la vignette des vidéos

J'utilise FFMPEG pour trouver la trame moyenne d'un fichier vidéo H264 et extraire la vignette JPG pour une utilisation sur un portail en streaming. Ceci est fait automatiquement pour chaque vidéo téléchargée.

Parfois, le cadre se trouve être un cadre noir ou juste sémantiquement mauvais, c'est-à-dire un fond de fond ou de flou qui ne correspond pas bien au contenu vidéo.

Je me demande si je peux utiliser OpenCV ou une autre méthode / bibliothèque pour trouver de meilleures vignettes par programme par le biais d'une reconnaissance faciale ou d'une analyse de cadre.


0 commentaires

3 Réponses :


10
votes

J'ai rencontré ce problème moi-même et j'ai trouvé un algorithme très brut - simple pour vous assurer que mes vignettes étaient plus "intéressantes ". Comment?

  1. Créez x -Nombre de vignettes toutes à des moments différents. Par exemple. 5 vignettes
  2. Utilisez le fichier le plus important (en octets) et supprimez le reste

    Pourquoi cela fonctionne-t-il? Étant donné que les fichiers JPEG d'une image monotone 'ennuyeuse', comme un écran noir, compriment dans un fichier beaucoup plus petit qu'une image avec de nombreux objets et couleurs.

    Ce n'est pas parfait, mais est une viabilité 80/20 solution. (Résout 80% du problème avec 20% du travail.) Coder quelque chose qui analyse réellement l'image elle-même va être considérablement plus de travail.


1 commentaires

Merci, cela semble grossier mais résout la question des cadres noirs avec peu d'effort.



2
votes

LibAvfilter a un filtre miniature, qui est destiné à choisir le cadre le plus représentatif d'une série de cadres. Je ne sais pas comment ça marche, mais Heres the Docs 0 commentaires


2
votes

Si quiconque a besoin d'une doublure (à l'aide de FFMPEG et d'ImageMagick):

(Ceci choisit un maximum de 20 images de la vidéo et utilise GT (scène) pour choisir des moments de transition. Il utilise FFMPEG pour faire 120pixels de largeur de large. Et puis Imagemagick pour faire un gif (parce que les gifs FFMPEG sont notoirement laids ...) il pourrait échouer échouer si rien ne se passe dans le film, mais vous ne devriez pas appeler cela un film - Si vous? xxx


0 commentaires