1 vin.encoders.shell_descriptor

vin.encoders.shell_descriptor

Shared shell-pose descriptors for VIN candidate encoders.

The shell encoders describe a candidate view by its center direction, optical axis, radial distance, and view-target alignment in a reference rig frame. This module owns that geometry in one place so aria_nbv.vin.encoders.shell_pose can expose multiple torch.nn.Module encoders without duplicating frame math.

1.1 Classes

Name Description
ShellPoseDescriptor Canonical shell descriptor for a candidate pose.

1.1.1 ShellPoseDescriptor

vin.encoders.shell_descriptor.ShellPoseDescriptor(
    center_m,
    center_dir,
    forward_dir,
    radius_m,
    view_alignment,
    pose_vec,
)

Canonical shell descriptor for a candidate pose.

1.1.1.1 Attributes

Name Type Description
center_m Tensor Tensor["... 3", float32] candidate center in the reference rig frame, measured in meters.
center_dir Tensor Tensor["... 3", float32] unit direction from the reference origin to the candidate center.
forward_dir Tensor Tensor["... 3", float32] candidate camera optical axis expressed in the reference rig frame.
radius_m Tensor Tensor["... 1", float32] radial distance \|\|center_m\|\|.
view_alignment Tensor Tensor["... 1", float32] dot product <forward_dir, -center_dir>; higher values look back toward the shell center.
pose_vec Tensor Tensor["... 8", float32] concatenated [center_dir, forward_dir, radius_m, view_alignment] vector.

1.2 Functions

Name Description
encode_shell_pose_descriptor Build the canonical shell descriptor for poses in a reference frame.

1.2.1 encode_shell_pose_descriptor

vin.encoders.shell_descriptor.encode_shell_pose_descriptor(pose_rig)

Build the canonical shell descriptor for poses in a reference frame.

1.2.1.1 Parameters

Name Type Description Default
pose_rig PoseTW PoseTW["... 12"] candidate pose expressed in the reference rig frame. Its translation defines the shell center direction and radius; its rotation defines the candidate optical axis through the local +Z camera-forward convention. required

1.2.1.2 Returns

Name Type Description
ShellPoseDescriptor ShellPoseDescriptor containing normalized shell geometry and the
ShellPoseDescriptor concatenated 8D pose vector consumed by shell LFF and SH encoders.

1.2.1.3 Notes

The descriptor intentionally ignores roll about the optical axis. Use aria_nbv.vin.encoders.pose.R6dLffPoseEncoder when roll sensitivity is training-visible.

Back to top