Files
wifi-densepose/plans/phase1-specification/system-requirements.md
rUv f3c77b1750 Add WiFi DensePose implementation and results
- Implemented the WiFi DensePose model in PyTorch, including CSI phase processing, modality translation, and DensePose prediction heads.
- Added a comprehensive training utility for the model, including loss functions and training steps.
- Created a CSV file to document hardware specifications, architecture details, training parameters, performance metrics, and advantages of the model.
2025-06-07 05:23:07 +00:00

275 lines
10 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# System Requirements Specification (SRS)
## WiFi-DensePose System
### Document Information
- **Version**: 1.0
- **Date**: 2025-01-07
- **Project**: InvisPose - WiFi-Based Dense Human Pose Estimation
- **Status**: Draft
---
## 1. Introduction
### 1.1 Purpose
This document specifies the system requirements for the WiFi-DensePose system, a revolutionary privacy-preserving human pose estimation platform that transforms commodity WiFi infrastructure into a powerful human sensing system.
### 1.2 Scope
The system enables real-time full-body tracking through walls using standard mesh routers, achieving 87.2% detection accuracy while maintaining complete privacy preservation without cameras or optical sensors.
### 1.3 Definitions and Acronyms
- **CSI**: Channel State Information - WiFi signal characteristics containing amplitude and phase data
- **DensePose**: Dense human pose estimation mapping 2D detections to 3D body models
- **MIMO**: Multiple-Input Multiple-Output antenna configuration
- **AP@50**: Average Precision at 50% Intersection over Union
- **FPS**: Frames Per Second
- **RTMP**: Real-Time Messaging Protocol
---
## 2. Overall Description
### 2.1 Product Perspective
The WiFi-DensePose system operates as a standalone platform that integrates with existing WiFi infrastructure to provide human sensing capabilities across multiple domains including healthcare, retail, and security applications.
### 2.2 Product Functions
- Real-time human pose estimation through WiFi signals
- Multi-person tracking and identification
- Cross-wall detection capabilities
- Domain-specific analytics and monitoring
- Live streaming and visualization
- API-based integration with external systems
### 2.3 User Classes
- **Healthcare Providers**: Elderly care monitoring, patient activity tracking
- **Retail Operators**: Customer analytics, occupancy monitoring
- **Security Personnel**: Intrusion detection, perimeter monitoring
- **Developers**: API integration, custom application development
- **System Administrators**: Deployment, configuration, maintenance
---
## 3. Hardware Requirements
### 3.1 WiFi Router Requirements
#### 3.1.1 Compatible Hardware
- **Primary**: Atheros-based routers (TP-Link Archer series, Netgear Nighthawk)
- **Secondary**: Intel 5300 NIC-based systems
- **Alternative**: ASUS RT-AC68U series
#### 3.1.2 Antenna Configuration
- **Minimum**: 3×3 MIMO antenna configuration
- **Spatial Diversity**: Required for CSI spatial measurements
- **Frequency Bands**: 2.4GHz and 5GHz support
#### 3.1.3 Firmware Requirements
- **Base**: OpenWRT firmware compatibility
- **Patches**: CSI extraction patches installed
- **Monitor Mode**: Capability for monitor mode operation
- **Data Streaming**: UDP data stream support
#### 3.1.4 Cost Constraints
- **Target Cost**: ~$30 per router unit
- **Total System**: Under $100 including processing hardware
- **Scalability**: 10-100x cost reduction vs. LiDAR alternatives
### 3.2 Processing Hardware Requirements
#### 3.2.1 Minimum Specifications
- **CPU**: Multi-core processor (4+ cores recommended)
- **RAM**: 8GB minimum, 16GB recommended
- **Storage**: 50GB available space
- **Network**: Gigabit Ethernet for CSI data streams
#### 3.2.2 GPU Acceleration (Optional)
- **CUDA Support**: NVIDIA GPU with CUDA capability
- **Memory**: 4GB+ GPU memory for real-time processing
- **Performance**: Sub-100ms processing latency target
#### 3.2.3 Network Infrastructure
- **Bandwidth**: Minimum 100Mbps for CSI data collection
- **Latency**: Low-latency network for real-time processing
- **Reliability**: Stable connection for continuous operation
---
## 4. Software Requirements
### 4.1 Operating System Support
- **Primary**: Linux (Ubuntu 20.04+, CentOS 8+)
- **Secondary**: Windows 10/11 with WSL2
- **Container**: Docker support for deployment
### 4.2 Runtime Dependencies
- **Python**: 3.8+ with pip package management
- **PyTorch**: GPU-accelerated deep learning framework
- **OpenCV**: Computer vision and image processing
- **FFmpeg**: Video encoding for streaming
- **FastAPI**: Web framework for API services
### 4.3 Development Dependencies
- **Testing**: pytest, unittest framework
- **Documentation**: Sphinx, markdown support
- **Linting**: flake8, black code formatting
- **Version Control**: Git integration
---
## 5. Performance Requirements
### 5.1 Accuracy Metrics
- **Primary Target**: 87.2% AP@50 under optimal conditions
- **Cross-Environment**: 51.8% AP@50 minimum performance
- **Multi-Person**: Support for up to 5 individuals simultaneously
- **Tracking Consistency**: Minimal ID switching during occlusion
### 5.2 Real-Time Performance
- **Processing Rate**: 10-30 FPS depending on hardware
- **End-to-End Latency**: Under 100ms on GPU systems
- **Startup Time**: System ready within 30 seconds
- **Memory Usage**: Stable operation without memory leaks
### 5.3 Reliability Requirements
- **Uptime**: 99.5% availability for continuous operation
- **Error Recovery**: Automatic recovery from transient failures
- **Data Integrity**: No data loss during normal operation
- **Graceful Degradation**: Reduced performance under resource constraints
### 5.4 Scalability Requirements
- **Concurrent Users**: Support 100+ API clients
- **Data Throughput**: Handle continuous CSI streams
- **Storage Growth**: Efficient data management for historical data
- **Horizontal Scaling**: Support for distributed deployments
---
## 6. Security Requirements
### 6.1 Privacy Protection
- **No Visual Data**: Complete elimination of camera-based sensing
- **Anonymous Tracking**: Pose data without identity information
- **Data Encryption**: Encrypted data transmission and storage
- **Access Control**: Role-based access to system functions
### 6.2 Network Security
- **Secure Communication**: HTTPS/WSS for all external interfaces
- **Authentication**: API key-based authentication
- **Input Validation**: Comprehensive input sanitization
- **Rate Limiting**: Protection against abuse and DoS attacks
### 6.3 Data Protection
- **Local Processing**: On-premises data processing capability
- **Data Retention**: Configurable data retention policies
- **Audit Logging**: Comprehensive system activity logging
- **Compliance**: GDPR and healthcare privacy compliance
---
## 7. Environmental Requirements
### 7.1 Physical Environment
- **Operating Temperature**: 0°C to 40°C
- **Humidity**: 10% to 90% non-condensing
- **Ventilation**: Adequate cooling for processing hardware
- **Power**: Stable power supply with UPS backup recommended
### 7.2 RF Environment
- **Interference**: Tolerance to common WiFi interference
- **Range**: Effective operation within 10-30 meter range
- **Obstacles**: Through-wall detection capability
- **Multi-Path**: Robust operation in complex RF environments
### 7.3 Installation Requirements
- **Router Placement**: Strategic positioning for coverage
- **Network Configuration**: Isolated or VLAN-based deployment
- **Calibration**: Environmental baseline establishment
- **Maintenance Access**: Physical and remote access for updates
---
## 8. Compliance and Standards
### 8.1 Regulatory Compliance
- **FCC Part 15**: WiFi equipment certification
- **IEEE 802.11**: WiFi standard compliance
- **IEEE 802.11bf**: Future WiFi sensing standard compatibility
- **Local Regulations**: Regional RF emission compliance
### 8.2 Industry Standards
- **ISO 27001**: Information security management
- **HIPAA**: Healthcare data protection (where applicable)
- **GDPR**: European data protection regulation
- **SOC 2**: Service organization control standards
---
## 9. Quality Attributes
### 9.1 Usability
- **Installation**: Automated setup and configuration
- **Interface**: Intuitive web-based dashboard
- **Documentation**: Comprehensive user and API documentation
- **Support**: Multi-language support for international deployment
### 9.2 Maintainability
- **Modular Design**: Component-based architecture
- **Logging**: Comprehensive system and error logging
- **Monitoring**: Real-time system health monitoring
- **Updates**: Rolling updates without service interruption
### 9.3 Portability
- **Cross-Platform**: Support for multiple operating systems
- **Containerization**: Docker-based deployment
- **Cloud Compatibility**: Support for cloud deployment
- **Hardware Independence**: Adaptation to different hardware configurations
---
## 10. Constraints and Assumptions
### 10.1 Technical Constraints
- **WiFi Dependency**: Requires compatible WiFi hardware
- **Processing Power**: Performance scales with available compute resources
- **Network Bandwidth**: CSI data requires significant bandwidth
- **Environmental Factors**: Performance affected by RF environment
### 10.2 Business Constraints
- **Cost Targets**: Maintain affordability for widespread adoption
- **Time to Market**: Rapid deployment capability
- **Regulatory Approval**: Compliance with local regulations
- **Intellectual Property**: Respect for existing patents and IP
### 10.3 Assumptions
- **Network Stability**: Reliable network infrastructure
- **Power Availability**: Stable power supply
- **User Training**: Basic technical competency for deployment
- **Maintenance**: Regular system maintenance and updates
---
## 11. Acceptance Criteria
### 11.1 Functional Acceptance
- **Pose Detection**: Successful human pose estimation
- **Multi-Person**: Concurrent tracking of multiple individuals
- **Real-Time**: Sub-100ms latency performance
- **API Functionality**: All specified endpoints operational
### 11.2 Performance Acceptance
- **Accuracy**: Meet specified AP@50 targets
- **Throughput**: Achieve target FPS rates
- **Reliability**: 99.5% uptime over 30-day period
- **Resource Usage**: Operate within specified hardware limits
### 11.3 Integration Acceptance
- **External APIs**: Successful integration with specified services
- **Streaming**: Functional Restream integration
- **Webhooks**: Reliable event notification delivery
- **MQTT**: Successful IoT ecosystem integration
// TEST: Verify all hardware requirements are met during system setup
// TEST: Validate performance metrics under various load conditions
// TEST: Confirm security requirements through penetration testing
// TEST: Verify compliance with regulatory standards
// TEST: Validate acceptance criteria through comprehensive testing