Jetson SDK 生产落地案例
五、生产落地案例
案例一:Orin 系列盒子做多路视频结构化
背景:园区要做人车结构化,多路高清摄像头接入,要求本地推理、低延迟上报。选型上对比过 RKNN 与 Jetson,最终因算子覆盖与模型复杂度选了 Jetson。
怎么做:PC 上训练与导出 ONNX,板端用 TensorRT 构建 FP16 engine;视频侧走 DeepStream,硬件解码,推理与跟踪串在一条流水线里。
关键配置:显存预留按峰值路数计算,批大小按路数与帧率折中;开启 jetson_clocks 前先确认散热方案能压住;用 nvpmodel 选定与供电匹配的功耗模式。
效果:单机吞吐取决于模型大小、分辨率与路数,需以实测为准;端到端延迟在有跟踪的情况下会累计,需要单独度量。
踩的坑与解决:
- engine 拷到另一块板子上跑不了:engine 与硬件架构和 TensorRT 版本绑定,改为在每块板子上首次启动时构建并缓存。
- 跑一段时间帧率下降:机箱风道差导致过热降频。加散热片与风扇、并把
jetson_clocks的收益与温度做权衡后,问题解决。 - 多路时显存吃紧:批大小与分辨率叠加超了显存。降低单路分辨率并调整批大小后稳定。
案例二:工业现场用容器做多项目隔离
背景:一台 Jetson 上要同时跑两个不同客户的算法,Python 依赖互相冲突,直接装在系统里必然打架。
怎么做:用 l4t-base 或 jetson-containers 提供的镜像,各自封装依赖;推理所需模型与 engine 通过挂载目录注入;相机与设备节点按需映射进容器。
关键配置:容器启动必须带 --runtime nvidia,否则容器内看不到 CUDA;网络用 host 模式减少 RTSP 的额外开销;容器内不做 jetson_clocks,时钟管理放在宿主机统一做。
踩的坑:容器内访问硬件编解码器需要把设备节点映射进去,遗漏时会静默回退到软件解码,CPU 直接飙满——这类问题要用 top 和 GStreamer 的调试输出一起看,不能只看应用日志。

