place recognition
**Place recognition** is the **task of identifying previously seen locations from current sensor observations using compact visual or geometric descriptors** - it is a key module for relocalization, loop closure, and map reuse.
**What Is Place Recognition?**
- **Definition**: Match current view or scan to a database of known places despite viewpoint and condition changes.
- **Descriptor Types**: Handcrafted local features, bag-of-words histograms, or learned global embeddings.
- **Input Modalities**: Camera images, lidar scans, or fused multimodal descriptors.
- **Output**: Ranked candidate locations with similarity confidence.
**Why Place Recognition Matters**
- **Relocalization**: Recover pose after tracking loss or startup in known map.
- **Loop Closure Trigger**: Supplies candidate matches for drift correction.
- **Long-Term Mapping**: Supports map maintenance across repeated sessions.
- **Condition Robustness**: Must work across lighting, weather, and seasonal changes.
- **Scalable Retrieval**: Efficient indexing needed for large maps.
**Recognition Methods**
**Classical BoW Pipelines**:
- Build visual vocabulary and histogram descriptors from local features.
- Efficient and interpretable retrieval baseline.
**Deep Global Descriptors**:
- Learn embeddings robust to viewpoint and appearance shifts.
- Examples include NetVLAD-style pooled descriptors.
**Geometric Re-Ranking**:
- Verify top retrieval results with pose consistency checks.
- Reduce false positives from perceptual aliasing.
**How It Works**
**Step 1**:
- Encode current observation into place descriptor and query map index for nearest matches.
**Step 2**:
- Re-rank candidates with geometric verification and pass validated match to localization backend.
Place recognition is **the memory subsystem of SLAM that tells the robot it has been here before** - robust retrieval and verification are essential for reliable relocalization and global map consistency.