开发流程

使用MindStudio开发和运行推理业务步骤如图1所示,其中“深入开发”为SDK高级特性,用户可以视情况选择执行。

图1 推理业务开发与运行流程
  1. 确定业务流程。

    根据业务的功能如目标检测、图像分类、属性识别等,将业务流程进行模块化,请参见图1

  2. 寻找合适插件。

    首先根据已有SDK插件的功能描述和规格限制来匹配业务功能。当SDK提供的插件无法满足功能需求时,用户可以开发自定义插件。请参见插件开发Manufacture SDK 用户指南Vision SDK 用户指南的“已有插件介绍”与“插件开发介绍”章节。

  3. 准备推理模型文件与数据集。

    根据插件的实际应用场景,添加用于推理的模型文件和数据集。(加载的模型路径中不能有空格。)

    1. 转换模型。

      在添加模型文件前,请参见模型转换将第三方模型转换为适配昇腾AI处理器的离线模型(*.om文件)。SDK样例工程的模型转换请参见SDK样例工程使用指导中的步骤46。模型转换具体指导与相关参数设置请参见ATC工具使用指南

    2. 添加模型文件。

      请用户将准备好的模型文件上传到应用工程中用户自定义目录下。

    3. 准备推理数据。

      准备推理所用数据,并上传到应用工程文件目录下。

  4. 流程编排。

    请参见可视化流程编排Manufacture SDK 用户指南Vision SDK 用户指南的“流程编排介绍”与“数据流程介绍”章节。

  5. 业务集成。

    编写C++程序或Python程序,调用业务流管理的API(MxStreamManager),先进行初始化,再加载业务流配置文件(*.pipeline),然后根据stream配置文件中的StreamName往指定Stream获取输出数据,最后销毁Stream。

    可用API请参见Manufacture SDK 用户指南Vision SDK 用户指南的“API参考(C++)”章节与“API参考(Python)”章节。

  6. 编译与运行应用。

    请参见编译与运行应用工程

    MindSDK昇腾应用工程支持Profiling功能,具体可参见性能分析