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;
成员
| 成员名称 | 描述 |
|---|---|
| attr | Atlas 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图像处理
在线提单