| # RUN GUIDE β chipoint-2 street-view + general-photo arms |
|
|
| ## Files |
| - `street_gallery/proj_head_gallery_512_{dinov3,so400m256,gopt}.npy` β street gallery |
| projection vectors (4.89M OSV-5M street frames, unit-norm 512-d fp16, |
| the street-arm index) |
| - `street_gallery/gallery_all_C_so400m256.npy` β street gallery coordinates (4.89M x 2) |
| - `weights/proj_head_{dinov3,so400m256,gopt}.pt` β projection heads (tower -> 512-d) |
| - `weights/streetview_k512_joint.pt` β street-view reranker arm (K512, 23 features) |
| - `photo_gallery/` β unified photo gallery, 14,541,898 rows (MP14 10.9M + |
| MP16-Pro 4.1M): `emb_*.npy` (512-d fp16 projected), `ll_*.npy` (lat/lon), |
| `ids_*.txt` (source ids, row-aligned), `manifest.json` |
| - `weights/photoarm_k768_thr.pt` / `weights/photoarm_k768_sr.pt` / `weights/photoarm_k512_thr.pt` β |
| general-photo reranker arms (23 features) |
| - `weights/ghead_merged_z4/z6/z8/z10.pt`, `weights/ghead_merged_reg.pt`, |
| `features/gallery_merged_cells.npz` β merged-head feature stack (required for the |
| 23-feature contract) |
| - `weights/router_osv_flickr.pt` β street/photo router (DINOv3 512-d -> logit; |
| >0 photo, else street) |
|
|
| ## Load |
| ```bash |
| python run_chipoint.py weights/streetview_k512_joint.pt # street arm: verify + schema |
| python run_chipoint.py weights/photoarm_k768_thr.pt # photo arm: verify + schema |
| ``` |
| Checkpoint dict: `state` (SR), `thr_state` (ThrNet), `mu`/`sd` |
| (normalizers), `nf`, `names`, `thr_km`. |
|
|
| ## Feature contract (nf = 23) |
| 18 base features over the candidate pool (per-encoder sims, margins, |
| ranks, cross-encoder agreement, vote counts, spatial density) + 5 |
| merged-head features from `ghead_merged_z4/z6/z8/z10/reg.pt` mapped by |
| `gallery_merged_cells.npz`. Feed order is `ckpt['names']`; standardize with |
| `(X - mu) / sd` before scoring. |
|
|
| ## Eval protocol (numbers in README) |
| Street arm: OSV-5M 4.89M gallery; 210,122-image sequence-stratified test |
| split. Retrieval: query tower embedding -> `proj_head_*` -> 512-d, top-K |
| against `street_gallery/proj_head_gallery_512_*` (same tower space), rerank with the |
| SR/ThrNet head on the 23-feature stack, threshold at 1/25/200/750/2500 km. |
|
|
| Photo arm: unified 14.5M gallery (`photo_gallery/emb_*.npy`, 512-d fp16); |
| im2gps3k (2997) / yfcc4k (4536) queries; blocklisted honest protocol |
| (184 exact-id leaks removed); 5-fold CV for the headline numbers. |
|
|