功能及约束说明

功能说明

VPC(vision preprocessing core)功能包括:

表1 关键概念解释

概念

描述

宽stride(widthStride)

指一行图像步长,表示输入/输出图片对齐后的宽,RGB格式或YUV格式的宽stride计算方式不一样。宽stride最小为32,最大为4096 * 4(宽是4096的argb格式的图像,1个像素占用4个字节,一行像素就占用4096*4,即宽stride)。

宽stride的对齐要求,请参见约束说明

高stride(heightStride)

指图像在内存中的行数,表示输入/输出图片对齐后的高。

高stride的对齐要求,请参见约束说明

上/下/左/右偏移

通过配置上偏移、下偏移、左偏移、右偏移可以实现两个功能:指定抠图区域或贴图区域的位置;控制抠图或贴图区域的宽、高,右偏移-左偏移+1=宽,下偏移-上偏移+1=高。
  • 左偏移:输入/输出图片中,抠图/贴图区域1、3两个点相对于0点水平向左偏移的值。

  • 右偏移:输入/输出图片中,抠图/贴图区域2、4两个点相对于0点水平向左偏移的值。

  • 上偏移:输入/输出图片中,抠图/贴图区域1、2两个点相对于0点垂直向上偏移的值。

  • 下偏移:输入/输出图片中,抠图/贴图区域3、4两个点相对于0点垂直向上偏移的值。

抠图区域

指用户指定的需抠出的图片区域。

抠图区域最小分辨率为10*6,最大分辨率为4096*4096。

贴图区域

指在输出图片中用户指定的区域,贴图区域最小分辨率为10*6,最大分辨率为4096*4096。

约束如下:
  • 贴图区奇数、偶数限制为:左偏移和上偏移为偶数、右偏移和下偏移为奇数。

  • 抠图区域不超出输入图片,贴图区域不超出输出图片。

  • 贴图时可直接放置在输出图片的最左侧,即相对输出图片的左偏移为0。

  • 贴图区域相对输出图片的左偏移16对齐。

  • 输出图片的贴图宽度建议16对齐,如果不是16对齐,会多写一段无效数据使其16对齐。

约束说明

功能示意图

图1 VPC功能示意图(抠图+缩放+叠加)
图2 VPC功能示意图(拼接)
图3 VPC功能示意图(等比例缩放,即缩放前后图片的宽高比例相同)

性能指标说明(昇腾310 AI处理器

性能指标说明(昇腾910 AI处理器

参考说明

RGB、YUV格式图像的各分量排布示意图。示例:SP图像以YUV420SP为例,Packed和RGB图像以ARGB图像为例。