wifi-densepose/examples/research-sota
rUv 39d18d1c99
research(R6.2.1): 3D antenna placement — ceiling-only gives 0% coverage; mixed-height wins (#724)
Extends R6.2 from 2D ellipse to 3D ellipsoid + 3D target zones (bed at
z=0.3-0.6, chair at z=0.5-1.2, standing at z=1.0-1.7 in a 5x5x2.5 m
room).

Counter-intuitive headline:

| Strategy                                  | Coverage |
|-------------------------------------------|---------:|
| Desk-height (0.8 m walls)                 |   22.2%  |
| Wall-mount (1.5 m walls)                  |   17.4%  |
| Ceiling-only (2.5 m grid)                 |    0.0%  |  <-- FAILS
| Mixed walls + ceiling                     |   25.7%  |  <-- BEST

Ceiling-only fails because both antennas at 2.5 m create a Fresnel
ellipsoid sitting AT ceiling height (2.1-2.9 m vertically). Target
zones at 0.3-1.7 m are below the envelope by 0.4-2.0 m. The 39 cm
transverse radius is symmetric around LOS, so a flat horizontal link
at any height misses targets at any OTHER height.

This is the 3D version of R6.1's on-LOS-degeneracy finding. A
horizontal link at any single height has its envelope concentrated
at that height.

Why mixed wins: best placement is Tx (5.0, 4.0, 0.8) + Rx (0.0, 4.0, 1.5).
The diagonal-in-z link tilts the ellipsoid through multiple elevations.
Covers chair AND standing AND bed simultaneously.

Vertical link diversity is the 3D insight 2D analysis missed.

Installation-guide updates:
- Single pair: one low (0.8 m) + one high (1.5 m), opposite walls
- 4-anchor: 2x low corners + 2x high opposite corners
- 5-anchor knee: mix 0.8 / 1.5 / one ceiling
- Bed-only: both LOW
- Standing-only: both HIGH
- NEVER: both ceiling without a low anchor

Coverage numbers are lower than R6.2's 2D 51% because 3D volumetric
coverage is inherently lower than 2D area coverage -- honest 3D physics.

Composes:
- R6.2 (2D) -- incomplete; height matters as much as horizontal
- R6.2.2 (N-anchor) -- N=5 knee should distribute across heights
- R6.1 (multi-scatterer) -- needs 3D body model for proper composition
- R14 V1/V2/V3 -- each vertical needs height-recipe
- ADR-029 -- placement is (x, y, z), not (x, y)
- R12 PABS -- detects intruders standing/sitting/lying with mixed heights

Honest scope: 3-zone discrete approximation, single-pair only, no
furniture occlusion, 0.1 m resolution, greedy search.

Coordination: ticks/tick-21.md, no PROGRESS.md edit.
2026-05-22 04:17:47 -04:00
..
r1_toa_crlb.py research(R1): ToA CRLB — precision floor for WiFi multistatic localisation (#711) 2026-05-22 01:38:35 -04:00
r1_toa_crlb_results.json research(R1): ToA CRLB — precision floor for WiFi multistatic localisation (#711) 2026-05-22 01:38:35 -04:00
r3_1_physics_env_results.json research(R3.1): physics-informed env prediction at raw-CSI level — NEGATIVE (architecture-error) (#723) 2026-05-22 04:04:38 -04:00
r3_1_physics_informed_env.py research(R3.1): physics-informed env prediction at raw-CSI level — NEGATIVE (architecture-error) (#723) 2026-05-22 04:04:38 -04:00
r3_crossroom_reid.py research(R3): cross-room re-ID — MERIDIAN closes the env-shift gap + 4 privacy constraints (#715) 2026-05-22 02:13:10 -04:00
r3_reid_results.json research(R3): cross-room re-ID — MERIDIAN closes the env-shift gap + 4 privacy constraints (#715) 2026-05-22 02:13:10 -04:00
r5_subcarrier_saliency.py research(sota): kick off SOTA research loop + first R5 saliency measurement (#702) 2026-05-21 23:05:55 -04:00
r6_1_multiscatterer.py research(R6.1): multi-scatterer Fresnel — discovers 4.7 dB penalty matching R13's 5-dB shortfall (#721) 2026-05-22 03:36:42 -04:00
r6_1_multiscatterer_results.json research(R6.1): multi-scatterer Fresnel — discovers 4.7 dB penalty matching R13's 5-dB shortfall (#721) 2026-05-22 03:36:42 -04:00
r6_2_1_3d_placement.py research(R6.2.1): 3D antenna placement — ceiling-only gives 0% coverage; mixed-height wins (#724) 2026-05-22 04:17:47 -04:00
r6_2_1_3d_results.json research(R6.2.1): 3D antenna placement — ceiling-only gives 0% coverage; mixed-height wins (#724) 2026-05-22 04:17:47 -04:00
r6_2_2_multistatic_placement.py research(R6.2.2): N-anchor multistatic placement saturation — practical knee at N=5 (#720) 2026-05-22 03:17:14 -04:00
r6_2_2_multistatic_results.json research(R6.2.2): N-anchor multistatic placement saturation — practical knee at N=5 (#720) 2026-05-22 03:17:14 -04:00
r6_2_antenna_placement.py research(R6.2): Fresnel-aware antenna placement — 93x sensing-coverage lift from physics alone (#719) 2026-05-22 03:04:17 -04:00
r6_2_placement_results.json research(R6.2): Fresnel-aware antenna placement — 93x sensing-coverage lift from physics alone (#719) 2026-05-22 03:04:17 -04:00
r6_fresnel_results.json research(R6): Fresnel-zone forward model — bedrock physics for CSI sensitivity (#710) 2026-05-22 01:31:09 -04:00
r6_fresnel_zone.py research(R6): Fresnel-zone forward model — bedrock physics for CSI sensitivity (#710) 2026-05-22 01:31:09 -04:00
r7_multilink_consistency.py research(R7): Stoer-Wagner mincut detects adversarial CSI nodes 3/3 in synthetic (#704) 2026-05-21 23:28:46 -04:00
r7_multilink_consistency_results.json research(R7): Stoer-Wagner mincut detects adversarial CSI nodes 3/3 in synthetic (#704) 2026-05-21 23:28:46 -04:00
r8_rssi_only_count.py research(R8): RSSI-only person count retains 95% of full-CSI accuracy (#703) 2026-05-21 23:18:09 -04:00
r8_rssi_only_results.json research(R8): RSSI-only person count retains 95% of full-CSI accuracy (#703) 2026-05-21 23:18:09 -04:00
r9_rssi_fingerprint_knn.py feat(tools/ruview-mcp): M2 — wire real inference via cog health (#706) 2026-05-21 23:43:32 -04:00
r9_rssi_fingerprint_results.json feat(tools/ruview-mcp): M2 — wire real inference via cog health (#706) 2026-05-21 23:43:32 -04:00
r10_foliage_attenuation.py research(R10): through-foliage wildlife sensing — physics feasibility + per-species gait taxonomy 2026-05-22 00:59:11 -04:00
r10_foliage_results.json research(R10): through-foliage wildlife sensing — physics feasibility + per-species gait taxonomy 2026-05-22 00:59:11 -04:00
r11_maritime_propagation.py research(R11): maritime sensing — through-bulkhead impossible, through-seam works (#712) 2026-05-22 01:53:51 -04:00
r11_maritime_results.json research(R11): maritime sensing — through-bulkhead impossible, through-seam works (#712) 2026-05-22 01:53:51 -04:00
r12_pabs_implementation.py research(R12 PABS): NEGATIVE -> POSITIVE — 1161x detection lift via R6.1 forward model (#722) 2026-05-22 03:49:41 -04:00
r12_pabs_results.json research(R12 PABS): NEGATIVE -> POSITIVE — 1161x detection lift via R6.1 forward model (#722) 2026-05-22 03:49:41 -04:00
r12_rf_weather_eigenshift.py research(R12): RF weather mapping eigenshift — negative-ish, with clearly-actionable revision path (#707) 2026-05-21 23:52:49 -04:00
r12_rf_weather_results.json research(R12): RF weather mapping eigenshift — negative-ish, with clearly-actionable revision path (#707) 2026-05-21 23:52:49 -04:00
r13_bp_physics_floor.py research(R13): NEGATIVE — contactless BP from CSI is physically inferior to a cuff (#713) 2026-05-22 02:00:35 -04:00
r13_bp_results.json research(R13): NEGATIVE — contactless BP from CSI is physically inferior to a cuff (#713) 2026-05-22 02:00:35 -04:00