跳到主要内容

hi_csc_conf

hi_vpc_scalar

说明

定义图像处理像素各分量结构体。

定义

typedef struct {
hi_double val[4];
} hi_vpc_scalar;

成员

成员名称描述
val存放颜色分量的值,取值范围[0,255]。 当前支持用户手动按顺序存放R、G、B分量或Y、U、V分量的值,即val[0]存放R分量或Y分量,val[1]存放G分量或U分量,val[2]存放B分量或V分量,val[3]预留。 若输入、输出图片格式都是YUV格式,填充YUV分量的值;反之,填充的是RGB分量的值。

父主题: VPC图像处理

hi_vpc_chn_attr

说明

定义图像处理通道属性结构体。

定义

typedef struct {
hi_s32 attr;
hi_u32 pic_width;
hi_u32 pic_height;
} hi_vpc_chn_attr;

成员

成员名称描述
attrAtlas 200/500 A2推理产品,预留参数,暂不支持。 任务队列深度,取值范围:[0,350],取值越大,队列深度越深,在一个通道内可下发的任务数量越多,但系统内部内存消耗线性增加。 attr参数取值为[0,350]之间,具体说明如下:
- 取值为0,表示默认使用32。
- 取值为[1, 10),VPC内部考虑批量任务的处理(例如hi_mpi_vpc_batch_crop_resize_paste),自动将队列深度设置为10。
- 取值为[10, 350],取用户所配置的值。
(说明:任务队列深度取值大于350时,当前版本会自行采用350的取值,为避免后续版本的兼容性问题,建议用户在[队列深度最小值,350]范围内取值。 在一个VPC处理通道关联n个线程的场景下,防止通道队列满而阻塞任务下发,建议增加任务队列深度以保证性能,当线程数≤32时,可使用默认队列深度32;当线程数>32时,建议队列深度大于或等于线程数。)
pic_width通道支持的处理图像最大宽(以像素为单位)。预留字段,暂不支持。需要用户手动设置为0,避免后续版本的兼容性问题。 静态属性。
pic_height通道支持的处理图像最大高(以像素为单位)。预留字段,暂不支持。需要用户手动设置为0,避免后续版本的兼容性问题。 静态属性。

父主题: VPC图像处理

hi_vpc_crop_resize_border_region

说明

VPC抠图缩放填充信息结构体。

定义

typedef struct {
hi_vpc_pic_info dest_pic_info;
hi_vpc_crop_region crop_region;
hi_vpc_resize_info resize_info;
hi_u32 dest_top_offset;
hi_u32 dest_left_offset;
hi_vpc_bord_type border_type;
hi_vpc_scalar scalar_value;
} hi_vpc_crop_resize_border_region;

成员

成员名称描述
dest_pic_info目标图片信息。
crop_region原图抠图区域信息。
resize_info抠图缩放信息。
dest_top_offset贴图到另外一张图的顶部偏移。
dest_left_offset贴图到另外一张图的左侧偏移。
border_type扩充边缘像素的类型。
scalar_value仅在填充类型为HI_BORDER_CONSTANT的时候有效,指定填充的像素值。 当前支持用户手动按顺序存放R、G、B分量或Y、U、V分量的值。 若输入输出都是YUV格式,填充YUV分量的值;反之,填充的是RGB分量的值。

注意事项

默认抠图区域的图片格式会转成目标图片的格式,然后再缩放、填充至目标图片的宽高。

父主题: VPC图像处理

hi_csc_conf

说明

定义色域配置信息。

定义

type struct{
hi_u32 alpha;
hi_u32 attr[4];
};

成员

成员名称描述
alpha用于设置图像的透明度,取值范围:[0, 255],取值越小,图像越透明。 在查看图像时,无法直接感知透明度,一般在对图像进行融合、渲染等处理时才会使用透明度信息。
attr预留字段,暂不支持。需要用户手动将数组中的每个元素值设置为0,避免后续版本的兼容性问题。

父主题: VPC图像处理

hi_roundview_stitching_param

说明

定义环视拼接参数的结构体。

定义

typedef struct {
hi_stiching_ipm_param imp_conf;
hi_stitching_gain_param gain_conf;
hi_u32 reserved[8];
} hi_roundview_stitching_param;

成员

成员名称描述
imp_conf畸变矫正参数结构体。
gain_conf增益补偿参数结构体。 若无需增益补偿,则需要给该结构体内的gain_type成员设置为GAIN_NONE。
reserved预留参数,为保证后续版本兼容性,请务必使用memset结构体方式进行清零初始化,在代码中必须避免显式对reserved字段进行访问。

父主题: VPC图像处理

hi_roundview_stitching_pic_param

说明

定义环视拼接输入、输出图片信息的结构体。

定义

typedef struct {
hi_vpc_pic_info *dest_pic;
hi_u32 count;
hi_vpc_pic_info *source_pic;
} hi_roundview_stitching_pic_param;

成员

成员名称描述
dest_pic输出图片指针。
count输入图片数量,当前固定配置为4,否则会返回报错。
source_pic输入图片数组。 source_pic[0]存放第一张输入图片数据,source_pic[1]存放第二张输入图片数据,source_pic[2]存放第三张输入图片数据,source_pic[3]存放第四张输入图片数据。 4张输入图片的宽保持一致、高保持一致。

父主题: VPC图像处理

hi_stiching_ipm_param

说明

定义畸变矫正参数的结构体。

定义

typedef struct {
hi_u32 src_pic_width;
hi_u32 src_pic_height;
hi_u32 dest_pic_width;
hi_u32 dest_pic_height;
hi_u32 ipm_table_len;
hi_stiching_ipm_table *ipm_table_address;
} hi_stiching_ipm_param;

成员

成员名称描述
src_pic_width输入图片宽。 4张输入图片的宽保持一致。
src_pic_height输入图片高。 4张输入图片的高保持一致。
dest_pic_width输出图片宽。
dest_pic_height输出图片高。
ipm_table_len数组长度,必须为dest_pic_width * dest_pic_height
ipm_table_address畸变矫正结构体数组。 由用户提前申请内存存放数组中的数据,内存大小(单位为Byte) = sizeof(hi_stiching_ipm_table) * ipm_table_len,该内存大小可能比较大,如果直接使用C标准库中的malloc接口申请内存,会导致内存碎片化,大页个数减少,进而影响使用hi_mpi_dvpp_malloc接口申请DVPP各功能的输入/输出内存。因此推荐直接使用hi_mpi_dvpp_malloc接口申请存放ipm_table_address数组数据的内存。

父主题: VPC图像处理

在线提单