"VideoFrames" (ネットエンコーダ)

NetEncoder["VideoFrames"]

動画のファイルまたはオブジェクトを画素のランク3テンソル列に変換するエンコーダを表す.

NetEncoder[{"VideoFrames","param"->val,}]

前処理のための指定のパラメータを持つエンコーダを表す.

詳細

  • "VideoFrames"エンコーダは入力から動画フレームのリストを返す.
  • NetEncoder[][input]はエンコーダを入力に適用し,出力を作る.
  • エンコーダへの入力には以下の一つを使うことができる:
  • videoVideoオブジェクト
    fileFile式として与えられた動画ファイル
    {image1,image2,}動画から抽出されると想定される画像のリスト
  • NetEncoder[][{input1,input2,}] はエンコーダを入力のリストに適用し,出力のリストを作る.
  • ネットワークの構築時に"port"->NetEncoder[]と指定すると,エンコーダをネットワークの入力ポートに付加することができる.
  • パラメータ
  • 以下のパラメータが使用可能である:
  • ColorSpace"RGB"符号化に使われる色空間
    FrameRate24フレームが抽出されるときのフレーム率
    "Levels"Automatic結果の中でのレベルの順序
    "MeanImage"None減算される平均画像
    RasterSize{128,128}フレームの大きさを変えるときに使われるラスタサイズ
    "StartTime"0フレーム抽出を始める時間
    "TargetLength"Automaticターゲットの出力の長さ
    "VarianceImage"None正規化に使われる分散画像
    Method"Stretch"サイズに適合させる方法
    ResamplingAutomaticリサンプリングの手法
    AlignmentCenterMethod"Fit" または "Fill"のときの画像の揃え方
    PaddingBlackMethod"Fit"のときの充填スキーム
  • 次は,使用可能なMethodの値である:
  • "Stretch"リサンプリングによって,フィットするように画像を引き伸ばす
    "Fit"画像全体をフィットする,縦横比を保つ,必要に応じてパディングする
    "Fill"より小さな次元にフィットする,必要に応じて反対側をクロップする
  • パラメータによってはNetEncoder[][{input,"param"val,}]を使って指定できるものもある.
  • デフォルトで,フレームは1秒に24フレームの割合で抽出される.FrameRateInheritedを使うともとのフレームレートでフレームが抽出できる.
  • デフォルトで,結果は次元{time,channels,height,width}のランク4の配列として表される.レベルの順序に制御するためには,"Levels" パラメータを"Time""Channels""Height""Width"を含むリストに設定する.
  • 以下の設定は"MeanImage""VarianceImage"に使うことができる:
  • None減算しない
    m各画素から減算される値
    {m1,m2,}いろいろなチャンネルから減算される値
    Image[]減算される全体画像
  • 画素は減算前に,0と1の間で正規化される.
  • 以下の設定は"TargetLength"に使うことができる:
  • nn 個のフレームを抽出する
    All使用可能なフレームをすべて抽出する
    Automatic抽出するフレームの数を自動的に選択する

例題

すべて開くすべて閉じる

  (2)

動画フレームのNetEncoderを作る:

エンコーダを Videoオブジェクトに適用する:

エンコーダの結果を画像で表示する:

スコープ  (3)

NetEncoder["VideoFrames"]で,FileまたはVideoオブジェクトを符号化することができる.動画フレームエンコーダを作ってみる:

エンコーダをFileオブジェクトに適用する:

エンコーダをVideoオブジェクトに適用する:

NetEncoder["VideoFrames"]を入力のバッチにマップする:

動画フレームのNetEncoderを作る:

エンコーダをネットワークの入力に付加する:

ネットワークをVideoオブジェクトに適用する:

パラメータ  (6)

ColorSpace  (1)

出力画像のColorSpace"Grayscale"に設定する:

出力には1チャンネル次元しかなく,グレースケールの画像に適している:

FrameRate  (1)

指定のレートでフレームを抽出する動画フレームエンコーダを作る:

"FrameRate"パラメータを評価時間で指定する:

"MeanImage"  (1)

符号化されたフレームから平均値のリストを引く動画フレームエンコーダを作る:

各画素値が0.8である動画を作る:

エンコーダを動画に適用する:

"StartTime"  (1)

指定時間に符号化を始める動画フレームエンコーダを作る:

"StartTime"パラメータを評価時間で指定する:

"TargetLength"  (1)

5個のフレームを返す動画フレームエンコーダを作る:

入力動画のすべてのフレームを返すエンコーダを作る:

"TargetLength"の指定が自動の場合,結果の長さは評価時間で制御できる:

"VarianceImage"  (1)

符号化されたエンコーダを分散のリストによって正規化する動画フレームエンコーダを作る:

各画素値が0.8である動画を作る:

エンコーダを動画に適用する: