出力フォーマットは BGRA。アルファチャンネルは透過しない。

基本コマンド

緑を保持して他の色をグレーにする。
ffmpeg -i input -vf colorhold=color=green:similarity=0.5:blend=0 -vframes 1 output.jpg
ffplay -i input -vf colorhold=green:0.5:0

colorhold フィルタの効果比較

各チャンネルを左から並べる。
ffmpeg -i input -vf colorhold=green:0.5:0,extractplanes=r+g+b,hstack=3 -vframes 1 output.jpg

オリジナルとRGB各チャンネルを2×2で並べる。左上から右に向かってオリジナル、R、G、Bの順番。
ffmpeg -i input -vf "split[ori],colorhold=green:0.5:0,extractplanes=r+g+b,[ori]xstack=4:0_0|w0_0|0_h0|w0_h0" -vframes 1 output.jpg

各映像チャンネルを分離する extractplanes
解像度が一致しなくても映像を並べられる xstack

公式ドキュメント:FFmpeg Filters Documentation : colorhold

オプション

同じオプション設定にcolorkeyフィルタがあり、こちらは指定した色が透過する。

  • color[color]
    指定した色を保持し、その色以外はグレーになる。16進数形式か、色名を指定
    既定値:”black”
  • similarity[float]
    一致の範囲指定。0.01 は完全一致
    既定値:0.01
    範囲:0.01 から 1 まで
  • blend[float]
    似た色の影響具合、0 は指定した色だけで大きくするほど似た色も少しずつグレーになる
    既定値:0
    範囲:0 から 1 まで

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)