動画は音楽などと違って常に見ていないといけないので、そもそも見るのが面倒と感じてしまいます。DVDのようにシーンがまとまっていれば、気になるところから見ることができるでしょう。それができないので手作業で探したり、倍速モードなどを使うことになります。 今回はScene Change Detectionを紹介します。動画のシーンが切り替わったポイントを検出してくれます。

Scene Change Detectionの使い方

Scene Change Detectionは動画を指定して実行するだけです。

$ python2 SceneChangeDetection.py indexvideo.mov 
CUT 1 Detected at frame 170
CUT 2 Detected at frame 296
463

実行中は動画のワンシーンを切り出した画像が表示されています。

Scene Change Detectionはそのままでは一コマずつ、前のコマと比較して変化が大きいと考えられる部分を検出します。デフォルトのままだと閾値が低いので、もっと大きくしても良いでしょう。また、動画のサイズが大きいと処理に時間がかかるので、480pくらいのが良さそうです。

なお、Scene Change Detectionは動画のカットをしてくれる訳でないので、フレーム数を確認して別途処理を行う必要があります。

Scene Change DetectionはPython製のオープンソース・ソフトウェア(MIT License)です。

sandeepnmenon/Scene-Change-Detection: Detects scene change or cuts in a video file