一、介绍
本文主要给大家介绍使用MindStudio开发工具进行英文识别模型RARE_Resnet34_vd离线推理的开发过程,主要内容包括环境安装创建、模型获取转换以及离线推理三个部分。
1.1 模型介绍
识别自然图像中的文字仍是一个充满挑战的任务,RARE(Robust text recognizer with Automatic REctification)是一个对于不规则的文字具有鲁棒性的识别模型。该模型包括一个空间变换网络Spatial Transformer Network (STN)和一个序列识别网络Sequence Recognition Network (SRN),两个网络同时用BP算法进行训练。
在推理过程中一张图像先通过Thin-Plate-Spline (TPS)变换成一个正规的、更易读的图像,此变换可以矫正不同类型的不规则文本,包括透射变换和弯曲的文本。TPS变换由一组基准点(fiducial points)表示,坐标通过卷积神经网络回归得到。然后再放入SRN中进行识别。SRN使用序列识别的attention-based方法,包含一个编码器和一个解码器。编码器产生一个特征表示序列,即序列的特征向量;解码器根据输入序列循环地产生一个字符序列。这个系统是一个端到端的文本识别系统,在训练过程中也不需要额外标记字符串的关键点、字符位置等。更详细的模型介绍大家可以参考原论文:
https://arxiv.org/abs/1603.03915v2
1.2 MindStudio介绍
MindStudio是一套基于华为昇腾AI处理器开发的AI全栈开发平台,包括基于芯片的算子开发、以及自定义算子开发,同时还包括网络层的网络移植、优化和分析,另外在业务引擎层提供了一套可视化的AI引擎拖拽式编程服务,极大的降低了AI引擎的开发门槛。
MindStudio功能框架如下图所示,目前含有的工具链包括:模型转换工具、模型训练工具、自定义算子开发工具、应用开发工具、工程管理工具、编译工具、流程编排工具、精度比对工具、日志管理工具、性能分析工具、设备管理工具、开发工具包(Ascend Development Kit,ADK)等多种工具。
离线推理开发主要使用的是模型转换功能,将训练好的第三方网络模型可以直接通过离线模型工具导入并转换成离线模型,并可一键式自动生成模型接口,方便开发者基于模型接口进行编程,同时也提供了离线模型的可视化功能。
1.3 MindStudio安装
MindStudio的安装包可以通过官方网站获取,链接如下:
安装方法可以参考用户指导手册中的安装部分,链接如下:
二、MindStudio工程创建
1.1 新建模板工程
首次打开软件会指示是否导入配置,下图所示,选择不导入配置,点击OK进入MindStudio欢迎界面。
欢迎界面如下图所示,点击Customize标签,可以修改相关用户设置,如将主题修改为IntelliJ Light。
在MindStudio欢迎界面点击Projects标签,如下图所示,点击New Project进入创建工程流程。
如下图所示,在工程创建选择Ascend App,点击Change。
进入远程CANN配置界面,如下图所示,点击+号。
进入下图SSH配置界面,点击+号创建新的SSH配置,输入SSH信息后点击OK返回远程CANN配置界面。
如下图所示,点击文件夹图标,选择远程CANN安装路径,点击OK和Finish。