DML_UPSAMPLE_2D_OPERATOR_DESC 構造体 (directml.h)
入力イメージをアップサンプリングし、結果を出力テンソルに書き込みます。 ディメンションの順序は NCHW (BatchSize、ChannelCount、Height、Width) または NCDHW (BatchSize、ChannelCount、Depth、Height、Width) にする必要がありますが、データが別の形式で格納されている場合はストライドを使用できます。 DML_RESAMPLE_OPERATOR_DESCとは異なり、最後の 2 つのディメンション (高さと幅) のみをアップサンプリングできます。
使用可能な場合は、 DML_UPSAMPLE_2D_OPERATOR_DESC のより柔軟なバージョンであるため、 DML_RESAMPLE_OPERATOR_DESCすることをお勧めします。
構文
struct DML_UPSAMPLE_2D_OPERATOR_DESC {
const DML_TENSOR_DESC *InputTensor;
const DML_TENSOR_DESC *OutputTensor;
DML_SIZE_2D ScaleSize;
DML_INTERPOLATION_MODE InterpolationMode;
};
メンバー
InputTensor
型: const DML_TENSOR_DESC*
入力データを含むテンソル。 InputTensor の予想されるディメンションは { InputBatchCount, InputChannelCount, InputHeight, InputWidth }
、4D 用と { InputBatchCount, InputChannelCount, InputDepth, InputHeight, InputWidth }
5D 用です。
OutputTensor
型: const DML_TENSOR_DESC*
入力データを含むテンソル。 OutputTensor の予想されるディメンションは { InputBatchCount, InputChannelCount, InputHeight * HeightScale, InputWidth * WidthScale }
、4D 用と { InputBatchCount, InputChannelCount, InputDepth, InputHeight * HeightScale, InputWidth * WidthScale }
5D 用です。
ScaleSize
種類: DML_SIZE_2D
入力をアップサンプリングするときに適用する UINT 型の幅と高さのスケール。 0 < ScaleSize.Height <= UINT_MAX / InputHeight
および 0 < ScaleSize.Width <= UINT_MAX / InputWidth
。
InterpolationMode
このフィールドは、出力ピクセルの選択に使用される補間の種類を決定します。
- DML_INTERPOLATION_MODE_NEAREST_NEIGHBOR。 最も近い近隣アルゴリズムを使用します。これは、各出力要素の対応するピクセル中心に最も近い入力要素を選択します。
- DML_INTERPOLATION_MODE_LINEAR。 高さディメンション内の 2 つの最も近い近隣入力要素と、幅ディメンション内の最も近い 2 つの近隣入力要素の加重平均を合計 4 要素で実行して、出力要素を計算する バイリニア アルゴリズムを使用します。 これは、入力/出力 DimensionCount が 5 の場合でも当てはまります。 つまり、サンプルは幅と高さの寸法に沿ってのみ平均化され、バッチ、チャネル、または深さに沿ったことはありません。
可用性
この演算子は、 で DML_FEATURE_LEVEL_1_0
導入されました。
テンソル制約
InputTensor と OutputTensor には、同じ DataType と DimensionCount が必要です。
Tensor のサポート
テンソル | 種類 | サポートされているディメンション数 | サポートされるデータ型 |
---|---|---|---|
InputTensor | 入力 | 4 から 5 | FLOAT32、FLOAT16 |
OutputTensor | 出力 | 4 から 5 | FLOAT32、FLOAT16 |
要件
要件 | 値 |
---|---|
Header | directml.h |