Skip to content

Commit f561a25

Browse files
committed
feat(teleop): added zed support
1 parent 810e10a commit f561a25

2 files changed

Lines changed: 38 additions & 0 deletions

File tree

‎examples/teleop/franka.py‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,9 @@
4141
# "bird_eye": "243522070364",
4242
# }
4343
CAMERA_DICT = None
44+
ZED_CAMERA_DICT = {
45+
"zed": "19928076",
46+
}
4447
MQ3_ADDR = "10.42.0.1"
4548

4649
# DIGIT_DICT = {
@@ -93,6 +96,23 @@ def get_env():
9396
for name, identifier in CAMERA_DICT.items()
9497
},
9598
)
99+
if ZED_CAMERA_DICT is not None:
100+
camera_cfgs["zed"] = HardwareCameraCreatorConfig(
101+
camera_type_id="zed",
102+
camera_cfgs={
103+
name: BaseCameraConfig(
104+
identifier=identifier,
105+
resolution_width=1280,
106+
resolution_height=720,
107+
frame_rate=30,
108+
)
109+
for name, identifier in ZED_CAMERA_DICT.items()
110+
},
111+
kwargs={
112+
"enable_depth": False,
113+
"enable_imu": False,
114+
},
115+
)
96116
if DIGIT_DICT is not None:
97117
camera_cfgs["digit"] = HardwareCameraCreatorConfig(
98118
camera_type_id="digit",

‎extensions/rcs_fr3/src/rcs_fr3/creators.py‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,23 @@ def _create_realsense_camera(cfg: HardwareCameraCreatorConfig) -> HardwareCamera
7878
)
7979

8080

81+
def _create_zed_camera(cfg: HardwareCameraCreatorConfig) -> HardwareCamera:
82+
try:
83+
from rcs.camera.hw import CalibrationStrategy
84+
from rcs_zed.camera import ZEDCameraSet
85+
except ImportError as e:
86+
msg = "ZED camera support requires the `rcs_zed` extension to be installed."
87+
raise ImportError(msg) from e
88+
89+
calibration_strategy = {
90+
name: typing.cast(CalibrationStrategy, DummyCalibrationStrategy()) for name in cfg.camera_cfgs
91+
}
92+
return typing.cast(
93+
HardwareCamera,
94+
ZEDCameraSet(cameras=cfg.camera_cfgs, calibration_strategy=calibration_strategy, **cfg.kwargs),
95+
)
96+
97+
8198
def _create_digit_camera(cfg: HardwareCameraCreatorConfig) -> HardwareCamera:
8299
try:
83100
from rcs.camera.digit_cam import DigitCam
@@ -90,6 +107,7 @@ def _create_digit_camera(cfg: HardwareCameraCreatorConfig) -> HardwareCamera:
90107

91108
HARDWARE_CAMERA_CREATORS: dict[str, typing.Callable[[HardwareCameraCreatorConfig], HardwareCamera]] = {
92109
"realsense": _create_realsense_camera,
110+
"zed": _create_zed_camera,
93111
"digit": _create_digit_camera,
94112
}
95113

0 commit comments

Comments
 (0)