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. |