フレーム補間でぬるぬる

先ずはこいつを見て欲しい。1分おきに撮影した写真を動画にしたもので、毎秒1コマ。

かっくかく。紙芝居のおっさんの方が手が早い気がするレベル。こいつをどうにかしたいと思い、少し調べ物をした。


動画素材との相性などもあるが、ワシの場合の結論を言えば、MSU Frame Rate Conversionが良かった。Pythonスクリプトはお手軽だが、単にフレーム間の平均を取ってるだけみたいで、よろしくない。MVToolsは使い方が難しくてよくわからん。動き予測の最適化とかやってられない。

作業はUbuntuで、wine経由で使うことになる。こんなだ。

$> wine ./avs2yuv.exe timelapse.avs - | x264 --stdin y4m --output output.mkv -


avsファイルはこんな。DSC_1049.jpgから連番で40枚の写真を読み込み、1 fpsの動画とする。んで、25 fpsとして出力してるだけ。

v = ImageSource("DSC_%04d.jpg", 1049, 1088, fps=1)
v = v.ConvertToYV12().AutoCrop(0, wMultOf=16, hMultOf=16).MSU_FRC(25, "slow")
return v