BlendImageCaption
函数功能
将字幕、背景板、按照字幕透明度和背景板透明度贴到图像帧上。(即caption*alpha/255 + (1-alpha/255)*(1-Opacity)*frame + captionBg*Opacity*(1-apha/255)),支持异步调用。
当前仅支持Atlas 推理系列产品。
使用时需满足以下条件:
- 接口中输入输出Tensor的数据内存及stream需位于同一Device中。
- 同步场景下,输入输出Tensor数据内存所在Device需与初始化的Device一致。
- 贴图计算区域大小以caption张量为准,默认为其引用区域,若其未设置引用区域,则为caption全部张量大小作为计算区域。其余张量需要与其设置相同高宽的引用区域,若未设置引用区域,则全部张量大小视为计算区域。所有输入输出张量大小的计算区域需要具有相同的高宽,最大计算宽度为1920。
函数原型
APP_ERROR BlendImageCaption(Tensor &frame, const Tensor &caption, const Tensor &captionAlpha, const Tensor &captionBg, float captionBgOpacity, AscendStream &stream = AscendStream::DefaultStream());
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
frame |
输入和输出 |
Tensor类,输入和输出张量,背景帧张量。高宽范围均在[64, 4096],仅支持UINT8类型。支持NHWC(N为1)、HWC、HW,其中通道数需要与caption一致。数据内存必须在Device或DVPP侧,不支持传入空tensor。 |
caption |
输入 |
Tensor类,输入张量,字幕张量。高宽范围均在[64, 4096],仅支持UINT8类型。支持NHWC(N为1)、HWC、HW,通道数为“1”或“3”。数据内存必须在Device或DVPP侧,不支持传入空tensor。 |
captionAlpha |
输入 |
Tensor类,输入张量,字幕图片mask的张量,高宽范围均在[64, 4096],仅支持UINT8类型。支持NHWC(N为1)、HWC、HW,通道数为“1”。数据内存必须在Device或DVPP侧,不支持传入空tensor。 |
captionBg |
输入 |
Tensor类,输入张量,字幕背景图张量,高宽范围均在[64, 4096],仅支持UINT8类型。支持NHWC(N为1)、HWC、HW,其中通道数需要与caption一致。数据内存必须在Device或DVPP侧,不支持传入空tensor。 |
captionBgOpacity |
输入 |
背景板透明度,范围[0,1] |
stream |
输入 |
AscendStream类型,默认值为“AscendStream::DefaultStream()”。当参数值为默认值时,接口为同步操作,其他情况下,接口为异步操作。 |
返回参数说明
数据结构 |
说明 |
---|---|
APP_ERROR |
程序执行返回的错误码,请参考APP_ERROR说明。 |