文档
注册

图片解码

功能介绍

通过对输入图片数据进行解码处理,将本地图片或图片数据转换为Image类,用于后续前处理和推理业务,类型目前支持JPEG和PNG格式。

接口调用流程

用户需准备好本地待解码的图片文件或待解码的图片数据,初始化ImageProcessor类,构造输出的Image对象,通过调用ImageProcessor类的Decode接口解码结果。

图片解码调用流程参考如下:

图1 图片解码接口调用流程

关键步骤说明如下:

  1. 调用MxInit()接口进行全局初始化。
  2. ImageProcessor构造及初始化。

    用户构造ImageProcessor对象,在构造完成后可以调用InitJpegDecodeChannel()初始化通道,若不选择调用该接口,ImageProcessor将会在执行解码前自动进行通道初始化。

  3. 构造输出的Image对象。

    使用构造函数Image()存放待解码输出的图片对象。

  4. 准备数据。

    根据业务需求选择从文件加载图片从内存加载图片数据

  5. 调用Decode()接口对图片进行解码。

    用户需根据输如的不同数据类型,调用对应的Decode接口。

  6. 调用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) {
        std::cout << "Decode failed." << std::endl;
    }
}
//去初始化
MxDeInit();
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词