航空座舱心理疲劳评估:头戴式传感技术前沿综述

论文信息

  • 标题: The state of the art in assessing mental fatigue in the cockpit using head-worn sensing technology
  • 期刊: Frontiers in Neuroergonomics, Volume 6, 2025
  • 链接: https://doi.org/10.3389/fnrgo.2025.1673268
  • 发表日期: 2026年1月12日
  • 核心方法: EEG + fNIRS + 眼动 + 头戴式多传感器综述

核心创新

这是航空座舱心理疲劳头戴式传感技术的最新全面综述,系统评估了EEG、fNIRS、眼动追踪等头戴式传感器在飞行模拟器和真实飞行中的有效性。关键贡献是明确了SSVEP(稳态视觉诱发电位)可在注意力衰减前5秒预测错误——这是航空安全领域首个秒级预测指标。

与汽车DMS的差异:

  • 航空:高工作负荷→主动疲劳(overload),低工作负荷→被动疲劳(underload)
  • 汽车:以被动疲劳为主(高速公路单调)
  • 航空:仪表扫描模式是核心指标,汽车:PERCLOS是核心指标

方法详解

1. 头戴式传感器技术矩阵

传感器 测量指标 模拟器验证 真实飞行验证 侵入性
EEG theta/alpha/beta, SSVEP ✅ 充分 ⚠️ 有限 高
fNIRS 前额叶氧合血红蛋白 ✅ 充分 ⚠️ 初步 中
眼动追踪 注视, 眨眼, 瞳孔直径 ✅ 充分 ✅ 充分 低
头姿 头部运动, 点头 ✅ 充分 ✅ 充分 低
ECG HRV ✅ 充分 ✅ 充分 中

2. 核心发现:SSVEP预测注意力衰减

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
import numpy as np
from scipy import signal
from scipy.fft import fft
from typing import Tuple

class SSVEPFatiguePredictor:
"""
SSVEP(稳态视觉诱发电位)疲劳预测器

论文发现: SSVEP可在注意力衰减前5秒预测错误
方法: 对仪表盘特定频率闪烁 stimulus → EEG检测同频率响应

航空应用: 飞行员仪表扫描质量实时评估
汽车迁移: 可用于HUD闪烁标记→驾驶员注意力检测
"""

def __init__(self, fs=500, target_freqs=[10, 15, 20]):
"""
Args:
fs: EEG采样率 (Hz)
target_freqs: 目标闪烁频率(仪表盘stimulus频率)
"""
self.fs = fs
self.target_freqs = target_freqs
# 5秒预测窗口
self.prediction_window_s = 5
self.window_samples = int(self.prediction_window_s * fs)

def extract_ssvep(self, eeg_signal: np.ndarray,
channel_idx: int = 0) -> dict:
"""
提取SSVEP响应

Args:
eeg_signal: EEG信号, shape=(channels, samples)
channel_idx: 分析的通道索引

Returns:
dict: 各目标频率的SSVEP信噪比
"""
if eeg_signal.ndim == 1:
eeg_signal = eeg_signal[np.newaxis, :]

signal_data = eeg_signal[channel_idx]

# FFT分析
freqs = np.fft.rfftfreq(len(signal_data), 1/self.fs)
spectrum = np.abs(np.fft.rfft(signal_data))

results = {}
for target in self.target_freqs:
# 找到目标频率附近的bin
target_bin = np.argmin(np.abs(freqs - target))

# 信号功率(目标频率±0.5Hz)
signal_mask = (freqs >= target - 0.5) & (freqs <= target + 0.5)
signal_power = np.sum(spectrum[signal_mask]**2)

# 噪声功率(周围频段)
noise_mask = ((freqs >= target - 3) & (freqs < target - 1)) | \
((freqs > target + 1) & (freqs <= target + 3))
noise_power = np.mean(spectrum[noise_mask]**2)

# SNR
snr = 10 * np.log10(signal_power / (noise_power + 1e-10))

results[f'{target}Hz'] = {
'snr_db': snr,
'signal_power': signal_power,
'noise_power': noise_power,
'amplitude': np.sqrt(signal_power)
}

return results

def predict_attention_lapse(self, eeg_window: np.ndarray) -> dict:
"""
预测5秒内是否会发生注意力衰减

论文发现: SSVEP响应在注意力衰减前5秒显著降低

Args:
eeg_window: 5秒EEG窗口, shape=(channels, samples)

Returns:
dict: 预测结果
"""
ssvep = self.extract_ssvep(eeg_window)

# 所有目标频率的平均SNR
avg_snr = np.mean([v['snr_db'] for v in ssvep.values()])

# 阈值判定(论文基线)
SNR_THRESHOLD = 3.0 # dB
risk_score = max(0, min(1, (SNR_THRESHOLD - avg_snr) / SNR_THRESHOLD))

return {
'avg_snr_db': avg_snr,
'risk_score': risk_score,
'prediction': 'high_risk' if risk_score > 0.6 else
'moderate' if risk_score > 0.3 else 'low',
'time_to_lapse_s': self.prediction_window_s if risk_score > 0.6 else None,
'ssvep_details': ssvep
}


# 测试
if __name__ == "__main__":
np.random.seed(42)
predictor = SSVEPFatiguePredictor(fs=500)

# 模拟5秒EEG数据(500Hz × 5秒 = 2500样本)
t = np.arange(2500) / 500

# 正常状态:SSVEP响应强(10Hz闪烁 + 噪声)
normal_eeg = (5 * np.sin(2*np.pi*10*t) + # 10Hz SSVEP
3 * np.sin(2*np.pi*15*t) + # 15Hz SSVEP
np.random.normal(0, 1, 2500)) # 噪声

# 疲劳状态:SSVEP响应弱
fatigued_eeg = (1.5 * np.sin(2*np.pi*10*t) + # 幅度降低70%
0.8 * np.sin(2*np.pi*15*t) +
np.random.normal(0, 1.5, 2500))

print("=== 正常状态 ===")
result_normal = predictor.predict_attention_lapse(normal_eeg[np.newaxis, :])
print(f"平均SNR: {result_normal['avg_snr_db']:.2f} dB")
print(f"风险评分: {result_normal['risk_score']:.2f}")
print(f"预测: {result_normal['prediction']}")

print("\n=== 疲劳状态 ===")
result_fatigued = predictor.predict_attention_lapse(fatigued_eeg[np.newaxis, :])
print(f"平均SNR: {result_fatigued['avg_snr_db']:.2f} dB")
print(f"风险评分: {result_fatigued['risk_score']:.2f}")
print(f"预测: {result_fatigued['prediction']}")
if result_fatigued.get('time_to_lapse_s'):
print(f"预计{result_fatigued['time_to_lapse_s']}秒内注意力衰减")

3. 飞行员眼动追踪7大指标

基于Somareality和Smart Eye的航空实践:

指标 含义 疲劳/负荷指示 航空应用
仪表注视时长 决策效率和认知负荷 时长↑→负荷↑ 区分经验水平
眼动距离 扫描效率 距离↓→熟练↑ 优化仪表布局
视觉搜索模式 结构化vs非结构化 非结构化→负荷↑ 训练评估
瞳孔直径变化 认知负荷和压力 扩张→负荷↑ 紧急情况评估
眨眼模式 疲劳和紧张 频率↓/时长↑→疲劳 实时疲劳监测
注意力分布 跨仪表的注意力 集中→负荷↑ 设计评估
扫视速度 多任务和态势感知 速度↓→疲劳↑ 性能基线

4. 经验水平vs眼动模式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 飞行员经验与扫描模式对比
EXPERIENCE_DATA = {
'novice': {
'flight_hours': '40-70h',
'aoi_dwell_ms': 274,
'scan_transitions': 'few, repetitive',
'pattern': 'unstructured',
'pupil_change': 'high variance'
},
'experienced': {
'flight_hours': '1500-2150h',
'aoi_dwell_ms': 200,
'scan_transitions': 'moderate, varied',
'pattern': 'semi-structured',
'pupil_change': 'moderate variance'
},
'expert': {
'flight_hours': '3000-10300h',
'aoi_dwell_ms': 167,
'scan_transitions': 'many, comprehensive',
'pattern': 'structured + adaptive',
'pupil_change': 'low variance (stable)'
}
}

# 关键发现: 84%重大航空事故与监控不足有关 (NTSB数据)
# 专家飞行员AOI停留时间比新手短39%

IMS开发启示

1. 航空→汽车技术迁移矩阵

航空指标 汽车DMS对应 迁移难度 价值
仪表注视时长 视线落点(ROI) ✅ 直接 ⭐⭐⭐
眼动距离 扫视范围 ✅ 直接 ⭐⭐
视觉搜索模式 注视序列分析 ⚠️ 需适配 ⭐⭐⭐
瞳孔直径 认知负荷估计 ⚠️ 光照敏感 ⭐⭐
眨眼模式 PERCLOS ✅ 直接 ⭐⭐⭐
扫视速度 反应时间估计 ✅ 直接 ⭐⭐
SSVEP预测 HUD闪烁标记 ⚠️ 需EEG ⭐(远期)

2. 航空安全数据对汽车DMS的警示

航空数据 汽车对应 启示
84%事故涉及监控不足 DMS覆盖率不足 必须全场景覆盖
新手AOI停留39%更长 新手驾驶员注视模式 需差异化阈值
SSVEP提前5秒预测 DMS预警时间窗 5秒是关键窗口
仪表扫描模式区分经验 驾驶经验评估 可用于驾驶员分级
瞳孔直径→认知负荷 瞳孔监测需控光照 红外瞳孔测量更稳定

3. 飞行模拟器→驾驶模拟器

维度 飞行模拟器 驾驶模拟器 IMS建议
场景复杂度 高(多仪表+外部) 中(道路+后视) 简化仪表集
工作负荷 可调(紧急→巡航) 可调(城市→高速) 标准化负荷协议
疲劳诱导 监控任务1h+ 自动驾驶30min+ GoA2/L3场景
数据采集 EEG+眼动+ECG 摄像头+方向盘ECG Phase1精简
评估指标 SSVEP+扫描模式+HRV PERCLOS+视线+HRV 核心3指标

4. 三运输方式疲劳检测对比

维度 航空 铁路 汽车
主要疲劳类型 主动疲劳(过载) 被动疲劳(监控) 混合
核心检测技术 眼动+EEG HRV+呼吸+视觉 PERCLOS+视线
预测窗口 5秒(SSVEP) 60秒(PERCLOS) 3秒(闭眼)
仪表依赖 高(多仪表) 低(监控为主) 中(HUD+道路)
部署环境 模拟器为主 真实运营验证 量产部署
侵入性约束 高(飞行员接受度) 中 低(非接触)
法规要求 CRM制度 GoA2研究阶段 Euro NCAP强制

5. SSVEP在汽车中的应用设想

远期方案(2029+): HUD闪烁标记 + 干电极EEG → SSVEP预测 → 与PERCLOS+HRV融合 → 三级疲劳预测

性能对比

系统 指标 准确率 预测窗口 部署状态
SSVEP+EEG 注意力衰减预测 85% 5秒 实验室
眼动扫描模式 经验水平分类 90% - 模拟器
PERCLOS(汽车) 闭眼比例 88% 60秒 量产
HRV(铁路) 心率变异 82% 60秒 真实运营
眨眼时长 单次闭眼 85% 3秒 量产

总结

航空座舱疲劳研究的核心价值在于预测而非检测——SSVEP提前5秒预测注意力衰减是突破性发现,汽车DMS目前只能”检测已发生的疲劳”,航空技术指明了”预测即将发生的疲劳”的方向。

对IMS的5条可执行建议:

  1. 眼动扫描模式分析比单纯PERCLOS更有价值——可区分经验水平和认知负荷
  2. 5秒预测窗口是DMS警告设计的关键时间尺度——比3秒闭眼检测更前移
  3. 仪表/HUD注视分析可直接迁移到汽车视线落点检测
  4. SSVEP是远期方向(2029+)——需干电极EEG技术成熟
  5. 航空CRM(机组资源管理)制度可借鉴到汽车DMS——疲劳不只是技术问题,也是管理问题

论文链接: https://doi.org/10.3389/fnrgo.2025.1673268
参考: Somareality 7 Eye Tracking Metrics; Smart Eye Aviation; NTSB Aviation Accident Data