Convert CAM evidence into angular proposals¶
Level: Compose · Output: finite spherical centre and FOV candidates
The useful analogy to the R-CNN family is proposal handling, not rectangular ERP boxes:
Detector pipeline |
Spherical semantic pipeline |
|---|---|
objectness map |
CAM/proxy evidence |
image box proposal |
angular centre + horizontal/vertical FOV |
box IoU/NMS |
solid-angle overlap/NMS |
ROI crop |
gnomonic view centred on the proposal |
box refinement |
centre and FOV refinement |
A proposal should cover enough of the candidate object for a local gnomonic view without becoming an entire-room hypothesis. Generate several centre/FOV anchors around stable CAM regions, score their supported evidence, reject unsupported area and suppress near-duplicates with solid-angle overlap.
From score map to candidate components¶
semantic_regions_from_map() provides the first deterministic split. It
thresholds a normalized score map, joins components with horizontal seam
wraparound, associates supported spherical features, and reports rejected,
truncated and seam-crossing counts.
from panorai.object_localization import (
SemanticRegionProposalConfig,
semantic_regions_from_map,
)
components = semantic_regions_from_map(
cam_hw,
erp_shape_hw=erp_rgb.shape[:2],
features=features,
region_id_prefix="view-a/grid",
class_id=class_id,
class_name=class_name,
config=SemanticRegionProposalConfig(
threshold=0.50,
min_component_cells=2,
min_feature_count=2,
),
source_id="resnet18-imagenet/cam",
)
The threshold is an experimental proposal parameter, not a calibrated probability boundary. A component without enough accepted features remains in the diagnostics but cannot support later geometric association.
Anchor centre and extent¶
For each retained component, generate centre/FOV anchors at several angular scales and aspect ratios. Score an anchor by supported semantic mass, feature/track support and penalties for unsupported or excessive area. Use minimum and maximum FOV bounds; otherwise a peak becomes a tiny crop or a weak component expands to the whole room.
Compare anchors with solid-angle intersection-over-union. The merge rule must distinguish duplicate observations of one region from incompatible concepts. This is the spherical counterpart of anchor generation, box regression and NMS—not an ERP bounding-box approximation.
Each proposal retains:
concept and exact proxy labels
centre bearing
horizontal and vertical FOV
semantic support score
support/validity coverage
source model, CAM and view provenance
The proposal is intentionally uncertain. Cross-view evidence decides whether it should be rejected, merged, kept ambiguous or promoted.
Next: associate proposals across views. The full method and ablations are in the object-hypothesis tutorial.