LoadImageToLocal
产品支持情况
功能说明
将图像数据从Global Memory搬运到Local Memory。 搬运过程中可以完成图像预处理操作:包括图像翻转,改变图像尺寸(抠图,裁边,缩放,伸展),以及色域转换,类型转换等。图像预处理的相关参数通过SetAippFunctions进行配置。
函数原型
template <typename T>
__aicore__ inline void LoadImageToLocal(const LocalTensor<T>& dst, const LoadImageToLocalParams& loadDataParams)
参数说明
表 1 参数说明
|
Ascend 950PR/Ascend 950DT,支持的数据类型为:uint8_t、int8_t、half;支持的TPosition为VECIN、VECCALC、VECOUT。 Atlas A3 训练系列产品/Atlas A3 推理系列产品,支持数据类型:int8_t、half;支持的TPosition为A1、B1。 Atlas A2 训练系列产品/Atlas A2 推理系列产品,支持数据类型:int8_t、half;支持的TPosition为A1、B1。 |
||
LoadData参数结构体,类型为LoadImageToLocalParams。 具体定义请参考${INSTALL_DIR}/include/ascendc/basic_api/interface/kernel_struct_mm.h,${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。 参数说明参考表2。 |
表 2 LoadImageToLocalParams结构体内参数说明
目的图像顶部填充的像素数 ,取值范围:topPadSize∈[0, 32] ,默认为0。进行数据填充时使用,需要先调用SetAippFunctions通过AippPaddingParams配置填充的数值,再通过topPadSize、botPadSize、leftPadSize、rightPadSize配置填充的大小范围。 |
||
约束说明
- 操作数地址对齐要求请参见通用地址对齐约束。
- 加载到dst的图片的大小加padding的大小必须小于等于所在存储空间的大小。
- 当通过SetAippFunctions配置padding模式为块填充模式或者镜像块填充模式时,因为padding的数据来自于抠出的图片,左右padding的长度(leftPadSize、rightPadSize)必须小于或等于抠图的水平长度(horizSize),上下padding的长度(topPadSize、botPadSize)必须小于或等于抠图的垂直的长度(vertSize)。
返回值说明
无