hi_vpss_crop_info

说明

定义裁剪功能所需信息。

定义

typedef struct {
    hi_bool     enable;
    hi_coord    crop_mode;
    hi_rect     crop_rect;    
}hi_vpss_crop_info;

成员

成员名称

描述

enable

是否开启裁剪功能。

取值范围:

  • HI_FALSE:不开启。
  • HI_TRUE:开启。

crop_mode

裁剪区域起始点坐标模式。

crop_rect

裁剪的矩形区域。

  • 将crop_mode参数设置为相对坐标时,裁剪区域坐标取值范围为 [0, 999],裁剪区域宽高取值范围为[1, 1000] 。
  • 裁剪区域的尺寸不能小于VPSS支持的最小输入分辨率,不能超过VPSS支持的最大输入分辨率;如果裁剪宽度大于输入图像宽度,则裁剪输出宽度调整为输入图像宽度;如果裁剪高度大于输入图像高度,则裁剪输出高度调整为输入图像高度;裁剪区域起始点不支持负坐标,裁剪区域右边界不能超出VPSS支持的最大输入宽度,裁剪区域下边界不能超出VPSS支持的最大输入高度。
  • 如果裁剪区域超出图像范围,裁剪坐标向原点方向移动,优先保证裁剪出的宽高与所设置的参数相同。
  • 相对坐标模式下:
    • 横坐标计算公式: X = crop_rect.x * 实际图像宽度/1000,计算完成后会进行取整操作和对齐操作。公式同样适用于纵坐标计算。
    • 区域宽度计算公式:Width=crop_rect.width * 实际图像宽度/1000,计算完成后会进行取整操作和对齐操作。公式同样适用于区域高度计算。
    • 如果经过计算后,裁剪区域宽高小于VPSS支持的最小分辨率,则裁剪输出宽高调整为输入图像宽高,接口返回成功。
  • 绝对坐标模式下:
    • 如果裁剪宽高小于VPSS支持的最小输入分辨率,则crop设置不生效,接口返回失败。
    • 如果裁剪宽高大于VPSS支持的最大输入分辨率,则crop设置不生效,接口返回失败。
    • 裁剪区域坐标和裁剪宽高之和超过VPSS支持的最大输入分辨率,则crop设置不生效,接口返回失败。