本地模式
本地模式适用于传感器直接连接开发机的场景。图像采集、数据处理和推理均在开发机上完成,可以通过本地相机编号或传感器序列号创建 Sensor 实例。
准备工作
- 将传感器连接到开发机,并确认系统能够识别设备。
- 需要本地推理和内置可视化时,推荐安装
xensesdk[full]。 - 只验证采集链路、不需要推理时,可以在创建传感器时设置
disable_infer=True。 - 使用 GPU 推理前,请确认 NVIDIA 驱动、CUDA Toolkit 和 cuDNN 已正确安装。
查找传感器
使用 Sensor.scanSerialNumber() 查看当前可用传感器及其本地相机编号:
from xensesdk import Sensor
serial_map = Sensor.scanSerialNumber()
print(serial_map)
返回结果是传感器序列号到相机编号的映射。扫描结果为空时,请检查传感器供电、连接、设备权限和配置文件。
创建本地传感器
可以使用相机编号连接:
sensor = Sensor.create(cam_id=0)
也可以使用序列号连接,避免相机编号在设备重新插拔后发生变化:
sensor = Sensor.create("OP000064")
读取数据
以下示例从同一帧中读取校正图和深度图:
from time import sleep
from xensesdk import Sensor
sensor = Sensor.create(cam_id=0)
try:
while True:
rectify, depth = sensor.selectSensorInfo(
Sensor.OutputType.Rectify,
Sensor.OutputType.Depth,
)
print("rectify:", rectify.shape, "depth:", depth.shape)
sleep(0.02)
except KeyboardInterrupt:
pass
finally:
sensor.release()
在同一次 selectSensorInfo() 调用中请求多个输出,可以保证数据来自同一帧。程序退出时应始终调用 sensor.release() 释放摄像头和推理资源;不要在多个线程中重复创建同一个传感器实例。
本地模式完整示例查看本地传感器连接、多模态数据读取、力曲线和可视化界面的完整代码。
打开 GitHub 示例 ↗