nvidia.dali.fn.transforms.shear#

nvidia.dali.fn.transforms.shear(__input=None, /, *, angles=None, bytes_per_sample_hint=[0], center=None, preserve=False, reverse_order=False, shear=None, device=None, name=None)#

生成剪切仿射变换矩阵。

如果将另一个变换矩阵作为输入传递,则操作符将剪切映射应用于提供的矩阵。

注意

此操作符的输出可以直接馈送到 CoordTransformWarpAffine 操作符。

此操作符允许序列输入。

支持的后端
  • ‘cpu’

参数:

__input (TensorList, 可选) – 操作符的输入。

关键字参数:
  • angles (floatlist of floatTensorList of float, 可选) –

    剪切角,以度为单位。

    此参数与 shear 互斥。

    对于 2D,angles 包含两个元素:angle_x, angle_y。

    对于 3D,angles 包含六个元素:angle_xy, angle_xz, angle_yx, angle_yz, angle_zx, angle_zy。

    剪切角转换为剪切因子,如下所示

    shear_factor = tan(deg2rad(shear_angle))
    

    注意

    有效值范围在 -90 到 90 度之间。此参数与 shear 互斥。如果提供,则变换的维度数将从此参数推断。

    支持 per-frame 输入。

  • bytes_per_sample_hint (int 或 list of int, 可选, 默认 = [0]) –

    输出大小提示,以字节/样本为单位。

    如果指定,则操作符位于 GPU 或页锁定主机内存中的输出将被预先分配,以容纳此大小的样本批次。

  • center (floatlist of floatTensorList of float, 可选) –

    剪切操作的中心。

    如果提供,则元素数量应与变换的维度匹配。

    支持 per-frame 输入。

  • preserve (bool, 可选, 默认 = False) – 即使操作符的输出未使用,也阻止其从图中移除。

  • reverse_order (bool, 可选, 默认 = False) –

    确定组合仿射变换时的顺序。

    如果设置为 False(默认),操作符的仿射变换将应用于输入变换。如果设置为 True,输入变换将应用于操作符的变换。

    如果没有输入,则忽略此参数。

  • shear (floatlist of floatTensorList of float, 可选) –

    剪切因子。

    对于 2D,shear 包含两个元素:shear_x, shear_y。

    对于 3D,shear 包含六个元素:shear_xy, shear_xz, shear_yx, shear_yz, shear_zx, shear_zy。

    剪切因子值可以解释为在沿第二轴方向移动时应用于第一轴的偏移量。

    注意

    此参数与 angles 互斥。如果提供,则变换的维度数将从此参数推断。

    支持 per-frame 输入。