- 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.
275 lines
10 KiB
Markdown
275 lines
10 KiB
Markdown
# 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 |