nvidia.dali.fn.experimental.remap#

nvidia.dali.fn.experimental.remap(__input, __mapx, __mapy, /, *, bytes_per_sample_hint=[0], interp=DALIInterpType.INTERP_LINEAR, pixel_origin='corner', preserve=False, device=None, name=None)#

remap 操作将通用的几何变换应用于图像。换句话说,它从输入图像中的一个位置获取像素,并将它们放置在输出图像中的另一个位置。变换由 mapxmapy 参数描述,其中

output(x,y) = input(mapx(x,y),mapy(x,y))

输出张量的类型将与输入张量的类型匹配。

仅处理 HWC 布局。

目前不支持选择边框策略。DALIBorderType 将始终为 CONSTANT,值为 0

此操作符允许序列输入。

支持的后端
  • ‘gpu’

参数:
  • __input (TensorList ('HWC', 'FHWC')) – 输入数据。必须是 1 通道或 3 通道 HWC 图像。

  • __mapx (floatTensorList ('HWC', 'HW', 'FHWC', 'FHW', 'F***', 'F**')) – 定义 x 坐标的 remap 变换。

  • __mapy (floatTensorList ('HWC', 'HW', 'FHWC', 'FHW', 'F***', 'F**')) – 定义 y 坐标的 remap 变换。

关键字参数:
  • bytes_per_sample_hint (int 或 int 列表, 可选, 默认 = [0]) –

    每个样本的输出大小提示(以字节为单位)。

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

  • interp (nvidia.dali.types.DALIInterpType, 可选, 默认 = DALIInterpType.INTERP_LINEAR) – 插值类型。

  • pixel_origin (str, 可选, 默认 = ‘corner’) –

    像素原点。可能的值:"corner", "center"

    定义像素的哪个部分(左上角或中心)被解释为其原点。此值会影响插值结果。要匹配 OpenCV,请选择 "center"

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