Paddle-Lite yolov3_mobilenet_v3.pdparams 转换为nb总是不成功

yvgpqqbh  于 2021-12-01  发布在  Java
关注(0)|答案(2)|浏览(431)

我将https://paddlemodels.bj.bcebos.com/object_detection/yolov3_mobilenet_v3.pdparams 转换为nb总是不成功,不知道为什么。尝试了好多办法都不行。
我的用的为paddle-lite 2.7.1 版本。
方法一:
第一步:使用 PaddleDetection-release-2.0-beta 的 tools/export_model.py 将 pdparams 转换为推理模型生成 infer_cfg.yml model**params 三个文件
具体命令 python tools/export_model.py -c configs/mobile/yolov3_mobilenet_v3.yml.yml -o weights=./models/yolov3_mobilenet_v3.pdparams --exclude_nms
第二步:使用 paddle_lite_opt 将上面的推理模型 转换为nb文件
具体命令 paddle_lite_opt --model_dir=./yolov3_mobilenet_v3 --valid_targets=arm --optimize_out_type=naive_buffer --optimize_out=yolov3_mobilenet_v3
结果失败,显示
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0201 13:59:41.050545 29587 cxx_api.cc:262] Load model from file.
F0201 13:59:41.057035 29587 model_parser.cc:67] Check failed: version == 0U (49 vs. 0) Only version 0 is supported

Check failure stack trace:

已放弃 (核心已转储)

方法二:
第一步:同上第一步
第二步:使用 PaddleDetection-release-2.0-beta 的 tools/export_model.py 转换为nb文件
具体命令 python tools/export_model.py -c configs/mobile/yolov3_mobilenet_v3.yml -o weights=./models/yolov3_mobilenet_v3.pdparams --exclude_nms
转换过程没问题,生成了yolov3_mobilenet_v3.nb文件
但在推理时报 Segmentation fault 错误

方法三:
第一步:同上第一步
第二步:使用 PaddleX-1.3.0的 /deploy/lite/export_lite.py 转换为nb文件
具体命令 python export_lite.py --model_dir /media/hq/DATA/paddle/PaddleDetection-release-2.0-beta/output/yolov3_mobilenet_v3 --save_file ./yolov3_mobilenet_v3 --place arm
转换过程没问题,生成了yolov3_mobilenet_v3.nb文件
但在推理时报 Segmentation fault 错误

xxe27gdn

xxe27gdn1#

你好,ylov3最近有修复,请用我们的version2.8的版本再试一下

zy1mlcev

zy1mlcev2#

第二步中。 paddle_lite_opt --model_dir=./yolov3_mobilenet_v3 --valid_targets=arm --optimize_out_type=naive_buffer --optimize_out=yolov3_mobilenet_v3 命令有误,应该使用--model_file --param_file。建议查看文https://paddle-lite.readthedocs.io/zh/latest/user_guides/opt/opt_python.html

相关问题