sophgo / sophon-stream

Other
68 stars 10 forks source link

bytetrack_m_mot17.pth.tar模型转换为bmodel #41

Closed lilihongjava closed 1 month ago

lilihongjava commented 1 month ago

bytetrack官方模型bytetrack_m_mot17.pth.tar转换为bmodel model_transform \ --model_name bytetrack-m \ --model_def ../bytetrack.onnx \ --input_shapes [[1,3,640,640]] \ --mean 0.0,0.0,0.0 \ --scale 0.0039216,0.0039216,0.0039216 \ --keep_aspect_ratio \ --pixel_format rgb \ --mlir bytetrack.mlir input_shapes 、mean 、scale 要填写什么,有没文档说明,bytetrack_m、bytetrack_L不同模型,参数是不是不一样,要怎么改model_transform 命令

lilihongjava commented 1 month ago

我的bytetrack_m.onnx 导出命令是--output-name bytetrack_m.onnx -f exps/example/mot/yolox_m_mix_det.py -c pretrained/bytetrack_m_mot17.pth.tar,yolox_m_mix_det.py 代码截图 image 那-input_shapes是不是为 [[1,3,800,1440]],其他参数要改吗

Yi-sir commented 1 month ago

转模型的参数要求与预处理过程对齐,具体参数的含义和配置方式可以参考文档:https://doc.sophgo.com/sdk-docs/v24.04.01/docs_latest_release/docs/tpu-mlir/quick_start/html/index.html

lilihongjava commented 1 month ago

https://doc.sophgo.com/sdk-docs/v24.04.01/docs_latest_release/docs/tpu-mlir/quick_start/html/03_onnx.html文档昨天看了 model_transform \ --model_name bytetrack_m \ --model_def ../bytetrack_m.onnx \ --input_shapes [[1,3,640,640]] \ --mean 0.0,0.0,0.0 \ --scale 0.0039216,0.0039216,0.0039216 \ --keep_aspect_ratio \ --pixel_format rgb \ --mlir bytetrack_m.mlir

我目标追踪bytetrack_m 模型用的是目标检测yolox_m,我目前认为是不是只要改 --input_shapes [[1,3,640,640]] 为 [[1,3,800,1440]],其他不用改了,能否帮忙确认下。

Yi-sir commented 1 month ago

我不确认这个模型预处理是怎么做的,不过input shape肯定是要和实际导出的onnx对齐的

lilihongjava commented 1 month ago

有没什么方法可以确认我这个shape对不对,

Yi-sir commented 1 month ago

可以用 https://netron.app/ 看一下onnx的输入shape

lilihongjava commented 1 month ago

那yolox_bytetrack_osd_encode示例里面用的是yolox_bytetrack_s_fp32_4b.bmodel和yolox_s_fp32.bmodel模型呢,怎么看里面的input_shapes 以及mean 、scale 的值,能否把yolox_bytetrack_osd_encode示例里面这2个模型的model_transform命令发下看看,GitHub没找到