相机提供 policy 所看到的图像 observation。每个后端——OpenCV、Intel RealSense、Reachy 2——都
实现了 Camera 接口,因此更换硬件不会改变读取帧的代码。
有关选择与配置相机的说明,请参阅 相机指南、 以及针对核心集合之外设备的第三方相机与传感器。
( config: CameraConfig )
相机实现的基类。
为不同后端的相机操作定义标准接口。 子类必须实现所有抽象方法。
管理相机的基本属性(FPS、分辨率)和核心操作:
( warmup: bool = True )
建立与相机的连接。
断开与相机的连接并释放资源。
同步捕获并返回来自相机的单帧。
这是一个阻塞调用,会等待硬件及其 SDK。
( timeout_ms: float = Ellipsis ) → np.ndarray
返回最新的新帧。
此方法获取后台线程捕获的最新帧。 如果缓冲区中已有新帧可用(自上次调用以来捕获的), 它会立即返回。
仅当缓冲区为空或最新帧
已被上一次 async_read 调用消耗时,它才会阻塞至多 timeout_ms。
本质上,此方法返回最新的未消耗帧,必要时会等待 新帧在指定超时时间内到达。
用法:
检测连接到系统的可用相机。
( fps: int | None = Nonewidth: int | None = Noneheight: int | None = None )