资讯动态

30分钟打通 Jetson Orin 的 RealSense:设备识别与深度流一次排通

发布时间:2026/10/23 4:33:34 来源:尧图企业网站定制
30分钟打通 Jetson Orin 的 RealSense设备识别与深度流一次排通【免费下载链接】librealsenseRealSense SDK项目地址: https://gitcode.com/GitHub_Trending/li/librealsense把 Intel RealSense 插到 Jetson Orin 的 USB3 口上最常见的翻车现场是这样的lsusb里明明能看到8086:0b07但realsense-viewer要么提示找不到设备要么画面只出颜色流、深度流一片空白。先别急着重新刷机也别怀疑相机是坏的——多数情况只是问题出错了层级USB 枚举、内核驱动、SDK 取流三层的症状长得不一样。这篇带你先定位、再动手把 RealSense 的设备识别和深度流在 Jetson Orin 上完整跑通。先确认相机被识别到哪一层lsusb、lsmod、realsense-viewer 三连查排查的第一原则是先看现象再下手别上来就编译。三个命令每层各一个从上往下走第 1 层USB 枚举lsusb现象列表里没有Bus XXX Device XXX: ID 8086:0b07D400 系列判断相机根本没被 USB 子系统看到下一步换原装 USB3 线、换主板后置 USB3.0 口、避开 USB hub供电不足的相机在枚举阶段就会消失第 2 层内核驱动lsmod | grep uvcvideo ls /dev/video*现象 Auvcvideo没加载或/dev/video*节点不存在判断L4T 的定制内核里 UVC 驱动没起来现象 B模块在、节点也在但取流时深度格式打不开判断L4T 自带的uvcvideo没有包含 RealSense 需要的 camera-formats 支持——这就是 Jetson 上有 RGB 没深度的头号嫌疑下一步这两类现象分别对应后文两条路线先记下你停在哪一层第 3 层SDK 取流realsense-viewer现象viewer 能打开、能枚举到相机但深度流不出判断SDK 与驱动之间的协议栈没对上原生后端缺补丁或 RSUSB 后端没启用下一步按下一条的选型结论决定走哪条路线顺利的话最终会看到 RGB 与深度画面并排输出、/dev/video*节点齐全长这样两条路线怎么判断自己该走哪条librealsense 在 Linux 上和相机打交道有两条互斥的路径cmake 阶段一次选死RSUSB 后端免内核修改UVC/HID 协议栈直接编进 SDK走用户态标准 USB 驱动。适合快速验证——这台相机在我手上到底能不能用demo 演示一下几十分钟内能出结果。代价是不支持多相机、性能与功能有折损官方定位是给原生安装做补充。原生内核路线打 L4T 补丁把 camera-formats、metadata 等补丁应用到内核模块后编译加载。适合生产环境长期运行多相机同步、逐帧 metadata这类完整能力只有它给得了。代价是流程长约 30 分钟、需要约 2.5GB 磁盘余量。一句话决策条件只是快速验证选 RSUSB要上生产、要多相机时间同步只能走原生内核路线这两条路别走反——很多人卡住的根源就是先用 RSUSB 编译了一套 SDK然后抱怨多相机不同步。路线 A 实操RSUSB 后端 librealsense 编译命令一步都不多前置依赖装好后直接按顺序敲git clone https://gitcode.com/GitHub_Trending/li/librealsense cd librealsense sudo apt-get install git cmake libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev -y mkdir build cd build cmake .. -DFORCE_RSUSB_BACKENDtrue -DBUILD_WITH_CUDAtrue -DCMAKE_BUILD_TYPErelease make -j$(($(nproc)-1)) sudo make install两个参数值得说一句为什么-DFORCE_RSUSB_BACKENDtrue启用用户态 UVC/HID 协议栈这正是免内核补丁的来源。仓库里还有一份封装好全部步骤的脚本 libuvc_installation.sh它额外做了 swap 配置和 udev 规则安装磁盘紧张时可以改用脚本。-DBUILD_WITH_CUDAtrueJetson 上 CUDA 是现成的打开后 decimation、temporal 等后处理滤镜走 GPU深度流负载直接下降。装完验证realsense-viewer能出双画面路线 A 到此结束如果深度流依旧空白说明问题在第 2 层转路线 B。路线 B 实操L4T 内核补丁patch 脚本到底替你干了什么动手前三个检查df -h至少留 2.5GB 空闲板子切到 MaxN 电源模式sudo nvpmodel -m 0拔掉所有已接的 RealSense 相机。然后从仓库根目录执行./scripts/patch-realsense-ubuntu-L4T.sh这个脚本patch-realsense-ubuntu-L4T.sh全程约 30 分钟内部依次做了四件事理解它有助于你出问题时知道该盯哪一步按/etc/nv_tegra_release识别你的 L4T 版本Orin 上即 35.x/36.x/38.x从 nv-tegra 同步对应的内核源码树到./Tegra沙箱目录——注意它改的是沙箱里的模块源码不是替换整个内核镜像打 RealSense 专属补丁realsense-camera-formats深度相关流格式支持、realsense-metadata逐帧元数据JetPack 6 以上还会补 HID sensor 配置只编译被改动的模块uvcvideo、v4l2-core、以及hid/iio下加速度计陀螺仪相关模块depmod后卸载旧模块、加载新模块让补丁即刻生效。脚本跑完后用原生后端再编译一次 SDK——注意FORCE_RSUSB_BACKEND这次要显式关掉./scripts/setup_udev_rules.sh mkdir build cd build cmake .. -DFORCE_RSUSB_BACKENDfalse -DBUILD_WITH_CUDAtrue -DCMAKE_BUILD_TYPErelease make -j$(($(nproc)-1)) sudo make install realsense-viewer打补丁过程的终端输出大致长这样编译模块阶段viewer 里看到颜色与深度同步输出、且 metadata 信息可用就是原生路线到位了跑通之后的三个调节旋钮想更快、想更稳、想多相机想更快确认BUILD_WITH_CUDA已开把深度流从 848x48090 降到 1280x72030 或 848x48030CPU 占用会明显下来对精度不敏感的节点加decimation滤镜。想更稳sudo nvpmodel -m 0进 MaxN避免 SoC 降频导致的帧率抖动相机直插 USB3.0 口不经过 hub长接线场景检查供电。想多相机前提是你走的是原生路线RSUSB 不支持多相机。多机时间对齐建议开启硬件同步触发hardware trigger让多台相机由硬件脉冲统一打帧再配合 SDK 的 sync 机制消费。参考实现见 examples/multicam/。高频卡点速查对着症状找动作现象处置动作lsusb看不到 8086:0b07换线、换后置 USB3.0 口、确认供电排除 hub设备被枚举但 SDK 报无权限执行 setup_udev_rules.sh 后重新插拔只有颜色流、深度流空白原生后端大概率没打 camera-formats 补丁走路线 B或临时换 RSUSB 后端先验证相机本身深度流帧率随机掉、画面卡顿sudo nvpmodel -m 0检查是否被降频CPU 是否满载多相机时间戳对不齐换原生内核路线 硬件同步触发勿用 RSUSBviewer 打不开但其他进程能读相机查/dev/video*占用结束抢占相机的进程再启动收尾一句话选型和仓库里的入口路径原型验证走 RSUSB生产环境与多相机走 L4T 内核补丁——选对路线后面的 30 分钟才不会白花。需要继续深入时直接看仓库内这几处官方 Jetson 安装指南installation_jetson.md内核补丁脚本patch-realsense-ubuntu-L4T.shudev 规则脚本setup_udev_rules.sh多相机同步示例examples/multicam/最小取流示例接完先跑通它examples/hello-realsense/【免费下载链接】librealsenseRealSense SDK项目地址: https://gitcode.com/GitHub_Trending/li/librealsense创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑