1 vin.encoders.shell_pose

vin.encoders.shell_pose

Shell-pose encoder modules for VIN candidates.

This module owns encoders that describe a candidate by the direction from the reference pose to the candidate center, the candidate optical axis, the radial distance, and a view-target alignment scalar. They are useful for shell-sampled NBV candidates where roll about the optical axis is not semantically important.

1.1 Classes

Name Description
ShellLffPoseEncoder Encode canonical shell descriptors with learned Fourier features.
ShellLffPoseEncoderConfig Config-as-factory wrapper for ShellLffPoseEncoder.
ShellShPoseEncoderAdapter Adapt ShellShPoseEncoder to the common pose-encoder interface.
ShellShPoseEncoderAdapterConfig Config-as-factory wrapper for ShellShPoseEncoderAdapter.

1.1.1 ShellLffPoseEncoder

vin.encoders.shell_pose.ShellLffPoseEncoder(config)

Encode canonical shell descriptors with learned Fourier features.

The input pose must already be expressed in the reference rig frame. The emitted pose vector is [center_dir, forward_dir, radius_m, view_alignment] and has dimension 8.

1.1.1.1 Attributes

Name Description
out_dim Return the configured shell-LFF embedding width.

1.1.1.2 Methods

Name Description
encode Encode shell pose descriptors in the reference rig frame.
1.1.1.2.1 encode
vin.encoders.shell_pose.ShellLffPoseEncoder.encode(pose_rig)

Encode shell pose descriptors in the reference rig frame.

1.1.2 ShellLffPoseEncoderConfig

vin.encoders.shell_pose.ShellLffPoseEncoderConfig()

Config-as-factory wrapper for ShellLffPoseEncoder.

1.1.2.1 Attributes

Name Description
target_type Factory target for aria_nbv.configs.base.BaseConfig.setup_target.
kind Discriminator for pose-encoder selection.
pose_encoder_lff LFF encoder for shell pose vectors (input_dim=8).

1.1.3 ShellShPoseEncoderAdapter

vin.encoders.shell_pose.ShellShPoseEncoderAdapter(config)

Adapt ShellShPoseEncoder to the common pose-encoder interface.

The adapter accepts efm3d.aria.pose.PoseTW poses, derives the canonical shell descriptor with encode_shell_pose_descriptor, and delegates the direction/radius tensors to aria_nbv.vin.encoders.spherical.ShellShPoseEncoder.

1.1.3.1 Attributes

Name Description
out_dim Return the adapted spherical-harmonics embedding width.

1.1.3.2 Methods

Name Description
encode Encode shell pose descriptors with spherical harmonics.
1.1.3.2.1 encode
vin.encoders.shell_pose.ShellShPoseEncoderAdapter.encode(pose_rig)

Encode shell pose descriptors with spherical harmonics.

1.1.4 ShellShPoseEncoderAdapterConfig

vin.encoders.shell_pose.ShellShPoseEncoderAdapterConfig()

Config-as-factory wrapper for ShellShPoseEncoderAdapter.

1.1.4.1 Attributes

Name Description
target_type Factory target for aria_nbv.configs.base.BaseConfig.setup_target.
kind Discriminator for pose-encoder selection.
sh_encoder Spherical-harmonics encoder configuration.

1.2 Functions

Name Description
infer_pose_vec_groups Infer semantic groups for a pose-encoder input vector.

1.2.1 infer_pose_vec_groups

vin.encoders.shell_pose.infer_pose_vec_groups(pose_vec_dim)

Infer semantic groups for a pose-encoder input vector.

1.2.1.1 Parameters

Name Type Description Default
pose_vec_dim int Size of the pose vector D. required

1.2.1.2 Returns

Name Type Description
list[tuple[str, slice]] Ordered list of (name, slice) entries describing how to split the
list[tuple[str, slice]] pose vector into semantic groups. Falls back to a single pose_vec
list[tuple[str, slice]] group when the dimensionality is unknown.
Back to top