Resize
函数功能
ImageProcessor类的图像缩放接口,Atlas 推理系列产品支持异步执行,使用该接口申请的Image内存无需用户管理,由内部管理释放,缩放效果示意图请参见图1。
- 输入输出Image类支持的图像格式参考如下。
- Atlas 200/300/500 推理产品支持YUV_SP_420、YVU_SP_420(nv12、nv21)。
- Atlas 200I/500 A2 推理产品支持YUV_SP_420、YVU_SP_420(nv12、nv21)。
- Atlas 推理系列产品支持YUV_SP_420、YVU_SP_420、RGB_888、BGR_888(nv12、nv21、rgb、bgr),其中RGB(BGR)图像格式分辨率不超过(4096 * 4096)。
- “inputImage”的真实图片分辨率范围:18 * 6 ~ 4096 * 4096,其中YUV_SP_420 和 YVU_SP_420格式的宽高可达到 8192 * 8192。
- 参数“resize”的最大分辨率:4096 * 4096,最小分辨率:32 * 6。
- “outputImage”宽自动与16对齐,高与2对齐,因此宽高范围为:32 * 6 ~ 4096 * 4096。
- 缩放后图片的宽高不能超出真实图片的[1/32 ,16]倍数区间。
函数原型
原型1(预计2025年3月正式删除,请使用该接口其他函数原型):
APP_ERROR ImageProcessor::Resize(const Image& inputImage, const Size& resize, Image& outputImage, const Interpolation interpolation = Interpolation::HUAWEI_HIGH_ORDER_FILTER);
原型2:
APP_ERROR ImageProcessor::Resize(const Image& inputImage, const Size& resize, Image& outputImage, const Interpolation interpolation, AscendStream& stream);
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
inputImage |
输入 |
输入缩放前的Image类。Decode接口和其他VPC接口获取的Image类可以直接作为输入。若是用户自定义构造的Image类,则需要设置图像宽高和图像对齐后的宽高。 |
resize |
输入 |
输入图像缩放的宽高。 |
interpolation |
输入 |
输入图像的缩放方式,可选参数参见如下。 HUAWEI_HIGH_ORDER_FILTER = 0 BILINEAR_SIMILAR_OPENCV = 1 NEAREST_NEIGHBOR_OPENCV = 2 BILINEAR_SIMILAR_TENSORFLOW = 3 NEAREST_NEIGHBOR_TENSORFLOW = 4 Atlas 200/300/500 推理产品支持以下算法(默认为0)。
Atlas 200I/500 A2 推理产品支持以下算法(默认为0)。
Atlas 推理系列产品支持以下算法(同步执行时默认为0)。
|
outputImage |
输出 |
输出缩放后的Image类。 |
stream |
输入 |
输入用于异步执行的Stream,具体请参见AscendStream。 |
返回参数说明
数据结构 |
说明 |
---|---|
APP_ERROR |
程序执行返回的错误码,请参考APP_ERROR说明。 |
父主题: ImageProcessor