| feat(model_utils): add ONNX export and loss compare nodes
Add two utility nodes for LeRobot ACT policy evaluation:
1. ExportOnnxNode - Convert PyTorch policies to ONNX format
- Dynamic batch size support
- Dictionary input wrapper for observation format
- ONNX simplification using onnx-simplifier
- Configurable via ROS2 parameters
2. LossCompareNode - Compare model outputs and compute L1 loss
- generate_target mode: Generate target outputs from batch data
- compute_loss mode: Compute L1 loss between predictions and targets
- Batch processing with progress tracking
- Auto policy path detection
Files added:
- export_onnx_node.py: ONNX export node
- loss_compare_node.py: Loss comparison node
- setup.py: Package configuration
- package.xml: ROS2 package manifest
Usage:
ros2 run model_utils export_onnx_node --ros-args \
-p policy_path:=<path> -p device:=cuda
ros2 run model_utils loss_compare_node --ros-args \
-p mode:=compute_loss -p batch_path:=<path>
| 2 个月前 |