GridSample

バージョン名: GridSample-9

カテゴリー: 画像処理

簡単な説明: GridSample は、入力の 1 つとして渡された正規化された非整数座標を使用して、入力イメージからピクセルの内挿サンプリングを行います。

詳細な説明: GridSample は、イメージを表す 4D 入力テンソルを操作します。grid 入力の値に基づいて入力画像内の位置を選択することにより、出力を計算します。後者には、オペレーターが生成する各出力要素の浮動小数点数のペアが含まれています。概念的には、このオペレーターは Gatherまたは GatherND と同じように動作しますが、異なる点は、選択されるピクセルが [-1, 1] の範囲に属する浮動小数点数のペアで表されることです。これらの値は最初に非正規化する必要があり (入力テンソルの整数座標にマッピングされ)、その後、補間 mode に従って出力値が計算されます。

属性:

  • align_corners

    • 説明: grid 入力テンソルの極値が入力イメージの境界ピクセルにどのようにマッピングされるかを制御します。幅と高さの両方の値が -1 の場合、境界ピクセルの中心または左/上の境界のいずれかにマッピングできます。同様に、値 1 を境界ピクセルの中心または右/下の境界にマッピングすることもできます。これは本質的に、GridSample 操作がピクセルを無限に小さな点ではなく正方形として扱うことを意味します。

    • 値の範囲:

      • false - 極値をピクセルの中心にマッピングします

      • true - 極値をピクセルの境界にマッピングする

    • タイプ: boolean

    • デフォルト値 : false

    • 必須: いいえ

  • mode

    • 説明: 出力要素の計算に使用される補間タイプを指定します

    • 値の範囲: 次のいずれか: bilinearbicubic または nearest

    • タイプ: string

    • デフォルト値 : bilinear

    • 必須: いいえ

  • padding_mode

    • 説明: 境界外の座標の処理を制御します。非正規化された座標は、入力テンソルの領域外 (グリッドの外側の値) になる可能性があります。

    • 値の範囲:

      • zeros - パディング内の値はゼロであるとみなします

      • border - オペレーターは最も近い内向きピクセルを選択します

      • reflection - 画像に属するピクセルを指すまで、範囲外の値を繰り返し反映します

    • タイプ: string

    • デフォルト値: ゼロ

    • 必須: いいえ

入力:

  • 1: data - サンプリングされるデータを含むタイプ T の入力テンソル。この入力は、NCHW レイアウトの 4 次元テンソルであることが期待されます。必須。

  • 2: grid - 正規化されたサンプリング座標 (浮動小数点数のペア) を含む 4 次元テンソル。このテンソルの形状は [N, H_out, W_out, 2] で、データタイプは T1 です。必須。

出力:

  • 1: [N, C, H_out, W_out] 形状の T タイプの 4 次元テンソル。このオペレーターによって計算された補間値が含まれます。

タイプ:

  • T: OpenVINO でサポートされる任意のタイプ。

  • T1: サポートされている浮動小数点タイプ。

例:

<layer ... type="GridSample" ...>
    <data align_corners="true" mode="nearest" padding_mode="border"/>
    <input>
        <port id="0">
            <dim>1</dim>
            <dim>3</dim>
            <dim>100</dim>
            <dim>100</dim>
        </port>
        <port id="1">
            <dim>1</dim>
            <dim>10</dim>
            <dim>10</dim>
            <dim>2</dim>
        </port>
    </input>
    <output>
        <port id="0">
            <dim>1</dim>
            <dim>3</dim>
            <dim>10</dim>
            <dim>10</dim>
        </port>
    </output>
</layer>