AddWeighted

函数功能

图像处理类,Tensor类的张量加权混合接口(即dst = alpha*src1 + beta*src2 + gamma),支持float16、float32、uint8,支持异步调用。不支持inplace操作。

当前支持Atlas 推理系列产品Atlas 200I/500 A2 推理产品

Atlas 200I/500 A2 推理产品上,支持预加载(预加载时需要添加attr属性,示例请参见初始化算子预加载文件实例”章节)。

使用时需满足以下条件:

函数原型

1
APP_ERROR AddWeighted(const Tensor &src1, float alpha, const Tensor &src2, float beta, float gamma, Tensor &dst,  AscendStream &stream = AscendStream::DefaultStream());

参数说明

参数名

输入/输出

说明

src1

输入

Tensor类,输入张量,支持float16、float32、uint8类型输入,数据内存必须在Device或DVPP侧。

alpha

输入

float类型,张量src1的系数。

src2

输入

Tensor类,输入张量,支持float16、float32、uint8类型输入,数据内存必须在Device或DVPP侧。

beta

输入

float类型,张量src2的系数。

gamma

输入

float类型,计算dst最后相加的值。

dst

输出

Tensor类,输出张量,float16、float32、uint8类型。支持传入空Tensor,如果dst不为空,形状必须与src1/src2相同,需调用Tensor.Malloc()接口提前分配内存,数据内存必须在Device侧(与“src”同一个Device)或DVPP侧。

stream

输入

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

返回参数说明

数据结构

说明

APP_ERROR

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