Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.
新增色域转换能力: YUV420SP_U8转YUV444 YUV420SP_U8转YVU444 RGB888_U8转BGR RGB888_U8转YVU444 BGR888_U8转RGB BGR888_U8转BGR XRGB8888_U8转YUV444 XRGB8888_U8转YVU444 XRGB8888_U8转GRAY XBGR8888_U8转GRAY RGBX8888_U8转GRAY BGRX8888_U8转GRAY YUV400_U8转GRAY
功能补齐
AIPP提供了更为方便的图像格式转换方式:色域转换,用于将输入的图片格式,转换为模型需要的图片格式; AIPP改变图片尺寸需要遵守如下图中的顺序,即先Crop再Padding,每个操作仅能执行一次;原图大小为srcImageSizeW、srcImageSizeH的图像经过图像预处理后变为模型预期的dstImageSizeW、dstImageSizeH图像尺寸。
YUV420SP_U8转YUV444 输出是3个通道,Y、U、V各占1个通道 计算公式: ● Y444 (x, y) = Y420 (x, y) ● U444 (x, y)= U420 (x/2, y/2) ● V444 (x, y)= V420 (x/2, y/2) 输出图的(x, y)的U值,等于输入图色度平面上 (x/2, y/2)处的 U 值。x和y是平面的像素坐标 1)确定 UV 平面的起始地址: offset_y = w * h 2)确定行偏移 offset_row = (y / 2) * w 3)确定列偏移 在 UV 平面中,每个色度像素对应 (1 个 V + 1 个 U) offset_col = x /2 * 2 4)获取u地址 在 NV21 格式中,偶数字节是 U,奇数字节是 V U420 (x/2, y/2) = w * h + (y / 2) * w + x /2 * 2 V420 (x/2, y/2) = w * h + (y / 2) * w + x /2 * 2 +1
Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.
Backgroud(背景信息)
新增色域转换能力:
YUV420SP_U8转YUV444
YUV420SP_U8转YVU444
RGB888_U8转BGR
RGB888_U8转YVU444
BGR888_U8转RGB
BGR888_U8转BGR
XRGB8888_U8转YUV444
XRGB8888_U8转YVU444
XRGB8888_U8转GRAY
XBGR8888_U8转GRAY
RGBX8888_U8转GRAY
BGRX8888_U8转GRAY
YUV400_U8转GRAY
Origin(信息来源)
功能补齐
Benefit / Necessity (价值/作用)
AIPP提供了更为方便的图像格式转换方式:色域转换,用于将输入的图片格式,转换为模型需要的图片格式;

AIPP改变图片尺寸需要遵守如下图中的顺序,即先Crop再Padding,每个操作仅能执行一次;原图大小为srcImageSizeW、srcImageSizeH的图像经过图像预处理后变为模型预期的dstImageSizeW、dstImageSizeH图像尺寸。
Design(设计方案)
YUV420SP_U8转YUV444
输出是3个通道,Y、U、V各占1个通道
计算公式:
● Y444 (x, y) = Y420 (x, y)
● U444 (x, y)= U420 (x/2, y/2)
● V444 (x, y)= V420 (x/2, y/2)
输出图的(x, y)的U值,等于输入图色度平面上 (x/2, y/2)处的 U 值。x和y是平面的像素坐标
1)确定 UV 平面的起始地址:
offset_y = w * h
2)确定行偏移
offset_row = (y / 2) * w
3)确定列偏移
在 UV 平面中,每个色度像素对应 (1 个 V + 1 个 U)
offset_col = x /2 * 2
4)获取u地址
在 NV21 格式中,偶数字节是 U,奇数字节是 V
U420 (x/2, y/2) = w * h + (y / 2) * w + x /2 * 2
V420 (x/2, y/2) = w * h + (y / 2) * w + x /2 * 2 +1