PaddleX
PaddleX copied to clipboard
paddlex导出yolo模型c#部署时,报错,有时结果也不对
模型文件为paddle训练导出的模型,目前python加载模型预测结果对的
目标检测场景,使用paddlepaddle和paddlex 2.0.0rc4和paddlex最新预测版本
按照官网部署,已经生成c++的dll,将dll读入测试c#程序,在预测时报错,将训练的图片(bmp格式 0.bmp)改为随意一张jpg格式(1.jpg)后,(测试图片均在上传的文件夹里),预测函数不报错,但是结果只是显示一类别框, 为了验证是否模型有问题,使用https://github.com/PaddlePaddle/PaddleX/blob/develop/deploy/cpp/docs/demo/model_infer.md 提供的yolov3模型和测试图片,不报错,但是结果不对,都只是显示一个结果框(官网结果是有几类预测框的)
相关测试程序已上传 链接: https://pan.baidu.com/s/156AF_jKjdaF_lsDp2BSM6A 提取码: w4ci
是cpu版的
为了定位问题所在,可以先尝试以下方法:
- 不使用c#部署,先使用c++部署。参考c++部署文档示例测试你自己的模型和图片是否符合python预测结果
- 在确认 步骤1无误后,再来定位c#部署的问题。c++部署时读取图片是采用cv::imread的方式得到bgr格式的cv::mat,然后传给模型。c#部署时是将Bitmap转换成uchar*,之后再将该指针赋给cv::mat。 需要注意c#转换时是否与原本c++部署时接受的图片数据一致。