CANN/ops-cv 3D网格采样梯度算子
GridSampler3DGrad【免费下载链接】ops-cv本项目是CANN提供的图像处理、目标检测相关的算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-cv产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√Atlas 200I/500 A2 推理产品×Atlas 推理系列产品×Atlas 训练系列产品√功能说明算子功能GridSampler中3D场景的反向传播完成张量input与张量grid的梯度计算。计算公式计算流程根据grid存储的(x, y, z)值计算出映射到input上的坐标这些坐标和align_corners、padding_mode有关。坐标根据输入的interpolation_mode选择使用bilinear、nearest不同插值模式计算输出值。根据grad存储的梯度值乘上对应点的权重值计算出最终dx、dgrid的结果。其中grad、input、grid、dx、dgrid的尺寸如下$$ grad: (N, C, D_{out}, H_{out}, W_{out})\ input: (N, C, D_{in}, H_{in}, W_{in})\ grid: (N, D_{out}, H_{out}, W_{out}, 3)\ dx: (N, C, D_{in}, H_{in}, W_{in})\ dgrid: (N, D_{out}, H_{out}, W_{out}, 3) $$其中grad、input、grid、dx、dgrid中的N是一致的grad、input和dx中的C是一致的input和dx中的$D_{in}$、$H_{in}$、$W_{in}$是一致的grad、grid和dgrid中的$D_{out}$、$H_{out}$、$W_{out}$是一致的grid最后一维大小为3表示input像素位置信息为(x, y, z)会将x、y、z的取值范围归一化到[-1, 1]之间。对于超出范围的坐标会根据padding_mode进行不同处理padding_modezeros表示对越界位置用0填充。padding_modeborder表示对越界位置用边界值填充。padding_modereflection表示对越界位置用边界值的对称值填充。对input采样时会根据interpolation_mode进行不同处理interpolation_modebilinear表示取input中(x, y, z)周围八个坐标的加权平均值。interpolation_modenearest表示取input中距离(x, y, z)最近的坐标值。参数说明参数名输入/输出/属性描述数据类型数据格式grad输入表示反向传播过程中上一层的输出梯度对应公式描述中的grad。数据类型与x的数据类型一致。当数据类型DOUBLE时数据格式不支持NDHWC。FLOAT16、FLOAT32、DOUBLE、BFLOAT16NCDHW、NDHWCx输入表示反向传播的输入张量对应公式描述中的input。shape仅支持五维且需满足x和grad的N轴和C轴的值保持一致x的DHW值不可为0。FLOAT16、FLOAT32、DOUBLE、BFLOAT16NCDHW、NDHWCgrid输入表示采用像素位置的张量对应公式描述中的grid。shape仅支持五维且需满足grid和grad的N轴、D轴、H轴、W轴的值保持一致最后一维的值等于3。FLOAT16、FLOAT32、DOUBLE、BFLOAT16NDHWCinterpolation_mode可选属性表示插值模式对应公式描述中的interpolation_mode。支持bilinear0双线性插值和nearest1最邻近插值。默认值为bilinear。STRING-padding_mode可选属性用于表示填充模式对应公式描述中的padding_mode。支持0zeros、1border、2reflection三种模式。默认值为zeros。STRING-align_corners可选属性表示设定特征图坐标与特征值的对应方式对应公式描述中的align_corners。如果为true则将极值-1和1视为参考输入的角像素点的中心点如果为false则视为参考输入的角像素点的角点。默认值为false。BOOL-dx输出表示反向传播的输出梯度对应公式描述中的dx。数据类型、数据格式和shape与x的数据类型、数据格式和shape保持一致。FLOAT16、FLOAT32、DOUBLE、BFLOAT16NCDHW、NDHWCdgrid输出表示grid梯度对应公式描述中的dgrid。数据类型、数据格式和shape与grid的数据类型、数据格式和shape保持一致。FLOAT16、FLOAT32、DOUBLE、BFLOAT16NDHWCAtlas 训练系列产品 输入参数和输出参数的数据类型不支持DOUBLE、BFLOAT16。约束说明无调用说明调用方式样例代码说明aclnn接口test_aclnn_grid_sampler3_d_backward通过aclnnGridSampler3DBackward接口方式调用GridSampler3DGrad算子。图模式-通过算子IR构图方式调用GridSampler3DGrad算子。【免费下载链接】ops-cv本项目是CANN提供的图像处理、目标检测相关的算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-cv创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考