0.初めに
私は非エンジニアのドシロウトです。
GW連休中に手振れ補正し忘れて、アクションカメラでぶれぶれ動画を撮ってしまった方に手軽にGoogle Colabで動画の手振れ補正する方法をご紹介します。
【重要】1分以下程度の短い動画を補正する場合のみお試しください。
ファイルが大きくなると「ファイルのアップロード(元動画)」や「ffmpgで手ぶれ補正」に非常に時間がかかります。
1分を超える場合はローカルでやったほうが良いです。
私が試した限りでは元動画4分32秒の手ぶれ補正は1時間以上でした。
ローカルでも同じことはできます。
ローカルで実施される方は私がもともと参考にした以下の記事の通りにやると良いと思います。
1.どの程度手振れ補正できるのか
実際にColabでやってみた結果比較が以下です。
左が元の動画、右が補正後の動画です。、
ffmpeg の vid.stab プラグインで手振れ補正をしてるだけですが、歩き撮影などでは、まぁまぁ効果ある気がします。
2.colabでやったこと
以下の画像の通りです。(Colabを共有するのが抵抗あったので画像とコードで…)
実際にやってる内容(Colabの中身)は以下です。
ffmpeg の vid.stab プラグインが使えるか確認
(enable-libvidstab と表示されればOK)
!ffmpeg 2>&1 | grep -o enable-libvidstab
ファイルのアップロード(元動画)
from google.colab import files
uploaded = files.upload()
for fn in uploaded.keys():
print('User uploaded file "{name}" with length {length} bytes'.format(
name=fn, length=len(uploaded[fn])))
ffmpgで手ぶれ補正
!ffmpeg -i $fn -vf vidstabdetect -an -f null - && \ffmpeg -i $fn -vf vidstabtransform -y stb-$fn
ファイルのダウンロード(手振れ補正後動画:stb+アップロードファイル名)
from google.colab import files
files.download('stb-'+fn)
3. 終わりに
私は1分14秒の動画を試しに手振れ補正してみましたが、「ffmpgで手ぶれ補正」で約4分かかりました。
あまり長い動画でなければColabでもいけるかもしれません。
Colabは無料で使えますし。
ライフハックというほどでもないか