SensorIS全称是Sensor Interface Specification,翻译为中文就是传感器接口规范,是由来自全球汽车行业的主机厂、地图和数据提供商、传感器制造商和电信运营商共同组成的开放团体发布的一个标准,具体来说,它定义了车载传感器和专有云以及云与云之间信息交换的接口。
随着智能网联汽车技术发展,汽车搭载的传感器越来越多,未来每辆上路的汽车都会搭载GNSS、IMU、相机(多目、环视等多个相机)、毫米波雷达、激光雷达等不同类型的传感器,再加上原有的雨刮、刹车、里程计等传感器,一辆汽车的传感器数量将达到数十个。如此众多的传感器当然是为了提供更加安全和智能的驾驶功能,但也确实远远超越了车辆本身驾驶功能的设计初衷。毫无疑问,这些传感器将成为车联网、物联网的重要节点,可以实现感知、计算、通讯等多种功能。
而要真正地走向万物互联,就需要定义车载传感器与云端交互的接口。当然可以直接将传感器收集到的所有数据全部上传到云端,但这样肯定是低效的,需要消耗大量的通信流量。在单车算力不断增强并且要实现环境感知与认知的基础上,可以定义一套更加简洁和统一的接口标准,欧系主机厂给出的标准就是SensorIS。基于SensorIS收集的车辆感知数据,可以应用到高精地图更新、实时交通信息统计分析等众多智能交通领域。
车联网或者说以车载传感器为节点的物联网是一个非常大的概念和系统,SensorIS只聚焦其中少数几个方面,从内容和环节划分其适用范围、不适用范围如下。
1)从内容上划分
适用范围:
车到云的数据上传格式(仅限基于车的数据)
云到云的数据交换格式(基于车辆的数据和移动服务所需的其他数据)
云到车的特定请求格式(仅在特定位置和时间请求特定数据)
不适用范围:
定义基础设施或架构
建立数据交换的商业协议框架
为 v2v、v2i、i2v(协同数据)定义数据交换
定义云到车服务
2)从环节划分
适用范围:
数据格式:数据类型、参考系统
编码方法:序列化和反序列化
不适用范围:
隐私:匿名化、假名化
用户界面:编辑器、可视化
验证/错误处理:完好性、规则
安全/用户管理:身份验证、授权、加密、可追踪性
传输:协议、压缩、连接处理、异步/同步
资源管理:优先级、缓存、持久化、并行
操作:部署、维护、监控
1)SensorIS发展历程
2015年6月,Here发布其内部车载传感器数据接口
2016年6月,SensorIS创新平台由欧洲智能交通协会Ertico发起成立,并加入OADF(Open AutoDrive Forum)组织
2016年12月,Here发布内部Job请求接口
2018年6月,发布1.0.0标准,作为工业标准
2019年6月,1.0.0版本公开发布(包含jobs)
2)SensorIS会员如下图所示(截止至2021年7月2日):
SENSORIS 规范将通过双许可模式进行处理。每个版本将首先根据SENSORIS许可在内部发布给SENSORIS的成员。由于SENSORIS致力于向公众开放,所有模式和文档将在12个月的保留期后根据知识共享署名-禁止衍生4.0国际许可(Creative Commons Attribution-NoDerivatives 4.0)向公众发布。根据此许可发布的还包含HTML文档以及Google Protocol Buffers(protobuf)语言的架构描述。
因此,在SensorIS官网可以下载公开的旧版本(https://sensoris.org/presentations/),本文也是基于公开的1.0.0版本进行介绍。
通过Protobuf定义规格(schema),然后通过编译器生成Jave和C++数据范围类。
SensorIS的Protobuf规格定义路径如下,同时可以看出其定义的数据类别(Event Categories)。
SensorIS提供了便捷而详细的文档,打开specification-1.0.0\specification-1.0.0\doc下的index,即可通过HTML的方式访问SensorIS定义的所有字段。
SensorIS包含很多的元数据信息(叫信封,envelope),例如车辆自身信息,来源,版本ID,timestamp等, SensorIS允许设置为空。其他的数据类别(Event)包括:自定位、目标检测、天气、驾驶行为、交叉点属性、道路属性、交通规则、交通事件、交通策略、刹车、动力总成、地图。可以其定义涵盖了车辆自身的所有状态信息以及车辆感知的外部环境信息。
SensorIS定义了传感器识别出的道路交通要素、定位目标甚至可移动目标的数据内容及编码规范,因此可以作为地图变化探测回传的标准规范,在云端聚合、匹配后,可以更新高精地图,实现众包更新。
SensorIS与ADASIS类似,都是先定义了逻辑格式,其物理传输格式有待研究(与车云之间的通信相关),同时加密、认证等也有待研究。
SensorIS的job request机制,待研究和补充。
SensorIS每类消息的详细定义(结构体)举例说明待补充,例如:
车道线:specification-1.0.0\src\sensoris\protobuf\categories目录下的road_attribution.proto包含lane boundary的定义,包含存在性、类型、材质、颜色、形状、宽度等多种属性,且每一种属性都有confidence或者accuracy的说明,这样对于变化检测回传的判断是非常有帮助的。对于虚线,SensorIS专门定义了一个DashStatistics属性,记录单一虚线段长度和空隙距离的统计信息。
交通标志牌:specification-1.0.0\src\sensoris\protobuf\categories目录下的traffic_regulation.proto包含traffic sign的定义,包含存在性、矩形框、形状、类型和取值等多种属性,其中形状和类型与NDS定义看起来是完全一致的。