【RT-DETR实战】121、地平线征程平台部署探索:从模型转换到性能调优的踩坑实录
深夜的编译错误上周三凌晨两点,我在实验室盯着终端里第37次编译失败日志。地平线X3开发板的串口输出一行刺眼的错误:“HRT_RUNTIME_ERROR: Tensor shape mismatch in layer conv_45”。问题出在RT-DETR的neck层输出通道数上——官方示例代码里永远只会用YOLO做演示,等到真正部署自定义改进的检测模型时,那些没写在文档里的限制才一个个跳出来。今天这篇笔记,就记录这段从PyTorch模型到地平线.bin文件的血泪史。模型转换的第一道坎:算子支持列表地平线的异构计算架构对算子支持有严格限制。RT-DETR的Transformer模块里那些reshape、transpose操作,在RDK Ultra开发套件里看着都能跑,一到征程5芯片上就报错。关键要查的不是公开的算子支持列表,而是对应芯片型号的《算子兼容性白皮书》内部版本。比如动态shape的slice操作在征程5上需要拆成两个静态操作,这个技巧在官方教程里永远不会提。# 错误示例:直接导出带动态slice的onnxdefforward(self