643 字
3 分钟
1,171 次阅读
Jetson Orin TensorRT 量化推理 SAM3 示例教程
本机配置
- Jetson Orin NX 16G
- Ubuntu 22.04
- Jetpack 6.2.1
基本要求:请确保你的 JetPack > 6,SWAP > 20G (很重要,不然会 OOM)
调整最佳性能模式
接下来的操作都需要较高的性能,所以我们通过 jtop 来调整释放最高性能
sudo jtop按下 6 键或直接点击 CTRL 进入控制面板

将风扇配置调为 cool,Jetson Clocks 开启,能耗模式调整为 MAXN

输入以下命令暂时关闭桌面节省内存
sudo init 3 # 3 改为 5 或重启恢复桌面构建并运行容器环境
首先先拉取我的项目,然后构建基于 pytorch 的深度学习环境
git clone -b modelscope https://github.com/Shattered217/SAM3-TensorRT.gitcd SAM3-TensorRT/sudo docker build -t sam3-trt-aarch64 -f docker/Dockerfile.aarch64 .通过 modelscope 拉取 SAM3 的模型(由于 meta 对 CN 用户不友好,所以如果要去 huggingface 申请仓库访问权限务必使用美国身份,最好主页也跟着改一下,不然大概率被拒
sudo apt-get install -y git-lfs # git 拉取大文件必备git clone https://www.modelscope.cn/facebook/sam3.git运行容器
sudo docker run -it --rm \ --network=host \ --gpus all \ --ipc=host \ --ulimit memlock=-1 \ --ulimit stack=67108864 \ --runtime=nvidia \ --env HF_TOKEN \ -v "$PWD":/workspace \ -w /workspace \ sam3-trt-aarch64 bash导出 ONNX
python3 python/onnxexport.py注意在导出的脚本中预定义了 prompt 为 “dog”,后期如需修改则要重新导出
trt 量化编译
/usr/src/tensorrt/bin/trtexec --onnx=onnx_weights/sam3_static.onnx --saveEngine=sam3_fp16.plan --fp16 --verbose
出现 PASSED 即测试通过,如果 FAILED 也没事,一般是内存不够导致测试失败了,只要 .plan 生成成功即可

编译并运行测试程序
编译
mkdir cpp/build && cd cpp/buildcmake ..make由于我们预训练的提示词是 狗 ,所以我们需要准备狗的测试图片,第一个参数的测试集文件夹,第二参数是模型路径,导出图片位于 ./results
root@jetson-orin-nx:/workspace/cpp/build# ./sam3_pcs_app test/ ../../sam3_fp16.plan效果展示




特别感谢以下项目
Jetson Orin TensorRT 量化推理 SAM3 示例教程
https://nvcc-v.com/2026/01/10/jetson-orin-tensorrt-sam3-tutorial/ KEEP EXPLORING