画像の背景を削除して被写体を切り抜くウェブサービス remove.bg で手に入れた低解像度の透過画像をオリジナルの画像に透過情報を適用する。解像度が異なるのでオリジナルのサイズを手動で指定する。
Remove Background from Image – remove.bg
どうして解像度が小さくなるかというと無料で利用すると解像度は小さくなり、有料サービスを利用するとオリジナルの解像度が利用できる。
Pricing – remove.bg
ffmpeg のリサイズフィルタで一番高品質のzscale
フィルタのspline36を使う。fooにオリジナルの画像の横幅を、barにオリジナルの縦幅の値を指定する。オリジナル画像はJPG、PNG等どの形式でも可能。
ffmpeg -i original.jpg -i original-removebg-preview.png -filter_complex [0:v]format=rgba[ori];[1:v]zscale=foo:bar:f=spline36[alpha];[ori][alpha]lut2=x:x:x:y output.png
Zライブラリを使ったリサイズフィルタ zscale
LUTを手軽に入れ替えられるlut2、tlut2、swapuv
–enable-libzimgがついてない場合。
ffmpeg -i original.jpg -i original-removebg-preview.png -filter_complex [0:v]format=rgba[ori];[1:v]scale=foo:bar:flags=lanczos[alpha];[ori][alpha]lut2=x:x:x:y output.png
リサイズする scale