SELF-HOSTINGTIPS & GUIDES

RuView: WiFi DensePose for Camera-Free Human Monitoring

Key Takeaways
RuView eliminates the need for cameras by leveraging commodity WiFi signals and Channel State Information (CSI) processing to enable real-time full-body DensePose estimation and contactless vital sign tracking.

Channel State Information (CSI) represents the fine-grained amplitude and phase response of each WiFi subcarrier across MIMO antennas, capturing multipath propagation distortions at microsecond resolution. Unlike coarse RSSI metrics, CSI provides 56–192 complex-valued subcarriers per packet at sampling rates up to 28 Hz on modern hardware. Human bodies act as dynamic scatterers: torso movement modulates phase by fractions of a wavelength (≈12 cm at 2.4 GHz), limb motion alters amplitude via Fresnel zone interference, and micro-vibrations from breathing induce periodic Doppler shifts in the 0.1–0.5 Hz band.

RuView interprets these perturbations through a deterministic signal processing pipeline—conjugate multiplication for carrier-frequency-offset cancellation, Hampel outlier filtering, and subcarrier selection via graph min-cut—before feeding sanitized matrices into neural inference. The result maps raw 1D/2D RF tensors directly to 3D human kinematics without ever capturing visual data.

This constitutes privacy by design. No pixels are stored, transmitted, or processed; the system operates solely on ephemeral RF fingerprints that decay within milliseconds. GDPR, HIPAA, and surveillance regulations that prohibit imaging are inherently satisfied, while through-wall penetration (up to 5 m of non-metallic obstacles) and zero-light operation remain intact. Commodity WiFi routers and ESP32 nodes replace expensive camera arrays, lowering deployment cost to under $54 for a full multistatic mesh.

The Science of RuView

RuView adapts the DensePose RCNN architecture—originally developed for dense UV mapping of human surfaces from RGB images—to the RF domain. The core innovation replaces convolutional feature extractors with a cross-attention graph transformer that treats CSI subcarrier matrices as the input “image.” Each subcarrier becomes a token; attention heads learn to focus on body-sensitive frequencies while suppressing static multipath.

A geometry-conditioned FiLM layer injects transmitter-receiver coordinates, enabling the model to solve the inverse scattering problem analytically via sparse Neumann series expansion. The network outputs 17 COCO keypoints plus a 56×56 UV coordinate map, reconstructing full-body surface geometry at 54 000 frames per second in the optimized Rust implementation. Training leverages public paired datasets (MM-Fi, Wi-Pose) with camera supervision during the offline phase only; inference runs camera-free via domain-invariant alignment (gradient reversal layers) and self-supervised contrastive fingerprints (ADR-024).

Vital-sign extraction runs in parallel: bandpass-filtered phase time series undergo FFT peak detection for respiration (6–30 BPM) and heart rate (40–120 BPM) with sub-inch localization accuracy from body velocity profiles. The entire pipeline fits in 67 KB of model weights, quantized to 8-bit integers for edge deployment.

Hardware Requirements

Compatible Commodity WiFi Chips

RuView supports three tiers of hardware for CSI capture. The recommended production platform is the ESP32-S3 mesh (3–6 nodes at ≈$8 each). Native CSI extraction firmware streams 64–192 subcarriers at 20–28 Hz over UDP with built-in time-division multiplexing across channels 1/6/11. No external NIC modifications are required.

For research-grade resolution, Intel 5300 NICs (3×3 MIMO) paired with the open-source Intel CSI Tool or Nexmon-patched firmware deliver 30 subcarriers at full 802.11n rates. Atheros AR9580 cards with ath9k patches provide an alternative Linux path. Even RSSI-only commodity laptops suffice for coarse presence detection via variance thresholding, though DensePose requires at least one CSI-capable transmitter-receiver pair.

Transmitter-Receiver Geometry

Optimal performance demands multistatic geometry: place one transmitter (access point or ESP32 in AP mode) and 3–6 receivers around the monitored volume. The Fresnel zone model dictates that receivers should subtend at least 60° angles relative to the transmitter to resolve limb ambiguities. Through-wall sensing emerges naturally from multipath; concrete or drywall attenuates only 3–6 dB while preserving phase coherence for up to 5 m. ESP32 nodes synchronize via a lightweight TDM protocol with coherence gating to reject clock drift, maintaining stability over days without external NTP.

Installation & Environment Setup

Setting Up the Linux Environment

Begin on Ubuntu 20.04 or later (macOS and Windows supported via Docker). Install Rust 1.70+ via rustup and Python 3.8+ for legacy verification scripts:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
sudo apt update && sudo apt install -y libclang-dev pkg-config

Installing CSI Extraction Tools

For Intel 5300 or Atheros cards, clone and build the Intel CSI Tool or Nexmon:

git clone https://github.com/IntelLabs/CSI-Tool.git
cd CSI-Tool && make && sudo make install

ESP32-S3 users flash the provided firmware:

cd firmware/esp32-csi-node
idf.py build flash monitor

Cloning the RuView Repository and Installing Dependencies

git clone https://github.com/ruvnet/RuView.git
cd RuView

The primary implementation is Rust-based. Build the sensing server:

cd rust-port/wifi-densepose-rs
cargo build --release --package wifi-densepose-sensing-server

Legacy Python support requires:

python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
pip install -e .

Docker provides the fastest path:

docker pull ruvnet/wifi-densepose:latest
docker run -p 3000:3000 ruvnet/wifi-densepose:latest

Operating the System

Calibrating the Signal Baseline

RuView employs self-supervised contrastive learning to build a 128-dimensional room fingerprint in under 30 seconds of empty-room data. No manual labeling is required. The persistent field model subtracts static multipath at runtime, isolating dynamic human-induced perturbations. For domain adaptation in new environments, run the 10-second rapid-adaptation command:

./target/release/sensing-server --model model.rvf --calibrate --calibrate-duration 10

Running the Real-Time Inference Engine

Launch the server with automatic hardware detection:

./target/release/sensing-server --source auto --http-port 3000

CSI frames stream via WebSocket at ws://localhost:3001/ws/sensing. Pose, vital signs, and occupancy are published to REST endpoints:

curl http://localhost:3000/api/v1/pose/current
curl http://localhost:3000/api/v1/vital-signs

Latency remains below 50 ms on commodity hardware.

The Dashboard and Visualization Interface

Access the Three.js Observatory at http://localhost:3000. The interface renders:

  • real-time 3D human mesh with UV overlays
  • subcarrier spectrogram manifold
  • breathing/heart-rate waveforms
  • presence heatmap with through-wall confidence scores

WebSocket updates drive smooth animation; optional dual-modal fusion overlays a webcam for debugging only (disabled in production).

Use Cases

Elderly Care and Fall Detection

In assisted-living environments, RuView detects falls within 2 seconds by monitoring sudden velocity spikes and posture collapse. Contactless vital-sign tracking during sleep identifies apnea episodes without wearable discomfort. Caregivers receive instant alerts via local MQTT—no cloud egress required.

Secure Facility Monitoring

Correctional or high-security sites deploy through-wall sensing to maintain continuous occupancy counts and detect loitering without invasive cameras. The system’s adversarial jamming detection flags tampering attempts, satisfying both privacy mandates and security requirements.

Smart Home Automation

Lighting, HVAC, and security systems respond to presence, posture, and activity level using only existing WiFi infrastructure. Gesture recognition from micro-movements enables sign-language interfaces for accessibility, while emotion proxies derived from breathing patterns enhance contextual automation—all without recording video.

Conclusion

RuView marks a fundamental transition from optical to radio-frequency human-computer interaction. By converting ubiquitous WiFi signals into dense 3D pose, contactless vital signs, and presence maps, it realizes the long-promised vision of ambient intelligence that respects privacy by construction. The open-source Rust core, ESP32 compatibility, and self-adapting domain generalization remove the last barriers to widespread adoption in healthcare, security, and smart environments. As WiFi 7 and 6 GHz spectrum expand subcarrier counts and bandwidth, the resolution of WiFi DensePose will only improve, further cementing RF sensing as the default modality for ethical, scalable human monitoring.

You may also like

Subscribe
Notify of
guest

0 Comments
Newest
Oldest Most Voted