| |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| from lerobot.types import RobotAction, RobotObservation |
|
|
| from .converters import ( |
| observation_to_transition, |
| robot_action_observation_to_transition, |
| transition_to_observation, |
| transition_to_robot_action, |
| ) |
| from .pipeline import IdentityProcessorStep, RobotProcessorPipeline |
|
|
|
|
| def make_default_teleop_action_processor() -> RobotProcessorPipeline[ |
| tuple[RobotAction, RobotObservation], RobotAction |
| ]: |
| teleop_action_processor = RobotProcessorPipeline[tuple[RobotAction, RobotObservation], RobotAction]( |
| steps=[IdentityProcessorStep()], |
| to_transition=robot_action_observation_to_transition, |
| to_output=transition_to_robot_action, |
| ) |
| return teleop_action_processor |
|
|
|
|
| def make_default_robot_action_processor() -> RobotProcessorPipeline[ |
| tuple[RobotAction, RobotObservation], RobotAction |
| ]: |
| robot_action_processor = RobotProcessorPipeline[tuple[RobotAction, RobotObservation], RobotAction]( |
| steps=[IdentityProcessorStep()], |
| to_transition=robot_action_observation_to_transition, |
| to_output=transition_to_robot_action, |
| ) |
| return robot_action_processor |
|
|
|
|
| def make_default_robot_observation_processor() -> RobotProcessorPipeline[RobotObservation, RobotObservation]: |
| robot_observation_processor = RobotProcessorPipeline[RobotObservation, RobotObservation]( |
| steps=[IdentityProcessorStep()], |
| to_transition=observation_to_transition, |
| to_output=transition_to_observation, |
| ) |
| return robot_observation_processor |
|
|
|
|
| def make_default_processors(): |
| teleop_action_processor = make_default_teleop_action_processor() |
| robot_action_processor = make_default_robot_action_processor() |
| robot_observation_processor = make_default_robot_observation_processor() |
| return (teleop_action_processor, robot_action_processor, robot_observation_processor) |
|
|