图片解码
功能介绍
通过对输入图片数据进行解码处理,将本地图片或图片数据转换为Image类,用于后续前处理和推理业务,类型目前支持JPEG和PNG格式。
接口调用流程
用户需准备好本地待解码的图片文件或待解码的图片数据,初始化ImageProcessor类,构造输出的Image对象,通过调用ImageProcessor类的Decode接口解码结果。
图片解码调用流程参考如下:
图1 图片解码接口调用流程
关键步骤说明如下:
- 调用MxInit()接口进行全局初始化。
- ImageProcessor构造及初始化。
用户构造ImageProcessor对象,在构造完成后可以调用InitJpegDecodeChannel()初始化通道,若不选择调用该接口,ImageProcessor将会在执行解码前自动进行通道初始化。
- 构造输出的Image对象。
使用构造函数Image()存放待解码输出的图片对象。
- 准备数据。
- 调用Decode()接口对图片进行解码。
用户需根据输如的不同数据类型,调用对应的Decode接口。
- 调用MxDeInit()接口对初始化的全局资源进行去初始化。
示例代码
以下为功能特性关键步骤的代码示例,不可以直接拷贝编译运行,仅供参考。
//初始化 MxInit(); { //构造图像处理类 ImageProcessor imageProcessor(deviceId); //(可选)初始化解码通道 imageProcessor.InitJpegDecodeChannel(); //图像解码 //解码后的图像类 Image decodedImage; //根据图像路径进行解码 APP_ERROR ret = imageProcessor.Decode(imagePath, decodedImage, ImageFormat::YUV_SP_420); if (ret != APP_ERR_OK) { return 0; } } //去初始化 MxDeInit();
父主题: 通过接口进行图像处理(Image)