图像处理类算法,张量除法Divide,支持float16、float32、uint8。支持异步调用,部分函数原型支持预加载。不支持inplace操作。
当前支持Atlas 推理系列产品和Atlas 200I/500 A2 推理产品。
在Atlas 200I/500 A2 推理产品上,支持预加载(示例请参见“初始化算子预加载文件实例”章节)。
使用时需满足以下条件:
原型1
1 | APP_ERROR Divide(const Tensor &src1, const Tensor &src2, Tensor &dst, AscendStream &stream = AscendStream::DefaultStream()); |
原型2(Atlas 200I/500 A2 推理产品不适用该原型):
1 | APP_ERROR Divide(const Tensor &src1, const Tensor &src2, Tensor &dst, float scale, AscendStream& stream = AscendStream::DefaultStream()); |
参数名 |
输入/输出 |
说明 |
---|---|---|
src1 |
输入 |
Tensor类,被除数,输入张量,支持float16、float32、uint8类型输入。 |
src2 |
输入 |
Tensor类,除数,输入张量,支持float16、float32、uint8类型输入。“src2”内的元素不能为0。 |
dst |
输出 |
Tensor类,输出张量,支持float16、float32、uint8类型输出,支持传入空Tensor,如果dst不为空Tensor,需要调用Tensor.Malloc()接口提前分配内存。 |
stream |
输入 |
AscendStream类型,默认值为“AscendStream::DefaultStream()”。当参数值为默认值时,接口为同步操作,其他情况下,接口为异步操作。 |
scale |
输入 |
float类型,输入标量,输入Tensor src1和标量相乘后结果再与src2相除。 |
数据结构 |
说明 |
---|---|
APP_ERROR |
程序执行返回的错误码,请参考APP_ERROR说明。 |