ffmpeg 3.4 から追加予定のフィルタ。Roberts cross operator を用いたエッジ検出フィルタ roberts の使い方。同様のフィルタに sobel, prewitt があり、他にもエッジ検出できるフィルタはいくつかある。

基本コマンド

ffmpeg -i input -vf roberts=planes=15:scale=1:delta=0 output
ffmpeg -i input -vf roberts=15:1:0 output
ffplay -i input -vf roberts=15:1:0

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

オプション

乗算、加算の値は増やせば線が増え、減らせば線が減る。

  • planes[int]
    フィルタを当てるチャンネル指定
    詳しくは ffmpeg について | チャンネルの順番と注意点 を参照
    既定値:15(すべて)
  • scale[float]
    フィルタを当てる乗算値の指定
    範囲:0 から 65535 まで
    既定値:1
  • delta[float]
    フィルタを当てる加算値の指定
    範囲:-65535 から 65535 まで
    既定値:0

サンプル画像

アニメ画像

アニメ「艦隊これくしょん~艦これ~」の11話の大和出撃のシーン

アニメ画像 roberts=1(1st plane だけフィルタを当てている)

実写画像

実物大の戦艦大和

実写画像 roberts=1(1st plane だけフィルタを当てている)

5 thoughts on “エッジ検出フィルタ roberts

  • 匿名

    解説ありがとうございます。ようやくplaneが理解できました。
    planeがチャンネルらしきことは解り始めていたのですが、???な状態から抜け出せたようです。
    planeの解説は海外サイトでも見かけないのでとてもありがたいです。

    ありがとうございます。

    提案なのですが、二進数の十進表記を知らない人にもわかるようんい表を下のようにしてみるのはいかがでしょうか?

    option\Plane |1st(Y,R,G) 2nd(U,G,B) 3rd(V,B,R) 4th(a)
    |0=0x2^0(off) 0=0x2^1(off) 0=0x2^2(off) 0=0x2^3(off)
    |1=1×2^0(on) 2=1×2^1(on) 4=1×2^2(on) 8=1×2^3(on)
    ——————————————————————————
    0 |0 0 0 0
    1 |1 0 0 0
    2 |0 2 0 0
    3 |0 0 3 0
    4 |1 0 3 0
    5 |0 2 4 0

  • 匿名

    いつもここでffmpegについて勉強させてもらっています。
    「ffmpeg について | チャンネルの順番と注意点 」の表の読み方がわからないので、解説をお願いします。
    YUVでいうと、1st planeがY、2nd planeがU、3rd planeがV、4th planeがアルファー
    1st planeが1、2nd planeが2、3rd planeが3で表記
    とは想像したのですが、1st planeに1と4が割り当てられたり、オプション番号との対応も???です。
    2nd planeのみや、2nd planeと3rd planeの時は?と。

    • admin

      >1st planeが1、2nd planeが2、3rd planeが3で表記とは想像したのですが、
      誤解を生む表記だったので plane の表記を削除し書き直しました。指摘ありがとうございます

      >2nd planeのみ
      2 を指定します

      >2nd planeと3rd planeの時
      6 を指定します

      • 匿名

        コメントが反映されていなかったので再コメントです。
        解説ありがとうございます。
        planeのを説明しているところがなかったので、とてもありがたがったです。

        提案なのですが、二進法十進法を知らない人用の表に
        https://pastebin.com/NLmZnNHK
        はいかがでしょうか?

        • admin

          グラフありがとうございます。plane 順番ですが、必ずしも YUV の順番だけではなく、YVU の順番もあるのでそれも記載しておきます。

コメントを残す

メールアドレスが公開されることはありません。

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