一.按照官方文档进行模型转换出错:
起初我按照官方文档给出的linux命令行命令,比葫芦画瓢用了一个windows命令行命令:
python converter.py --model_dir cls_best_model --save_dir C:/Users/ldy/Desktop/try/a --fixed_input_shape [500,500]
结果报错:说对文件夹的操作没有权限,但我可是在以管理员身份打开的cmd呀,想想感觉微软可坑了,这大概就是为什么诸多程序员热衷于linux和mac了吧…
二.尝试解决问题
后续我又尝试了换成文件的路径而不是文件夹的路径、在文件路径后面加"/"等一系列操作,要么显示XX/paddle2onnx.onnx不是一个目录,要么显示没有”XX/“这个目录…
三.解决办法
1.环境;windows10系统,Anaconda2020.2
2.配置文件:paddlex训练出的模型源文件,里面包含__model__、params、.yml三个文件.
看起来好像代码里面和我替换的绝对路径效果是一样的,其实不是,关键还有我注释掉的这个地方!!!也就是说,命令行权限限制我输入的必须是一个file而不是dir才能正常进行操作,否则会peimission denied!!但是官方给出的转换模型的源文件converter.py里面的save_dir又肯定是dir类型呀,所以冲突了!什么?你问我上面为什么执行操作不直接用文件路径,因为它会报这个peimission denied的错!! 什么???你问我是不是我电脑的问题?no!no!no!我在AIstudio上也是这个报错(不过aistudio上的linux终端貌似不可能给最高权限的吧= =?)
最后出现如下提示就意味着成功啦~
此时查看文件夹发现,原save文件夹下除了中间产物paddle2onnx\onnx模型,还额外生成了:.bin、.xml、.mapping三个文件,这就是计算棒可以加载的IR格式模型文件了~
分割线
—————————————————————————
经过和paddleX工程师沟通,并且经过自己的尝试,最新的paddleX+openvino2021版本部署可以成功使用,目前支持多个分类预训练模型和yolov3目标检测模型的IR格式模型部署,博主已经成功转换并部署在Windows笔记本和树莓派上了!