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의 예상 차원은 4D용이고 { InputBatchCount, InputChannelCount, InputDepth, InputHeight * HeightScale, InputWidth * WidthScale }
5D의 경우 입니다{ InputBatchCount, InputChannelCount, InputHeight * HeightScale, InputWidth * WidthScale }
.
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. 총 4개 요소에 대해 높이 차원의 가장 가까운 인접 입력 요소 2개와 너비 차원의 가장 가까운 2개 입력 요소의 가중 평균을 수행하여 출력 요소를 계산하는 쌍선 형 알고리즘을 사용합니다. 입/출력 DimensionCount가 5인 경우에도 마찬가지입니다. 즉, 샘플은 너비 및 높이 차원을 따라 평균화되며 일괄 처리, 채널 또는 깊이를 따라서는 절대로 평균화되지 않습니다.
가용성
이 연산자는 에서 DML_FEATURE_LEVEL_1_0
도입되었습니다.
텐서 제약 조건
InputTensor 및 OutputTensor 에는 동일한 DataType 및 DimensionCount가 있어야 합니다.
텐서 지원
텐서 | 종류 | 지원되는 차원 수 | 지원되는 데이터 형식 |
---|---|---|---|
InputTensor | 입력 | 4~5개 | FLOAT32, FLOAT16 |
OutputTensor | 출력 | 4~5개 | FLOAT32, FLOAT16 |
요구 사항
요구 사항 | 값 |
---|---|
헤더 | directml.h |