1 vin.encoders.pose
vin.encoders.pose
Pose encoder modules for VIN candidate views.
This module owns the active candidate-pose encoder interface and the R6D plus learnable Fourier feature implementation used by VIN-Core (v3).
1.1 Classes
| Name | Description |
|---|---|
| PoseEncoder | Base interface for encoders of poses already in a reference frame. |
| PoseEncodingOutput | Pose-encoding outputs for a pose expressed in a reference frame. |
| R6dLffPoseEncoder | Encode reference-frame translation and rotation-6D through LFF. |
| R6dLffPoseEncoderConfig | Configure reference-frame R6D plus LFF pose encoding. |
1.1.1 PoseEncoder
vin.encoders.pose.PoseEncoder()Base interface for encoders of poses already in a reference frame.
1.1.1.1 Attributes
| Name | Description |
|---|---|
| pose_encoder_lff | Optional LFF submodule for diagnostics (None for SH-only encoders). |
| out_dim | Return the final pose-embedding feature width. |
1.1.1.2 Methods
| Name | Description |
|---|---|
| encode | Encode a pose expressed in the reference frame. |
| forward | Encode a reference-frame pose through PyTorch’s module call interface. |
1.1.1.2.1 encode
vin.encoders.pose.PoseEncoder.encode(pose_rig)Encode a pose expressed in the reference frame.
1.1.1.2.2 forward
vin.encoders.pose.PoseEncoder.forward(pose_rig)Encode a reference-frame pose through PyTorch’s module call interface.
1.1.1.2.2.1 Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| pose_rig | PoseTW |
PoseTW with floating storage shape ... 12; the caller selects the reference frame and translations are metres. |
required |
1.1.1.2.2.2 Returns
| Name | Type | Description |
|---|---|---|
| PoseEncodingOutput | The same differentiable PoseEncodingOutput as :meth:encode, |
|
| PoseEncodingOutput | preserving leading pose axes. Calling the module also runs registered | |
| PoseEncodingOutput | hooks; no extra parameters or transformation are introduced here. |
1.1.2 PoseEncodingOutput
vin.encoders.pose.PoseEncodingOutput(
center_m,
pose_vec,
pose_enc,
center_dir=None,
forward_dir=None,
radius_m=None,
view_alignment=None,
)Pose-encoding outputs for a pose expressed in a reference frame.
1.1.2.1 Attributes
| Name | Type | Description |
|---|---|---|
| center_m | Tensor | Tensor["... 3", float32] translation in the reference frame. |
| pose_vec | Tensor | Tensor["... D", float32] pose vector fed into the encoder. |
| pose_enc | Tensor | Tensor["... E", float32] encoded pose embedding. |
| center_dir | Tensor | None | Optional Tensor["... 3", float32] unit direction to center. |
| forward_dir | Tensor | None | Optional Tensor["... 3", float32] forward direction in ref frame. |
| radius_m | Tensor | None | Optional Tensor["... 1", float32] radius \|\|t\|\|. |
| view_alignment | Tensor | None | Optional Tensor["... 1", float32] dot <f, -u>. |
1.1.3 R6dLffPoseEncoder
vin.encoders.pose.R6dLffPoseEncoder(config)Encode reference-frame translation and rotation-6D through LFF.
The representation is continuous for common rotations but is not an SE(3)-equivariant map: translation coordinates and rotation-matrix columns are interpreted in the caller-supplied reference rig frame.
1.1.3.1 Attributes
| Name | Description |
|---|---|
| pose_encoder_lff | Registered shared Fourier encoder; follows module mode, device and checkpoint lifecycle. |
| out_dim | Return the configured LFF pose-embedding width. |
1.1.3.2 Methods
| Name | Description |
|---|---|
| encode | Encode poses in the reference rig frame. |
1.1.3.2.1 encode
vin.encoders.pose.R6dLffPoseEncoder.encode(pose_rig)Encode poses in the reference rig frame.
1.1.3.2.1.1 Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| pose_rig | PoseTW |
PoseTW["... 12"] pose in reference rig frame. |
required |
1.1.3.2.1.2 Returns
| Name | Type | Description |
|---|---|---|
| PoseEncodingOutput | PoseEncodingOutput containing translation, pose vector, and embedding. |
1.1.4 R6dLffPoseEncoderConfig
vin.encoders.pose.R6dLffPoseEncoderConfig()Configure reference-frame R6D plus LFF pose encoding.
1.1.4.1 Attributes
| Name | Description |
|---|---|
| target_type | Factory target for aria_nbv.configs.base.BaseConfig.setup_target. |
| out_dim | Return the complete pose-embedding width seen by consumers. |
| kind | Discriminator for pose-encoder selection. |
| pose_encoder_lff | LFF encoder for [t, r6d] pose vectors (input_dim=9). |
| pose_scale_init | Initial per-group scale for translation and rotation (t, r6d). |
| pose_scale_learnable | Whether pose scaling parameters are learned. |
| pose_scale_eps | Numerical epsilon for pose scaling. |