色の「自動レベル」に相当するffmpegフィルターは何ですか?


8

フィルターに関するドキュメントを見ると、次のプリセットで色を操作するカーブフィルターがあるようです。

  • color_negative
  • クロスプロセス
  • より暗い
  • コントラストを上げます
  • ライター
  • linear_contrast
  • medium_contrast
  • strong_contrast
  • ビンテージ

残念ながら、ドキュメントには、これらのプリセットが何をするか、またはそれらのパラメーターが何であるかは記載されていません。ビデオを取り、すべてのフレームの色を自動調整する簡単なオプションを探しています。これらのプリセットのいずれかがそれを行いますか?

回答:


5

プリセットの機能の詳細は次のとおりです。

[PRESET_COLOR_NEGATIVE] = {
    "0/1 0.129/1 0.466/0.498 0.725/0 1/0",
    "0/1 0.109/1 0.301/0.498 0.517/0 1/0",
    "0/1 0.098/1 0.235/0.498 0.423/0 1/0",
},
[PRESET_CROSS_PROCESS] = {
    "0.25/0.156 0.501/0.501 0.686/0.745",
    "0.25/0.188 0.38/0.501 0.745/0.815 1/0.815",
    "0.231/0.094 0.709/0.874",
},
[PRESET_DARKER]             = { .master = "0.5/0.4" },
[PRESET_INCREASE_CONTRAST]  = { .master = "0.149/0.066 0.831/0.905 0.905/0.98" },
[PRESET_LIGHTER]            = { .master = "0.4/0.5" },
[PRESET_LINEAR_CONTRAST]    = { .master = "0.305/0.286 0.694/0.713" },
[PRESET_MEDIUM_CONTRAST]    = { .master = "0.286/0.219 0.639/0.643" },
[PRESET_NEGATIVE]           = { .master = "0/1 1/0" },
[PRESET_STRONG_CONTRAST]    = { .master = "0.301/0.196 0.592/0.6 0.686/0.737" },
[PRESET_VINTAGE] = {
    "0/0.11 0.42/0.51 1/0.95",
    "0.50/0.48",
    "0/0.22 0.49/0.44 1/0.8",
}

各プリセットについて、各x/yペアは入力xを出力yにマップします0-1。範囲はです。設定されていない場合、フィルタは自動的に設定0/0し、1/1すなわち、入力黒=出力黒と白入力=出力ホワイト。一方0/1、出力では入力の黒のピクセルを白に設定します。コンマで区切られた引用符で囲まれた複数のペアがある場合、シーケンスが"R","G","B"マッピングされます。ポイント間の補間は、自然な3次スプラインです。


自動レベリングの場合、autolevelsおおまかな方法として、ppフィルターのサブフィルターを使用します。

ffmpeg -i input.mp4 -vf pp=al output.mp4

これは、輝度を全範囲に伸ばすことです。


調整の前後にレベルを確認するには、フレームのRGBパレードを次のように生成します

ffmpeg -i input.mp4 -vf "format=rgb24,waveform=c=7:d=parade,scale=1200x512" -vframes 1 frame1parade.png

特定のフレームには、

ffmpeg -ss 12.4 -i input.mp4 -vf "format=rgb24,waveform=c=7:d=parade,scale=1200x512" -vframes 1 frameNparade.png

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.