Papers
Topics
Authors
Recent
Search
2000 character limit reached

COMPASS: Floor-Plan Visual Localization

Updated 7 July 2026
  • The paper demonstrates that COMPASS leverages floor-plan semantics and geometric cues via a compact multi-channel radial descriptor to estimate a robot’s planar pose.
  • It employs cyclic cross-correlation of visual hit-type signatures from dual fisheye imagery with floor-plan descriptors to robustly recover heading.
  • Though currently operating in 2D, the framework lays the groundwork for future extensions to full 3D building-model localization and enhanced multi-channel matching.

Searching arXiv for the specified paper and closely related uses of the term. CoMPAS3D, in the context of the query associated with "COMPASS: COmpact Multi-channel Prior-map And Scene Signature for Floor-Plan-Based Visual Localization" (Shaheer et al., 28 Apr 2026), denotes a floor-plan-based visual localization framework whose actual name in the paper is COMPASS rather than CoMPAS3D. The method exploits both geometric and semantic priors from architectural floor plans to estimate the pose of a robot equipped with dual fisheye cameras. Its core representation is a compact multi-channel radial descriptor that encodes the surrounding wall–window–opening structure around a planar pose, and it uses cross-modal structural matching between a floor-plan-derived descriptor and a descriptor extracted from fisheye imagery. The paper explicitly states that the present implementation is 2D rather than full 3D: the prior map and primary localization are conducted in planar coordinates (x,y,yaw)(x,y,\text{yaw}), while extension to 3D building models is left to future work (Shaheer et al., 28 Apr 2026).

1. Terminology, scope, and problem formulation

The method addresses indoor localization in settings where architectural floor plans are available as priors. Its motivating premise is that floor plans contain not only geometry, such as wall layout, but also structural semantics, including walls, windows, and openings. COMPASS is designed to use both forms of information rather than relying on geometry alone. The paper identifies the alternating wall–window–opening pattern around a position as a highly discriminative signature that is represented both in 2D floor plans and in fisheye imagery acquired by a mobile platform (Shaheer et al., 28 Apr 2026).

A central clarification is terminological. The paper does not name the method "CoMPAS3D"; it names it COMPASS. It also does not present a full volumetric localization system. Instead, the current formulation operates on a planar pose, with the descriptor computed radially around a candidate floor-plan location and heading. Although roll and pitch estimation from imagery are discussed, the prior map and the primary localization machinery remain 2D. This distinction matters because a common misunderstanding would be to read the method as a fully 3D building-model localization system; the paper explicitly positions such generalization as future work rather than a property of the current implementation.

2. Multi-channel radial descriptor from floor plans

From a candidate planar pose p=(tx,ty)p=(t_x,t_y) with heading ψ\psi, COMPASS casts rays in Ns=360N_s=360 azimuth bins, giving a 11^\circ angular resolution. The jj-th ray has relative bearing

θj=2πjNs,\theta_j = \frac{2\pi j}{N_s},

and absolute bearing ψ+θj\psi+\theta_j. Ray marching proceeds with step size Δs=0.02m\Delta s = 0.02\,\mathrm{m} until the ray hits a wall pixel, hits a window pixel, or reaches the maximum radius rmax=30mr_{\max}=30\,\mathrm{m}. The floor plan is represented by two binary raster masks at metric resolution p=(tx,ty)p=(t_x,t_y)0: a wall mask p=(tx,ty)p=(t_x,t_y)1 and a window/glazing mask p=(tx,ty)p=(t_x,t_y)2 (Shaheer et al., 28 Apr 2026).

The result is a descriptor p=(tx,ty)p=(t_x,t_y)3 with five channels. These channels combine geometric range information with structural semantics.

Channel Definition Encoded meaning
0 p=(tx,ty)p=(t_x,t_y)4 Normalized range
1 wall p=(tx,ty)p=(t_x,t_y)5, window p=(tx,ty)p=(t_x,t_y)6, open p=(tx,ty)p=(t_x,t_y)7 Structural hit type
2 p=(tx,ty)p=(t_x,t_y)8, p=(tx,ty)p=(t_x,t_y)9 Range gradient
3 ψ\psi0 Inverse range
4 ψ\psi1, with ψ\psi2, ψ\psi3 Local range variance

The hit-type channel is the semantic core of the representation. Each ray is labeled as wall, window, or open, depending on whether it first intersects ψ\psi4, ψ\psi5, or neither before ψ\psi6. The range-gradient channel uses the forward angular difference

ψ\psi7

with circular index wrapping and ψ\psi8, to emphasize corners and depth discontinuities. The inverse-range channel increases the contribution of nearby structures, which the paper relates to the larger angular extent of nearby walls in fisheye imagery. The local-variance channel uses an 11-bin window to capture local structural complexity that is not fully described by the pointwise gradient alone.

No global smoothing is required. Only the gradient and local-variance channels use neighborhood operations. The final descriptor is therefore a compact but structured ψ\psi9 real-valued matrix, intended to preserve both radial geometry and floor-plan semantics.

3. Visual descriptor from dual fisheye imagery

The image-side descriptor uses the same Ns=360N_s=3600 structure as the floor-plan descriptor, but the current implementation is partial. In the proof-of-concept, only Channel 1, the structural hit-type channel, is populated from vision. The remaining channels—normalized range, gradient, inverse range, and local variance—are identified as ongoing work and are described as estimable from floor-wall boundary geometry and known camera height (Shaheer et al., 28 Apr 2026).

Window extraction is the paper’s first concrete step toward cross-modal structural matching. The detection pipeline begins with ELSED line segment detection on each fisheye frame, typically producing approximately 200–400 segments per image. A vertical image band with concentrated window evidence is then estimated using two signals: a brightness density profile, on the assumption that bright pixels indicate glass or openings, and vertical segment density. Within this band, segments are retained if they are more than Ns=360N_s=3601 away from horizontal and longer than a minimum length. Nearby vertical segments are clustered into single edge hypotheses when their horizontal gap is at most 8 pixels and they overlap vertically. Edge-cluster pairs with suitable separation and overlap are then turned into window proposals and verified using interior brightness, wall contrast, and texture non-uniformity. Post-filters remove red-dominant safety equipment and fisheye-periphery artifacts, and non-maximum suppression preserves the best non-overlapping detections.

Detected windows are projected to azimuth bins through the fisheye camera model. The paper references the Kannala–Brandt framework, while the implementation uses an equidistant-style relation

Ns=360N_s=3602

where Ns=360N_s=3603 is pixel distance from the principal point and Ns=360N_s=3604 is focal length. With Ns=360N_s=3605, the 3D bearing vector is

Ns=360N_s=3606

For the back camera, a Ns=360N_s=3607 yaw rotation is applied:

Ns=360N_s=3608

Azimuth for descriptor binning is then extracted as

Ns=360N_s=3609

The left and right edges of each detected window box are unprojected, producing an azimuth interval 11^\circ0. All bins within that interval are set to 11^\circ1 in Channel 1, corresponding to "window"; all other bins default to 11^\circ2, corresponding to "wall". The result is a visual hit-type signature aligned with the same 360-bin radial structure used on the map side.

4. Cross-modal structural matching and heading recovery

COMPASS is explicitly rotation-equivariant. A heading change 11^\circ3 corresponds to a cyclic column shift

11^\circ4

in the descriptor. Matching is therefore performed over cyclic shifts rather than by recomputing descriptors for every orientation (Shaheer et al., 28 Apr 2026).

For a visual query descriptor 11^\circ5 and a database of floor-plan descriptors 11^\circ6, the similarity score is

11^\circ7

where 11^\circ8, 11^\circ9 are per-channel weights, and jj0 denotes circular column shifting. Efficient evaluation uses FFT-based circular cross-correlation, giving per-candidate complexity jj1.

In the present proof-of-concept, only Channel 1 is used for matching and heading recovery. This is a significant implementation detail: the full five-channel cross-modal matcher is the conceptual framework, but the experimentally validated portion is the semantic hit-type channel based on wall–window structure. The method is positioned relative to LiDAR Scan Context by adopting the same radial-layout and cyclic-alignment logic while extending it with structural semantics and range-informed channels specific to floor plans and imagery. A plausible implication is that the eventual multi-channel system is intended to disambiguate locations that share similar wall–window sequences but differ in scale, corner structure, or local complexity; the paper states this through the introduction of inverse-range, gradient, and local-variance channels, although their visual counterparts are not yet completed.

5. Dual-fisheye setup and proof-of-concept evaluation

The experimental demonstration uses dual fisheye images from front and back Insta360 cameras, covering approximately jj2, together with the Hilti-Trimble SLAM Challenge 2026 dataset. The reported image resolution is approximately jj3, with a field of view of about jj4 per camera. The floor-plan environment is approximately jj5 at raster resolution jj6, and descriptor generation uses jj7, jj8, and jj9 (Shaheer et al., 28 Apr 2026).

At the starting pose used for the proof-of-concept, the floor-plan descriptor exhibits ranges spanning 1.76–22.36 m, with 43 wall–window segments and 67 window bins out of 360. The range-gradient channel is reported as sparse, with mean 0.09, which the paper interprets as indicating discriminative features at corners. On the image side, ELSED finds about 300 segments per image. The window-extraction pipeline identifies 18 windows in the front frame and 16 windows in the back frame, yielding 156 window bins in the camera hit-type channel.

Cross-correlation between the map and camera hit-type channels peaks at θj=2πjNs,\theta_j = \frac{2\pi j}{N_s},0 shift with a score of 0.9486, correctly recovering the relative heading. At that alignment, 231/360 bins (64%) agree between modalities. The paper identifies two main discrepancy regions. Between θj=2πjNs,\theta_j = \frac{2\pi j}{N_s},1 and θj=2πjNs,\theta_j = \frac{2\pi j}{N_s},2, the camera detects multiple windows while the floor plan aggregates them as one segment. Between θj=2πjNs,\theta_j = \frac{2\pi j}{N_s},3 and θj=2πjNs,\theta_j = \frac{2\pi j}{N_s},4, mismatches are attributed to as-built deviations, specifically windows located behind a wall that had not yet been constructed at capture time.

These results are explicitly presented as a single known pose demonstration rather than a full localization benchmark. The significance of the experiment is therefore evidentiary rather than exhaustive: it shows that the wall–window pattern visible in fisheye imagery can be aligned with the floor-plan-derived signature and can recover heading through cyclic matching.

6. Limitations, misconceptions, and prospective extensions

Several limitations are stated directly. First, the evaluation is restricted to a single known pose proof-of-concept, so dense retrieval over large candidate sets is not yet demonstrated (Shaheer et al., 28 Apr 2026). Second, the method depends on accurate floor-plan semantics; in construction or renovation environments, differences between plans and as-built structure can produce mismatches. Third, hit type alone becomes weakly discriminative away from facades or in interiors with few windows, where the channel tends toward a near-uniform wall signature. Fourth, window detection quality depends on lighting, occlusion, and clutter. Fifth, fisheye distortion handling currently uses the simplified θj=2πjNs,\theta_j = \frac{2\pi j}{N_s},5 mapping rather than the full Kannala–Brandt polynomial calibration, and the paper states that the latter would improve bearing accuracy.

These caveats also resolve the two most likely misconceptions about the method. The first is that it is already a full five-channel cross-modal localizer; in fact, only the semantic hit-type channel is currently validated from imagery. The second is that it is already a 3D building-model method; the paper explicitly states that the present system is 2D floor-plan-based and that extension to 3D building models, including multi-level and volumetric priors, remains future work.

The future-work agenda is correspondingly specific. It includes completing all five visual channels; introducing probabilistic multi-channel matching and robust weighting across channels; performing dense grid search over candidate positions with top-θj=2πjNs,\theta_j = \frac{2\pi j}{N_s},6 retrieval and geometric verification; integrating the method with SLAM for trajectory-level evaluation and loop closure; and extending the representation from 2D floor plans to 3D building models to incorporate elevation cues and improve robustness in multi-floor settings. This suggests a pathway from the current structural proof-of-concept toward a broader floor-plan-prior localization framework, but the implemented and validated contribution of the paper remains the 2D COMPASS descriptor and its cross-modal wall–window matching demonstration.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to CoMPAS3D.