chkmie/hifi-nav-38m
收藏Hugging Face2026-01-28 更新2026-03-29 收录
下载链接:
https://hf-mirror.com/datasets/chkmie/hifi-nav-38m
下载链接
链接失效反馈官方服务:
资源简介:
---
license: cc-by-4.0
task_categories:
- time-series-forecasting
- tabular-classification
- other
tags:
- uav
- navigation
- gps-denied
- sensor-fusion
- electronic-warfare
- integrity-monitoring
- imu
- gnss
- anomaly-detection
- synthetic-data
language:
- en
size_categories:
- 10M<n<100M
---
# HiFi-NAV-38M: High-Fidelity Synchronized IMU-GPS Dataset for Navigation Integrity Monitoring under Electronic Warfare Conditions
## Dataset Description
**HiFi-NAV-38M** is a large-scale synthetic dataset of synchronized Inertial Measurement Unit (IMU) and GPS sensor readings for unmanned aerial vehicle (UAV) navigation under nominal and electronic warfare (EW) conditions. The dataset provides time-aligned multi-sensor data with full ground truth and threat labels, enabling research in navigation integrity monitoring, GPS spoofing/jamming detection, and resilient sensor fusion.
This dataset was generated using a **purpose-built high-fidelity simulation engine** developed by the author for navigation research in contested environments. Custom dataset configurations (scenario mix, threat profiles, sensor parameters, scale) are available on request.
### Key Properties
| Property | Value |
|----------|-------|
| Total Samples | 37,890,000 |
| Total Scenarios | 2,549 |
| IMU Rate | 100 Hz |
| GPS Rate | 10 Hz |
| Simulation Fidelity | High-fidelity physics-based |
| Coordinate Frame | NED (North-East-Down) |
| File Format | JSONL (gzip compressed) |
| Total Size | 6.4 GB (compressed) |
| License | CC-BY-4.0 |
### What Makes This Dataset Unique
Existing public GPS spoofing datasets (e.g., TEXBAT, OAKBAT) provide **GPS-only** recordings without synchronized inertial data. This fundamentally limits their use for multi-sensor integrity monitoring research, where cross-validation between GPS and IMU is the primary detection mechanism.
**HiFi-NAV-38M provides all of the following simultaneously:**
- High-rate IMU (accelerometer + gyroscope) at 100 Hz
- GPS with constellation-level metadata (satellites, HDOP, C/N0) at 10 Hz
- Navigation filter output (estimated position, velocity, errors)
- Ground truth state (position, velocity, attitude)
- Per-sample threat labels (type, active/inactive, GPS denied)
- Flight phase labels
This enables research that requires **synchronized multi-sensor data with ground truth under adversarial conditions** -- a combination not available in existing public datasets.
## Threat Scenarios
| Threat Type | Scenarios | Share | Description |
|-------------|-----------|-------|-------------|
| `none` (Nominal) | 1,060 | 41.6% | Clean flight with nominal sensor noise |
| `jamming` | 735 | 28.8% | RF interference causing GPS signal degradation or denial |
| `spoofing` | 495 | 19.4% | False GPS signals injected to manipulate position solution |
| `drfm` | 259 | 10.2% | Digital Radio Frequency Memory -- coherent replay attack |
Scenarios include varying flight profiles (waypoint navigation, orbit, hover) with threat onset at different mission phases.
## Data Structure
Each line in the JSONL files is a single timestamped sample with the following structure:
### Metadata
| Field | Type | Description |
|-------|------|-------------|
| `meta.scenario` | string | Scenario identifier |
| `meta.scenario_type` | string | Flight profile type |
| `meta.threat_type` | string | `none`, `jamming`, `spoofing`, or `drfm` |
| `meta.sample_index` | int | Index within scenario |
### Ground Truth
| Field | Type | Unit | Description |
|-------|------|------|-------------|
| `timestamp_s` | float | s | Time since scenario start |
| `ground_truth.pos_ned_m` | float[3] | m | True position [North, East, Down] |
| `ground_truth.vel_ned_mps` | float[3] | m/s | True velocity [North, East, Down] |
| `ground_truth.attitude_euler_rad` | float[3] | rad | True attitude [roll, pitch, yaw] |
### IMU Sensor
| Field | Type | Unit | Description |
|-------|------|------|-------------|
| `sensors.imu.accel_body_mps2` | float[3] | m/s^2 | Specific force in body frame [x, y, z] |
| `sensors.imu.gyro_body_rads` | float[3] | rad/s | Angular rate in body frame [x, y, z] |
IMU readings include realistic noise characteristics (bias, random walk).
### GPS Sensor
| Field | Type | Unit | Description |
|-------|------|------|-------------|
| `sensors.gps.valid` | bool | - | GPS fix available |
| `sensors.gps.pos_ned_m` | float[3] | m | Measured position [North, East, Down] |
| `sensors.gps.vel_ned_mps` | float[3] | m/s | Measured velocity [North, East, Down] |
| `sensors.gps.num_satellites` | int | - | Number of visible satellites |
| `sensors.gps.hdop` | float | - | Horizontal Dilution of Precision |
| `sensors.gps.cn0_dbhz` | float | dB-Hz | Carrier-to-noise density ratio |
During jamming, GPS validity degrades. During spoofing and DRFM, GPS reports manipulated positions while appearing valid.
### Navigation Filter Output
| Field | Type | Unit | Description |
|-------|------|------|-------------|
| `navigation.estimated_pos_ned_m` | float[3] | m | Estimated position |
| `navigation.estimated_vel_ned_mps` | float[3] | m/s | Estimated velocity |
| `navigation.position_error_m` | float | m | Euclidean position error vs. ground truth |
| `navigation.velocity_error_mps` | float | m/s | Euclidean velocity error vs. ground truth |
### Labels
| Field | Type | Description |
|-------|------|-------------|
| `labels.threat_active` | bool | Whether a threat is currently active |
| `labels.threat_type` | string | Active threat type or `none` |
| `labels.gps_denied` | bool | Whether GPS is denied at this timestep |
| `labels.flight_phase` | string | Current flight phase (e.g., `cruise`) |
## Usage
### Loading the Data
```python
import gzip
import json
def load_samples(filepath, max_samples=None):
samples = []
with gzip.open(filepath, 'rt') as f:
for i, line in enumerate(f):
if max_samples and i >= max_samples:
break
samples.append(json.loads(line))
return samples
# Load first 1000 samples from first file
samples = load_samples("uav_data_00000.jsonl.gz", max_samples=1000)
# Access fields
for s in samples[:5]:
print(f"t={s['timestamp_s']:.2f}s | "
f"threat={s['labels']['threat_type']} | "
f"pos_err={s['navigation']['position_error_m']:.2f}m | "
f"sats={s['sensors']['gps']['num_satellites']}")
```
### Streaming Large Files
```python
import gzip
import json
from pathlib import Path
data_dir = Path(".")
for gz_file in sorted(data_dir.glob("uav_data_*.jsonl.gz")):
with gzip.open(gz_file, 'rt') as f:
for line in f:
sample = json.loads(line)
if sample['labels']['threat_active']:
# Handle threat sample
pass
```
### Extracting NumPy Arrays
```python
import numpy as np
import gzip, json
imu_data = []
with gzip.open("uav_data_00000.jsonl.gz", 'rt') as f:
for line in f:
s = json.loads(line)
imu_data.append(s['sensors']['imu']['accel_body_mps2'])
accel = np.array(imu_data) # Shape: (N, 3)
print(f"Mean gravity: {np.mean(np.linalg.norm(accel, axis=1)):.3f} m/s^2")
```
## Generation
This dataset was produced using a high-fidelity UAV navigation simulation engine developed by the author. The engine models multi-sensor dynamics under nominal and adversarial conditions with physics-based fidelity.
**Custom datasets** with tailored scenario configurations, threat profiles, sensor parameters, or larger scale are available on request. Contact the author for collaboration or licensing inquiries.
## Intended Uses
- **Navigation integrity monitoring:** Training and evaluating detection algorithms for GPS manipulation
- **Sensor fusion research:** Developing IMU-GPS fusion methods robust to adversarial conditions
- **Anomaly detection benchmarks:** Binary/multi-class classification of threat conditions
- **Resilient PNT research:** Studying degradation patterns under electronic warfare
## Limitations
- Synthetic data -- real-world sensor artifacts (temperature drift, vibration coupling, antenna patterns) are modeled statistically, not from hardware measurements
- Single-vehicle scenarios (no multi-agent or swarm configurations)
- NED frame relative to scenario start (no absolute geodetic coordinates)
## Citation
```bibtex
@dataset{foss2026hifnav,
author = {Foss, David Tom},
title = {{HiFi-NAV-38M}: High-Fidelity Synchronized {IMU-GPS} Dataset
for Navigation Integrity Monitoring under Electronic Warfare Conditions},
year = {2026},
publisher = {Hugging Face},
url = {https://huggingface.co/datasets/chkmie/hifi-nav-38m}
}
```
## Author
**David Tom Foss**
Independent Researcher
ORCID: [0009-0004-0289-7154](https://orcid.org/0009-0004-0289-7154)
Contact: david@foss.com.de
Custom dataset generation and research collaboration inquiries welcome.
## License
This dataset is released under [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/). You are free to share and adapt the data for any purpose, provided appropriate credit is given.
提供机构:
chkmie



