2021年9月24日金曜日

ffmpeg-ptyhonでdrawboxフィルタを使用して、動画上に四角形を描画する

ffmpeg-ptyhonでdrawboxフィルタを使用して、動画上に四角形を描画するには、以下のサンプルプログラムのようにfilterメソッドにフィルタ名"drawbox"とパラメータを指定します。
・xパラメータ: x座標
・yパラメータ: y座標
・wパラメータ: 四角形の幅
・hパラメータ: 四角形の高さ
・thicknessパラメータ: 線の太さ
・colorパラメータ: 色

サンプルプログラム

以下のサンプルプログラムを保存して実行します。ffmepg-pythonがインストールされた仮想環境の作成方法は「FFmpegをPythonから操作できるffmpeg-pythonをインストールした仮想環境を作成し、動画形式変換する」を参考にしてください。
ffmpeg_drawbox.py
import ffmpeg

input = ffmpeg.input('./lake.mp4')
processed = input.video.filter("drawbox",x=100,y=50,w=600,h=400,thickness=10,color="#ff0000")
ffmpeg.output(processed, input.audio, './lake_drawbox.mp4').run()

・実行方法
以下のコマンドを実行して、サンプルプログラムを実行します。
python ffmpeg_drawbox.py

〇変更前画像

〇変更後画像

入力動画のサイズに応じた描画のサンプル

iw/ihは入力画像の幅・高さです。iw/ihを使用することによって入力動画のサイズに応じた描画ができます。

ffmpeg_drawbox_size.py
import ffmpeg

input = ffmpeg.input('./lake.mp4')
processed = input.video.filter("drawbox",x=50,y=50,w="iw-100",h="ih-100",thickness=10,color="#ffffff")
ffmpeg.output(processed, input.audio, './lake_drawbox_size.mp4').run()

〇変更後画像

関連情報

・様々な動画に関するアプリケーションについては、以下のまとめを参照してください。
動画関連アプリケーションのまとめ

0 件のコメント:

コメントを投稿