mmyolo icon indicating copy to clipboard operation
mmyolo copied to clipboard

YOLOx_s转换onnx后无法正常推理结果

Open 6sz opened this issue 6 months ago • 0 comments

Prerequisite

🐞 Describe the bug

按照 中文说明文档 15分钟上手目标检测 中的 EasyDeploy 模型部署,使用如下命令 python projects/easydeploy/tools/export_onnx.py
configs/yolox/yolox_s_fast_8xb8-300e_gx-dec-data20240712.py
work_dirs/yolox/yolox_s_fast_8xb8-300e/best_coco_bbox_mAP_50_epoch_300.pth
--work-dir ./work_dirs/yolox/yolox_s_fast_8xb8-300e/easy
--img-size 640 640
--batch 1
--device cpu
--opset 11
--backend ONNXRUNTIME
--pre-topk 100
--keep-topk 10
--iou-threshold 0.3
--score-threshold 0.2
--simplify 输出结果显示转换成功 Export ONNX with bbox decoder and NMS ... Loads checkpoint by local backend from path: work_dirs/yolox/yolox_s_fast_8xb8-300e_gx-dec-data20240712_20240715_143215/best_coco_bbox_mAP_50_epoch_300.pth ONNX export success, save into ./work_dirs/yolox/yolox_s_fast_8xb8-300e/easy/best_coco_bbox_mAP_50_epoch_300.onnx 使用推理代码 python projects/easydeploy/tools/image-demo0509.py
./demo/artifical.png
./configs/yolox/yolox_s_fast_8xb8-300e_gx-dec-data20240712.py
./work_dirs/yolox/yolox_s_fast_8xb8-300e/easy/best_coco_bbox_mAP_50_epoch_300.onnx
--device cpu 查看输出图片发现没有检测框,打印result发现为确实没有检测结果,检测到的数量为0 [ ] 0/1, elapsed: 0s, ETA:torch.Size([1, 3, 640, 640]) (tensor([[0]]), tensor([[[0., 0., 0., 0.]]]), tensor([[0.]]), tensor([[-1]], dtype=torch.int32))

image

Environment

sys.platform: linux Python: 3.9.18 (main, Sep 11 2023, 13:41:44) [GCC 11.2.0] CUDA available: True numpy_random_seed: 2147483648 GPU 0: NVIDIA GeForce RTX 4090 CUDA_HOME: /usr/local/cuda-11.7 NVCC: Cuda compilation tools, release 11.7, V11.7.64 GCC: gcc (Ubuntu 7.5.0-6ubuntu2) 7.5.0 PyTorch: 1.13.0 PyTorch compiling details: PyTorch built with:

  • GCC 9.3
  • C++ Version: 201402
  • Intel(R) oneAPI Math Kernel Library Version 2023.1-Product Build 20230303 for Intel(R) 64 architecture applications
  • Intel(R) MKL-DNN v2.6.0 (Git Hash 52b5f107dd9cf10910aaa19cb47f3abf9b349815)
  • OpenMP 201511 (a.k.a. OpenMP 4.5)
  • LAPACK is enabled (usually provided by MKL)
  • NNPACK is enabled
  • CPU capability usage: AVX2
  • CUDA Runtime 11.7
  • NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_61,code=sm_61;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80;-gencode;arch=compute_86,code=sm_86;-gencode;arch=compute_37,code=compute_37
  • CuDNN 8.5
  • Magma 2.6.1
  • Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=11.7, CUDNN_VERSION=8.5.0, CXX_COMPILER=/opt/rh/devtoolset-9/root/usr/bin/c++, CXX_FLAGS= -fabi-version=11 -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_KINETO -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -DEDGE_PROFILER_USE_KINETO -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Werror=non-virtual-dtor -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wunused-local-typedefs -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Werror=cast-function-type -Wno-stringop-overflow, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VERSION=1.13.0, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON, USE_ROCM=OFF,

TorchVision: 0.14.0 OpenCV: 4.7.0 MMEngine: 0.7.3 MMCV: 2.0.1 MMDetection: 3.3.0 MMYOLO: 0.6.0+

Additional information

训练使用的是自己的数据集,使用原版配置文件,并未更改其他,原有的pth可以正常识别图片

6sz avatar Aug 21 '24 01:08 6sz