Add normalization processor and related components

- Introduced `NormalizationProcessor` to handle both observation normalization and action unnormalization.
- Added `ObservationNormalizer` and `ActionUnnormalizer` classes for specific normalization tasks.
- Updated `__init__.py` to include the new `NormalizationProcessor` in the module exports.
- Enhanced `ObservationProcessor` with registration in the `ProcessorStepRegistry` for better modularity.
- Created `RenameProcessor` for renaming keys in observations, improving flexibility in data processing.
This commit is contained in:
Adil Zouitine
2025-07-03 18:35:14 +02:00
parent ac742c9f0d
commit 8774aec304
4 changed files with 457 additions and 1 deletions

View File

@@ -23,7 +23,7 @@ import numpy as np
import torch
from torch import Tensor
from lerobot.processor.pipeline import EnvTransition, TransitionIndex
from lerobot.processor.pipeline import EnvTransition, ProcessorStepRegistry, TransitionIndex
@dataclass
@@ -180,6 +180,7 @@ class StateProcessor:
@dataclass
@ProcessorStepRegistry.register(name="observation_processor")
class ObservationProcessor:
"""Complete observation processor that combines image and state processing.