Tobii 单摄像头 DMS+OMS:从硬件合一到全舱感知的演进路线

InCabin Europe 2026 专访深度解读

产品信息

  • 公司: Tobii(瑞典,眼动追踪全球龙头)
  • 产品: Tobii AutoSense — 全球首个单摄像头 DMS+OMS 方案
  • 发布场合: InCabin Europe 2026,巴塞罗那,展位 #300
  • 已上路: 超过 100 万辆车,12 个 OEM 项目
  • 合作伙伴: Denso、Hyundai Mobis、Qualcomm
  • 来源: InCabin 专访

核心创新:单摄像头同时完成 DMS + OMS

传统架构 vs Tobii 方案

架构对比

维度 传统双传感器 Tobii 单摄像头
传感器数 2(DMS+OMS) 1
线束 2组 1组
安装空间 2个安装位 1个
校准点 2个 1个
集成复杂度 高 低
成本 高 中低
摄像头规格要求 标准 高(需覆盖全舱)

Tobii 的三阶段演进路线

Stage 1: 单摄像头 DMS+OMS(已量产)

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
138
139
140
141
142
143
144
145
146
147
148
149
150
151
"""
Tobii 单摄像头 DMS+OMS 架构概念实现

核心:一颗高规格 IR 摄像头同时覆盖驾驶员和乘员区域
关键挑战:FOV 需覆盖全舱,算法需同时处理两类任务
"""

from dataclasses import dataclass
from typing import Optional, Tuple
import numpy as np


@dataclass
class SingleCameraConfig:
"""单摄像头配置"""
resolution: Tuple[int, int] = (1600, 1200) # 2MP
fps: int = 30
fov_h: float = 120.0 # 水平视场角(度)
fov_v: float = 90.0 # 垂直视场角
wavelength: int = 940 # nm IR
global_shutter: bool = True
# 关键:宽 FOV 覆盖驾驶员+乘客
# 高分辨率确保远距离乘员细节


@dataclass
class DMSResult:
"""DMS 检测结果"""
face_detected: bool = False
gaze_direction: Tuple[float, float] = (0.0, 0.0) # (pitch, yaw)
perclos: float = 0.0
blink_rate: float = 0.0
distraction_level: float = 0.0
fatigue_level: float = 0.0
head_pose: Tuple[float, float, float] = (0.0, 0.0, 0.0)
identity: Optional[str] = None


@dataclass
class OMSResult:
"""OMS 检测结果"""
seat_occupancy: dict = None # {seat: bool}
person_count: int = 0
child_detected: bool = False
seatbelt_status: dict = None # {seat: bool}
posture_classification: dict = None # {seat: str}
body_pose: dict = None # {seat: keypoints}


class SingleCameraDMSOMS:
"""
Tobii 式单摄像头 DMS+OMS 融合处理器

架构:
1. 统一图像采集 → 单摄像头宽 FOV
2. ROI 分割 → 驾驶员区域 + 乘员区域
3. 并行推理 → DMS 任务 + OMS 任务
4. 融合输出 → 统一座舱状态
"""

def __init__(self, config: SingleCameraConfig):
self.config = config
# ROI 定义(图像中的区域)
self.dms_roi = (0.0, 0.3, 0.5, 1.0) # 左侧 50%
self.oms_roi = (0.3, 0.0, 1.0, 0.7) # 右侧 70%
# 重叠区域用于上下文关联

def process_frame(self, frame: np.ndarray) -> tuple:
"""
处理单帧图像,同时输出 DMS 和 OMS 结果

Args:
frame: shape=(H, W, C), IR 图像

Returns:
dms_result: DMS 检测结果
oms_result: OMS 检测结果
"""
H, W = frame.shape[:2]

# ROI 提取
dms_x1 = int(self.dms_roi[0] * W)
dms_y1 = int(self.dms_roi[1] * H)
dms_x2 = int(self.dms_roi[2] * W)
dms_y2 = int(self.dms_roi[3] * H)
dms_crop = frame[dms_y1:dms_y2, dms_x1:dms_x2]

oms_x1 = int(self.oms_roi[0] * W)
oms_y1 = int(self.oms_roi[1] * H)
oms_x2 = int(self.oms_roi[2] * W)
oms_y2 = int(self.oms_roi[3] * H)
oms_crop = frame[oms_y1:oms_y2, oms_x1:oms_x2]

# 并行推理(实际部署中共享 backbone)
dms_result = self._run_dms(dms_crop)
oms_result = self._run_oms(oms_crop)

# 上下文融合
if dms_result.face_detected and oms_result.person_count > 0:
# 驾驶员和乘员都在 → 整体座舱状态
pass

return dms_result, oms_result

def _run_dms(self, crop: np.ndarray) -> DMSResult:
"""DMS 推理(概念实现)"""
return DMSResult(
face_detected=True,
gaze_direction=(5.0, -10.0),
perclos=12.0,
blink_rate=18,
distraction_level=0.15,
fatigue_level=0.20,
)

def _run_oms(self, crop: np.ndarray) -> OMSResult:
"""OMS 推理(概念实现)"""
return OMSResult(
seat_occupancy={'front_passenger': True, 'rear_left': False},
person_count=1,
child_detected=False,
seatbelt_status={'front_passenger': True},
posture_classification={'front_passenger': 'normal'},
)


# ========== 测试 ==========
if __name__ == "__main__":
config = SingleCameraConfig()
processor = SingleCameraDMSOMS(config)

# 模拟帧
frame = np.random.randint(0, 255, (1200, 1600, 1), dtype=np.uint8)

dms, oms = processor.process_frame(frame)

print("=== 单摄像头 DMS+OMS 结果 ===")
print(f"DMS:")
print(f" 人脸检测: {dms.face_detected}")
print(f" 视线方向: pitch={dms.gaze_direction[0]:.1f}°, "
f"yaw={dms.gaze_direction[1]:.1f}°")
print(f" PERCLOS: {dms.perclos:.1f}%")
print(f" 眨眼频率: {dms.blink_rate} 次/分")
print(f" 分心等级: {dms.distraction_level:.2f}")
print(f" 疲劳等级: {dms.fatigue_level:.2f}")
print(f"OMS:")
print(f" 座椅占用: {oms.seat_occupancy}")
print(f" 乘员数: {oms.person_count}")
print(f" 儿童检测: {oms.child_detected}")
print(f" 安全带: {oms.seatbelt_status}")
print(f" 姿态: {oms.posture_classification}")

Stage 2: 多摄像头扩展(演进中)

Tobii 专访提到从单摄像头向多摄像头演进:

Stage 3: 全舱感知 + ADAS 融合

Tobii 的愿景:内部感知 + 外部 ADAS = 整体情境理解

1
2
3
示例:驾驶员看了一眼右侧后视镜
- 单独 DMS:判定为"分心"(误报)
- DMS + ADAS:车辆正在变道,看后视镜是正确行为(无误报)

DMS 供应商格局(2026年9月)

供应商 来源 优势 客户/规模 产品重心
Smart Eye 研究级眼动仪 24 OEM, 380 车型 前装+商用车队 商用车(巴士/卡车)
Tobii 眼动追踪龙头 100万+车辆, 12 OEM 前装 单摄像头 DMS+OMS
Seeing Machines 驾驶监测专精 深耕最早 前装+商用车 Driver monitoring
emotion3D 被indie收购 芯片+软件整包 前装 合成数据优势
Jungo 后装车队 一体式双镜头 后装车队 VuDrive

关键行业整合趋势

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
"""
DMS 行业整合时间线(2024-2026)
"""

TIMELINE = [
{
'date': '2024',
'event': 'Tobii 收购 Xperi AutoSense',
'impact': 'Tobii 获得车载量产基础',
'significance': '眼动追踪龙头进入车载市场'
},
{
'date': '2025-08',
'event': 'indie Semiconductor 收购 emotion3D',
'impact': 'DMS 从独立软件变为芯片+软件整包',
'significance': '纯软件公司生存空间缩小'
},
{
'date': '2026',
'event': 'Smart Eye 收购 Sightic',
'impact': '扩展商用车队产品线',
'significance': '前装+后装全覆盖'
},
{
'date': '2026-09',
'event': 'NOVELIC + Smart Eye 合作',
'impact': 'Radar + Camera 融合方案',
'significance': '传感器融合成为标配'
},
{
'date': '2026-09',
'event': 'Murata + Smart Eye 合作',
'impact': '60GHz + Camera 融合',
'significance': '多家雷达厂商选择 Smart Eye 软件'
},
{
'date': '2026-09',
'event': 'Tobii InCabin 展示单摄像头方案',
'impact': 'DMS+OMS 合一验证量产',
'significance': '成本优化路径确立'
},
]

for item in TIMELINE:
print(f"[{item['date']}] {item['event']}")
print(f" 影响: {item['impact']}")
print(f" 意义: {item['significance']}")
print()

Tobii 的商业灵活性策略

专访中 Tobii 提出了四种客户合作模式:

模式 客户特征 Tobii 提供 适合场景
完整方案 需要交钥匙方案 生产级软件+集成支持 时间紧迫的 OEM
技术授权 有自研团队 专家咨询+技术指导 大型 OEM 自研
定点支持 遇到具体瓶颈 针对性问题解决 已有方案但卡住
数据服务 缺乏训练数据 角落案例数据+验证 算法公司

核心壁垒

Tobii 在专访中强调了 5 年量产积累的资产:

资产 说明 竞争壁垒
生产级代码 量产验证的软件 非实验室原型
工程经验 集成经验 无法快速复制
验证方法 量产验证流程 认证必需
角落案例数据 真实车辆中的 rare cases 数据飞轮
开发工具 内部工具链 加速集成

对 IMS 开发的启示

1. 单摄像头合一 vs 双传感器

成本对比:

方案 硬件成本 集成成本 性能上限
单摄像头 DMS+OMS 1× 摄像头 1组线束 中高
双传感器 2× 传感器 2组线束 高
单摄像头 + Radar 1×摄像头+1×radar 中等 最高

IMS 选型建议:

  • 成本优先 → 单摄像头方案(Tobii 路线)
  • 性能优先 → Camera + Radar 融合(NOVELIC+Smart Eye 路线)
  • 过渡方案 → 先单摄像头 DMS,后续加 Radar 做 OMS

2. 摄像头规格要求

单摄像头同时做 DMS+OMS 对摄像头规格要求显著提高:

参数 普通DMS摄像头 Tobii级 DMS+OMS
分辨率 1-1.5MP 2-5MP
FOV 60-70° 120°+
帧率 30fps 30-60fps
全局快门 ✅ 必需 ✅ 必需
IR 波长 940nm 940nm
参考型号 OV2311 ST VD56GA / OmniVision OX08D30

3. 算法架构建议

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
"""
IMS 单摄像头 DMS+OMS 算法架构建议

关键设计原则:
1. 共享 backbone,分支 head(降低计算量)
2. ROI 分割但保持上下文关联
3. 时序融合提升稳定性
"""

# 架构示意(伪代码)
"""
Input: IR Frame (1600×1200, 1ch)
↓
[共享 Backbone: MobileNetV3 / EfficientNet-Lite]
↓
├── [DMS Head]
│ ├── Face Detection → 人脸/ landmarks
│ ├── Gaze Estimation → 视线方向
│ ├── Blink Detection → PERCLOS
│ ├── Head Pose → 头部姿态
│ └── Emotion Recognition → 情绪状态
│
├── [OMS Head]
│ ├── Seat Occupancy → 座椅占用
│ ├── Person Detection → 乘员检测
│ ├── Seatbelt Status → 安全带
│ ├── Posture Classification → 姿态分类
│ └── Child Detection → 儿童检测
│
└── [Fusion Head]
├── Context Understanding → 上下文理解
└── Cabin State → 整体座舱状态
"""

4. 从 L2 到 L3 的关键

Tobii 专访提到一个关键点:

“从 L2 到 L3,内部感知必须支持更复杂的驾驶员就绪和接管控制决策”

这与 Minieye DFR 的方向一致 — DMS 必须与 ADAS 融合,不只是检测疲劳,还要评估”功能就绪度”。

结论

Tobii 单摄像头 DMS+OMS 方案验证了一个重要趋势:通过算法提升而非增加硬件来降低成本。但其专访也揭示了一个更深刻的观点 — 技术已验证,下一个瓶颈是采纳壁垒(adoption barriers),包括不同 OEM 的架构差异、数据需求、验证流程。

对 IMS 开发而言,单摄像头方案是成本敏感场景的首选,但需要高规格摄像头和强算法能力。随着 Tobii 向多摄像头和全舱感知演进,IMS 也应规划从单摄像头向多传感器融合的升级路径。


参考链接: