PaddleUtils
PaddleUtils copied to clipboard
PPYOLOE+ 转onnx之后 两个输出中的类别output的尺寸并不固定
按照您给的方法指定输入输出尺寸,其中:只有输入尺寸和box的output尺寸被指定了,cls的output尺寸依旧没有指定
我直接用paddle2onnx转化后,指定了输入的尺寸,怎么也是不固定呢?
python tools/export_model.py -c configs/ppyolo/ppyolo_tiny_650e_coco.yml -o weights=output/ppyolo_tiny_650e_coco/model_final.pdparams TestReader.inputs_def.image_shape=[3,320,320]
paddle2onnx --model_dir output_inference/ppyolo_tiny_650e_coco --model_filename model.pdmodel --params_filename model.pdiparams --save_file models/ppyolo_tiny.onnx --opset_version 11 --enable_onnx_checker True --input_shape_dict "{'image':[3,320,320]}"
用opencv加载后会出现错误,不知道是不是输入固定的问题: cv2.error: OpenCV(4.6.0) D:\a\opencv-python\opencv-python\opencv\modules\dnn\src\onnx\onnx_importer.cpp:1040: error: (-2:Unspecified error) in function 'cv::dnn::dnn4_v20220524::ONNXImporter::handleNode'
Node [[email protected]]:(onnx_node!p2o.Clip.0) parse error: OpenCV(4.6.0) D:\a\opencv-python\opencv-python\opencv\modules\dnn\src\onnx\onnx_importer.cpp:1934: error: (-2:Unspecified error) in function 'void __cdecl cv::dnn::dnn4_v20220524::ONNXImporter::parseClip(class cv::dnn::dnn4_v20220524::LayerParams &,const class opencv_onnx::NodeProto &)'
(expected: 'node_proto.input_size() == 1'), where 'node_proto.input_size()' is 3 must be equal to '1' is 1
固定Shape,使用如下方式, 转换过程中指定的input_shape_dict已经被废弃
收到,谢谢。转化后,输入已经固定了,但是onnx.check_model 过不了了😅