Crop
函数功能
ImageProcessor类的图像抠图接口,使用该接口申请的Image内存无需用户管理,内部管理释放。
- 输入输出Image类的图像格式,请参考 ImageFormat 枚举类 ImageFormat。
- 输入 Image 类的“original”宽高大小范围:18 * 6 ~ 4096 * 4096,其中 YUV_SP_420 和 YVU_SP_420 格式的宽高可以到 8192 * 8192。
- 输出图片的宽自动与 16 对齐, 高与 2 对齐,因此宽高范围为:32 * 6 ~ 4096 * 4096。
- 输出 Image 类即参数“cropRect”的最大分辨率:4096 * 4096;最小分辨率:18 * 6。
- 抠图区域不超出输入图片区域。
- 由于硬件接口限制,输入“cropRect”的四个值推荐均为偶数。若包含奇数,则左上角坐标自动向下取偶数,右下角坐标自动向上取偶数。
例如:cropRect{1, 1, 1287, 1287} ,实际抠图宽高为: ((1287 + 1) - (1 - 1))= 1288。
函数原型
APP_ERROR Crop(const Image& inputImage, const Rect& cropRect, Image& outputImage); APP_ERROR Crop(const Image& inputImage, const std::vector<Rect>& cropRectVec, std::vector<Image>& outputImageVec);
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
inputImage |
输入 |
输入抠图前的Image类。 Decode接口和其他VPC接口获取的Image类可以直接作为输入。若是用户自定义构造的Image类,则需要设置图像宽高。 |
cropRect |
输入 |
输入图像的抠图坐标框。 |
cropRectVec |
输入 |
输入图像的抠图坐标框列表(针对批量抠图场景)。 |
outputImage |
输出 |
输出抠图后的Image类。 |
outputImageVec |
输出 |
输出抠图后的Image类列表(针对批量抠图场景)。 |
返回参数说明
数据结构 |
说明 |
---|---|
APP_ERROR |
程序执行返回的错误码,请参考“MxBase/ErrorCode/ErrorCode.h”文件。 |
父主题: ImageProcessor