Rotate

函数功能

图像处理类,Tensor类的图片旋转接口,可将图片旋转至指定的角度。支持异步调用。

当前仅支持Atlas 推理系列产品Atlas 800I A2推理产品

使用时需满足以下条件:

函数原型

1
APP_ERROR Rotate(const Tensor &src, Tensor &dst, const RotateAngle angle, AscendStream& stream = AscendStream::DefaultStream());

参数说明

参数名

输入/输出

说明

src

输入

Tensor类,输入张量,不可为空,输入为HWC(三维)或HW(二维)。

  • 对于Atlas 推理系列产品,支持float16、float32和uint8类型。
  • 对于Atlas 800I A2推理产品,输入张量宽度范围为[10, 4096]。输入图像格式为YUV_400时,宽度最小为18;高度范围为[10, 4096]。需要在Device/DVPP侧分配内存,支持uint8类型。

dst

输出

Tensor类,旋转后的结果,支持传入空Tensor。

  • 对于Atlas 推理系列产品,如果dst不为空Tensor,需要调用Tensor.Malloc()接口提前分配内存。支持float16、float32和uint8类型;
  • 对于Atlas 800I A2推理产品。如果dst不为空Tensor,则输入张量宽度范围为[10, 4096],输入图像格式为YUV_400时,宽度最小为18;高度范围为[10, 4096]。需要在Device/DVPP侧分配内存,支持uint8类型。
  • 如果旋转角度为180度,形状(Shape)与“src”一致。
  • 如果旋转角度为90度或270度,形状(Shape)为“src”的HW通道转置后形状。

angle

输入

RotateAngle枚举类,指定顺时针旋转的角度,支持90度,180度,270度(ROTATE_90、ROTATE_180、ROTATE_270)。

stream

输入

AscendStream类型,默认值为“AscendStream::DefaultStream()”。当参数值为默认值时,接口为同步操作,其他情况下,接口为异步操作。

返回参数说明

数据结构

说明

APP_ERROR

程序执行返回的错误码,请参考APP_ERROR说明