开发者
资源

VPC功能说明

功能介绍

VPC(Vision Preprocessing Core):处理YUV、RGB等格式的图片,包含如下关键功能:

  • 抠图:从输入图片中抠出需要用的图片区域,支持一图多框和多图多框。
  • 缩放:针对不同分辨率的图像,支持8K缩放、非8K缩放;支持单图裁剪缩放(支持非压缩格式)、一图多框裁剪缩放(支持非压缩格式);支持原图缩放、等比例缩放(缩放前后图片的宽高比例相同)等缩放方式。
  • 叠加:从输入图片中抠出来的图,对抠出的图进行缩放后,放在用户输出图片的指定区域,输出图片可以是空白图片(由用户申请的空输出内存产生的),也可以是已有图片(由用户申请输出内存后将已有图片读入输出内存),只有当输出图片是已有图片时,才表示叠加。
  • 拼接:从输入图片中抠多张图片,对抠出的图进行缩放后,放到输出图片的指定区域。
  • 图像金字塔:对原图进行多次高斯滤波之后向下采样产生不同尺寸的图像。
  • 直方图统计:统计图像每个通道(RGB/YUV)的像素值分布。
  • 色彩重映射:根据配置信息将图片从原图映射为另一张图。
  • 边界填充:对图像进行边界填充。
  • 格式转换:支持RGB、YUV等格式之间的转换。
  • 图像灰度化:将彩色图像转化为灰度图像。需注意,输入为灰度图像、输出只能为灰度图像。实现图像灰度化的操作是输出YUV400格式的输出图片。
  • 环视拼接:主要用于车载场景生成全景图。使用该功能时,输入图片为4张,一般为前、左、后、右四个方向的图像,经过畸变矫正、增益补偿、图像融合,最终将4张图片融合成一张全景图片。其中,增益补偿是可选步骤,可在调用参数设置接口时选择是否进行增益补偿,通过增益补偿可平衡不同摄像头光照,达到更好的效果;图像融合当前采用的是加权融合方式,即像素加权平均法。
  • Remap变换:根据像素位置LUT对输入图像进行几何形变,典型的用途包括:镜头畸变校正、仿射变换、透视变换。形变方式可以用下述公式描述:dst(x,y)=src(LUT(x,y))。其中,dst(x,y)为输出图像在坐标(x,y)处的像素值,像素位置LUT(x,y)是输出图像在(x,y)处的像素对应输入图像中的横、纵坐标值,src(LUT(x,y))为输入图像在坐标LUT(x,y)处的像素值。通用的像素位置LUT可通过用户提供的map1(横坐标映射矩阵)和map2(纵坐标映射矩阵)生成,仿射变换或透视变换的像素位置LUT也可通过用户提供的3个点对或4个点对信息计算生成。
  • 滤波:对输入图片做滤波处理,当前可支持中值滤波/腐蚀/膨胀/高斯滤波/均值滤波/卷积滤波。
  • 旋转:对输入图片做固定角度的旋转,支持90度/180度/270度。
  • 马赛克:对输入图片做马赛克处理。
  • 覆盖:对输入图片做局部覆盖操作。
  • 画线:对输入图片做画线处理。
  • 添加水印:对输入图片做添加水印的处理。

功能支持度

各版本的功能支持度如下表所示。

功能

Atlas 推理系列产品

Atlas 200I/500 A2 推理产品

Atlas A2 训练系列产品 / Atlas A2 推理系列产品

Atlas A3 训练系列产品 / Atlas A3 推理系列产品

Atlas 350 加速卡

抠图

缩放

叠加

拼接

图像金字塔

直方图统计

色彩重映射

边界填充

格式转换

图像灰度化

环视拼接

Remap变换

滤波

旋转

马赛克

覆盖

画线

添加水印

功能示意图

此处仅展示功能示意图,各产品型号的对齐约束不同,以各功能接口的使用说明为准。

图1 VPC功能示意图(抠图+缩放+叠加)
图2 VPC功能示意图(拼接)
图3 等比例缩放(贴图区域在输出图片的中心位置),即缩放前后图片的宽高比例相同
图4 环视拼接
图5 Remap功能

由于对齐约束不同, Atlas 推理系列产品 上还支持如下等比例缩放功能。

图6 等比例缩放(贴图区域在输出图片的上下居中位置)
图7 等比例缩放(贴图区域在输出图片的左右居中位置)

参考说明

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