feat: Add wifi-Mat disaster detection enhancements

Implement 6 optional enhancements for the wifi-Mat module:

1. Hardware Integration (csi_receiver.rs + hardware_adapter.rs)
   - ESP32 CSI support via serial/UDP
   - Intel 5300 BFEE file parsing
   - Atheros CSI Tool integration
   - Live UDP packet streaming
   - PCAP replay capability

2. CLI Commands (wifi-densepose-cli/src/mat.rs)
   - `wifi-mat scan` - Run disaster detection scan
   - `wifi-mat status` - Check event status
   - `wifi-mat zones` - Manage scan zones
   - `wifi-mat survivors` - List detected survivors
   - `wifi-mat alerts` - View and acknowledge alerts
   - `wifi-mat export` - Export data in various formats

3. REST API (wifi-densepose-mat/src/api/)
   - Full CRUD for disaster events
   - Zone management endpoints
   - Survivor and alert queries
   - WebSocket streaming for real-time updates
   - Comprehensive DTOs and error handling

4. WASM Build (wifi-densepose-wasm/src/mat.rs)
   - Browser-based disaster dashboard
   - Real-time survivor tracking
   - Zone visualization
   - Alert management
   - JavaScript API bindings

5. Detection Benchmarks (benches/detection_bench.rs)
   - Single survivor detection
   - Multi-survivor detection
   - Full pipeline benchmarks
   - Signal processing benchmarks
   - Hardware adapter benchmarks

6. ML Models for Debris Penetration (ml/)
   - DebrisModel for material analysis
   - VitalSignsClassifier for triage
   - FFT-based feature extraction
   - Bandpass filtering
   - Monte Carlo dropout for uncertainty

All 134 unit tests pass. Compilation verified for:
- wifi-densepose-mat
- wifi-densepose-cli
- wifi-densepose-wasm (with mat feature)
This commit is contained in:
Claude
2026-01-13 18:23:03 +00:00
parent 8a43e8f355
commit 6b20ff0c14
25 changed files with 14452 additions and 60 deletions

View File

@@ -78,10 +78,12 @@
#![warn(rustdoc::missing_crate_level_docs)]
pub mod alerting;
pub mod api;
pub mod detection;
pub mod domain;
pub mod integration;
pub mod localization;
pub mod ml;
// Re-export main types
pub use domain::{
@@ -121,6 +123,23 @@ pub use integration::{
AdapterError, IntegrationConfig,
};
pub use api::{
create_router, AppState,
};
pub use ml::{
// Core ML types
MlError, MlResult, MlDetectionConfig, MlDetectionPipeline, MlDetectionResult,
// Debris penetration model
DebrisPenetrationModel, DebrisFeatures, DepthEstimate as MlDepthEstimate,
DebrisModel, DebrisModelConfig, DebrisFeatureExtractor,
MaterialType, DebrisClassification, AttenuationPrediction,
// Vital signs classifier
VitalSignsClassifier, VitalSignsClassifierConfig,
BreathingClassification, HeartbeatClassification,
UncertaintyEstimate, ClassifierOutput,
};
/// Library version
pub const VERSION: &str = env!("CARGO_PKG_VERSION");
@@ -165,6 +184,10 @@ pub enum MatError {
/// I/O error
#[error("I/O error: {0}")]
Io(#[from] std::io::Error),
/// Machine learning error
#[error("ML error: {0}")]
Ml(#[from] ml::MlError),
}
/// Configuration for the disaster response system
@@ -417,6 +440,10 @@ pub mod prelude {
LocalizationService,
// Alerting
AlertDispatcher,
// ML types
MlDetectionConfig, MlDetectionPipeline, MlDetectionResult,
DebrisModel, MaterialType, DebrisClassification,
VitalSignsClassifier, UncertaintyEstimate,
};
}