DRAFT: Camera intrinsics variation#913
Draft
alexmillane wants to merge 6 commits into
Draft
Conversation
- Perturb a pinhole camera's focal lengths (fx, fy) and principal point (cx, cy) by sampled fractional amounts via the USD aperture/offset params. - Register on the droid and franka wrist cameras alongside the extrinsics variation. Signed-off-by: alex <amillane@nvidia.com>
…of tiled cameras.
…ature/camera_intrinsics_variation # Conflicts: # isaaclab_arena/embodiments/droid/droid.py # isaaclab_arena/embodiments/embodiment_base.py # isaaclab_arena/embodiments/franka/franka.py # isaaclab_arena/embodiments/g1/g1.py # isaaclab_arena/embodiments/gr1t2/gr1t2.py # isaaclab_arena/utils/cameras.py # isaaclab_arena_environments/gr1_put_and_close_door_environment.py # isaaclab_arena_environments/gr1_table_multi_object_no_collision_environment.py
alexmillane
commented
Jul 15, 2026
alexmillane
left a comment
Collaborator
Author
There was a problem hiding this comment.
Self review 1
Comment on lines
+399
to
+404
| """DROID three-camera rig using standard (untiled) cameras, mounted with pre-set poses. | ||
|
|
||
| This is the source of truth for the DROID camera poses and intrinsics. Inherits | ||
| :class:`~isaaclab_arena.utils.cameras.ArenaCameraCfg`, whose ``get_cfg`` returns the untiled | ||
| rig or a tiled copy per ``use_tiled_camera``. | ||
| """ |
Collaborator
Author
There was a problem hiding this comment.
Revert to the docstring in the underlying branch.
Comment on lines
+386
to
+394
| # EventTerm( | ||
| # func=franka_stack_events.randomize_joint_by_gaussian_offset, | ||
| # mode="reset", | ||
| # params={ | ||
| # "mean": 0.0, | ||
| # "std": 0.02, | ||
| # "asset_cfg": SceneEntityCfg("robot"), | ||
| # }, | ||
| # ) |
Comment on lines
+243
to
+248
| """Franka wrist-camera rig using a standard (untiled) camera. | ||
|
|
||
| Source of truth for the wrist-camera intrinsics and default pose. Tiling is selected via | ||
| the inherited :class:`~isaaclab_arena.utils.cameras.ArenaCameraCfg`; the offset is set from | ||
| the embodiment's ``camera_offset``. | ||
| """ |
Collaborator
Author
There was a problem hiding this comment.
restore docstring to underlying branch.
Comment on lines
+490
to
+495
| """G1 head-camera rig using a standard (untiled) camera. | ||
|
|
||
| Source of truth for the head-camera intrinsics and default pose. Tiling is selected via the | ||
| inherited :class:`~isaaclab_arena.utils.cameras.ArenaCameraCfg`; the offset is set from the | ||
| embodiment's ``camera_offset``. | ||
| """ |
Collaborator
Author
There was a problem hiding this comment.
restore to underlying branch.
Comment on lines
+349
to
+354
| """GR1T2 head POV camera rig using a standard (untiled) camera. | ||
|
|
||
| Source of truth for the POV-camera intrinsics and default pose. Tiling is selected via the | ||
| inherited :class:`~isaaclab_arena.utils.cameras.ArenaCameraCfg`; the offset is set from the | ||
| embodiment's ``camera_offset``. | ||
| """ |
Collaborator
Author
There was a problem hiding this comment.
restore to underlying branch.
Comment on lines
+25
to
+30
| """Mixin for embodiment camera-rig configclasses that exposes an untiled/tiled selector. | ||
|
|
||
| CameraCfg configclasses subclass this and declare camera fields (as per usual). The get_cfg | ||
| then returns the rig un-tiled, or a tiled copy dependent on the value of ``use_tiled_camera``. | ||
| A rig configclass subclasses this and declares its cameras as ``CameraCfg`` fields (the | ||
| untiled source of truth). :meth:`get_cfg` then returns the rig untiled, or a tiled copy of | ||
| it, per :attr:`use_tiled_camera`. Embodiments assign such a rig to ``camera_config``; the | ||
| env builder resolves it via :meth:`get_cfg`. |
Collaborator
Author
There was a problem hiding this comment.
restore to underlying branch.
|
|
||
| # Backing flag; tiled by default. Kept as a ClassVar so it is not treated as a camera field; instances shadow it. | ||
| _use_tiled_camera: ClassVar[bool] = True | ||
| """Backing flag; tiled by default. Kept as a ClassVar so it is not treated as a camera field; instances shadow it.""" |
Collaborator
Author
There was a problem hiding this comment.
restore to underlying branch.
Comment on lines
+59
to
+62
| """Return a copy of this rig with every untiled CameraCfg field converted to tiled. | ||
|
|
||
| This instance is left untouched; non-camera fields and already-tiled cameras are copied as-is. | ||
| """ |
Collaborator
Author
There was a problem hiding this comment.
restore to underlying branch.
Comment on lines
+71
to
+75
| """Return a TiledCameraCfg mirroring the settings of an untiled CameraCfg. | ||
|
|
||
| All init fields are copied except ``class_type``, so the returned cfg keeps the tiled | ||
| camera's own ``class_type``. | ||
| """ |
Collaborator
Author
There was a problem hiding this comment.
restore to underlying branch.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a run-time variation for camera intrinsics.
Detailed description