CN110400391A - 车载数据处理方法和装置 - Google Patents
车载数据处理方法和装置 Download PDFInfo
- Publication number
- CN110400391A CN110400391A CN201910689954.0A CN201910689954A CN110400391A CN 110400391 A CN110400391 A CN 110400391A CN 201910689954 A CN201910689954 A CN 201910689954A CN 110400391 A CN110400391 A CN 110400391A
- Authority
- CN
- China
- Prior art keywords
- information
- data
- analyzed
- stored
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0841—Registering performance data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Traffic Control Systems (AREA)
Abstract
本公开提供了一种车载数据处理方法,该方法包括:当车机系统处于自动驾驶状态时,接收消息发送模块发送的消息信息;将所述消息信息写入至内存中预设的定长循环队列中;检测所述车机系统是否切换为人工控制状态;当检测出所述车机系统切换为人工控制状态时,将所述定长循环队列中所存储的消息信息作为待分析数据提取至硬盘数据库进行存储。本公开还提供了一种车载数据处理装置。本发明适用于自动驾驶,尤其是自主泊车场景。
Description
技术领域
本公开实施例涉及计算机技术领域,特别涉及车载数据处理方法和装置。
背景技术
自动驾驶技术指的是机动车辆内的车机系统依靠人工智能、视觉计算、雷达、监控装置和全球定位系统协同合作,让车机系统可以在没有任何人类主动的操作下,自动安全地操作机动车辆。随着计算机技术的发展,自动驾驶技术日渐成熟,给人们带来了巨大的便利。
但在自动驾驶过程中,不可避免的会出现运行故障,这就需要管理人员能够在出现故障后快速地定位到问题,现有技术中车机系统主要通过ROS(Robot OperatingSystem,机器人操作系统)系统自带的工具包(即,ROSbag工具包)来对自动驾驶过程中所产生的消息信息进行录制,这种记录消息信息的方式占用了较多的系统资源,影响了线上的稳定运行;另外,在进行问题定位时,是通过在录制结束后用肉眼观看回放录制的ROS包(一种数据包)来进行定位的,这也导致定位问题的效率较低。
发明内容
本公开实施例旨在解决现有技术中存在的问题之一,提出了一种车载数据处理方法和装置。
第一方面,本公开实施例提供了一种车载数据处理方法,包括:
当车机系统处于自动驾驶状态时,接收消息发送模块发送的消息信息;
将所述消息信息写入至内存中预设的定长循环队列中;
检测所述车机系统是否切换为人工控制状态;
当检测出所述车机系统切换为人工控制状态时,将所述定长循环队列中所存储的消息信息作为待分析数据提取至硬盘数据库进行存储。
在一些实施例中,所述将所述消息信息写入至内存中预设的定长循环队列中的步骤具体包括:
将所述消息信息序列化为二进制流;
将所述二进制流存储至所述定长循环队列中。
在一些实施例中,所述将所述定长循环队列中所存储的数据作为待分析数据提取至硬盘数据库进行存储的步骤具体包括:
将所述定长循环队列中所存储的二进制流反序列化为消息信息,以作为待分析数据;
将所述待分析数据提取至硬盘数据库进行存储。
在一些实施例中,在所述将所述定长循环队列中所存储的数据提取至硬盘数据库进行存储的步骤之后,还包括:
接收用户发出的分析指令;
将所述硬盘数据库所存储的所述待分析数据提取至内存;
基于预设分析算法从提取至内存的所述待分析数据中确定出异常消息信息。
在一些实施例中,所述消息信息配置有时间戳;
所述基于预设分析算法从提取至内存的所述待分析数据中确定出异常消息信息的步骤具体包括:
根据各消息信息的时间戳,按照时间先后顺序来对提取至内存的各所述消息信息进行排序;
基于预设分析算法从排序后的消息信息中确定出异常消息信息及其对应的时间戳。
在一些实施例中,基于预设分析算法从排序后的消息信息中确定出异常消息信息及其对应的时间戳的步骤具体包括:
根据同类消息信息所对应的发送频率和数据跳变值来确定出异常消息信息;
提取出异常消息信息的时间戳。
在一些实施例中,所述消息信息配置有时间戳;
所述将所述定长循环队列中所存储的数据提取至硬盘数据库进行存储的步骤之后,还包括:
接收用户发出的提取指令,所述提取指令中包含有用户需求信息;
根据所述用户需求信息,从所述硬盘数据库中提取出与所述用户需求信息相匹配的消息信息,以作为需求待分析数据。
在一些实施例中,所述用户需求信息包括时间信息;所述消息信息配置有时间戳;
所述根据所述用户需求信息从所述硬盘数据库中提取出与所述用户需求信息相匹配的消息信息,以作为需求待分析数据的步骤具体包括:
根据所述时间信息,从所述硬盘数据库中提取出时间戳与所述时间信息相匹配的消息信息,以作为所述需求待分析数据。
在一些实施例中,所述用户需求信息包括消息信息的类型信息;所述消息信息中包含有类型标识信息;
所述根据所述用户需求信息从所述硬盘数据库中提取出与所述用户需求信息相匹配的消息信息,以作为需求待分析数据的步骤具体包括:
根据所述类型信息,从所述硬盘数据库中提取出消息信息的类型标识信息与所述类型信息相匹配的消息信息,以作为所述需求待分析数据。
另一方面,本公开还提供一种车载数据处理装置,包括:
第一接收模块,用于在车机系统处于自动驾驶状态时,接收消息发送模块发送的消息信息;
存储模块,包括预设在内存中的定长循环队列,所述定长循环队列用于存储所述第一接收模块所接收到的消息信息;
写入模块,用于将所述第一接收模块所接收到的消息信息写入至所述定长循环队列中;
检测模块,用于检测所述车机系统是否切换为人工控制状态;
第一提取模块,用于当所述检测模块检测出所述车机系统切换为人工控制状态时,将所述定长循环队列中所存储的消息信息作为待分析数据提取至硬盘数据库进行存储。
在一些实施例中,所述写入模块具体包括:
序列化单元,用于将所述消息信息序列化为二进制流;
写入单元,用于将所述序列化单元所生成的二进制流存储至所述定长循环队列中。
在一些实施例中,所述第一提取模块具体包括:
反序列化单元,用于将所述定长循环队列中所存储的二进制流反序列化为消息信息,以作为待分析数据;
提取单元,用于将所述反序列化单元所生成的所述待分析数据提取至硬盘数据库进行存储。
在一些实施例中,所述装置还包括:
第二接收模块,用于接收用户发出的分析指令;
第二提取模块,用于在所述第二接收模块接收到分析指令后,将所述硬盘数据库所存储的所述待分析数据提取至内存;
分析模块,用于基于预设分析算法从第二提取模块提取至内存的所述待分析数据中确定出异常消息信息。
在一些实施例中,所述消息信息配置有时间戳;
所述分析模块具体包括:
排序单元,用于根据各消息信息的时间戳,按照时间先后顺序来对提取至内存的各所述消息信息进行排序;
分析单元,用于基于预设分析算法从经所述排序单元排序后的各消息信息中确定出异常消息信息及其对应的时间戳。
在一些实施例中,所述分析单元具体用于根据同类消息信息所对应的发送频率和数据跳变值来确定出异常消息信息,并提取出异常消息信息的时间戳。
在一些实施例中,所述消息信息配置有时间戳;
所述装置还包括:
第三接收模块,用于接收用户发出的提取指令,所述提取指令中包含有用户需求信息;
第三提取模块,用于在所述第三接收模块接收到所述提取指令后,根据所述用户需求信息,从所述硬盘数据库中提取出与所述用户需求信息相匹配的消息信息,以作为需求待分析数据。
在一些实施例中,所述用户需求信息包括时间信息;所述消息信息配置有时间戳;
所述第三提取模块具体用于在所述第三接收模块接收到所述提取指令后,根据所述时间信息,从所述硬盘数据库中提取出时间戳与所述时间信息相匹配的消息信息,以作为所述需求待分析数据。
在一些实施例中,所述用户需求信息包括消息信息的类型信息;所述消息信息包括类型标识信息;
所述第三提取模块具体用于在所述第三接收模块接收到所述提取指令后,根据所述类型信息,从所述硬盘数据库中提取出消息信息的类型标识信息与所述类型信息相匹配的消息信息,以作为所述需求待分析数据。
还一方面,本公开还提供一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例所提供的方法。
再一方面,本公开还提供一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现本公开实施例所提供的方法。
本公开实施例提供的车载数据处理方法和装置,将车机系统自动驾驶过程中不断接收到的消息信息存储在一个定长循环队列中,并在车机系统由自动驾驶状态切换为人工控制状态时,将定长循环队列中的数据提取出来以作为待分析数据来分析定位问题,使得所记录到的待分析数据仅仅为车机系统由自动驾驶状态进入人工控制状态前的一段时间内的数据,该时间段内的数据包含了导致车机系统发生故障的数据,相较于现有技术,本公开实施例仅需要在内存中维护一个定长队列即可记录到包含有故障数据的消息信息,避免了安装运行工具包来录制数据,从而提高了系统的资源利用率。
附图说明
附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开,并不构成对本公开的限制。通过参考附图对详细示例实施例进行描述,以上和其他特征和优点对本领域技术人员将变得更加显而易见,在附图中:
图1为本公开实施例提供的一种车载数据处理方法的流程图;
图2为本公开实施例提供的另一种车载数据处理方法的流程图;
图3为本公开实施例提供的再一种车载数据处理方法的流程图;
图4为本公开实施例提供的还一种车载数据处理方法的流程图;
图5为本公开实施例提供的一种车载数据处理装置的结构示意图;
图6为本公开实施例提供的另一种车载数据处理装置的结构示意图;
图7为本公开实施例提供的再一种车载数据处理装置的结构示意图;
图8为本公开实施例提供的还一种车载数据处理装置的结构示意图。
具体实施方式
为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图对本发明提供的车载数据处理方法和装置进行详细描述。
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、组件和/或其群组。
本文所述实施例可借助本公开的理想示意图而参考平面图和/或截面图进行描述。因此,可根据制造技术和/或容限来修改示例图示。因此,实施例不限于附图中所示的实施例,而是包括基于制造工艺而形成的配置的修改。因此,附图中例示的区具有示意性属性,并且图中所示区的形状例示了元件的区的具体形状,但并不旨在是限制性的。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
在实际应用中,当车机系统处于自动驾驶状态时,若发生故障,车机系统会自动切换至人工控制状态,通过对车机系统处于自动驾驶状态过程中的数据进行处理能够确定出所发生的故障问题。本公开所提供的车载数据处理方法和装置适用于该场景中,特别适用于自主泊车场景中的问题定位。
本公开实施例提供一种车载数据处理方法,如图1所示,该方法包括:
步骤S101,接收消息发送模块发送的消息信息。
本公开实施例中,当车机系统处于自动驾驶状态时,接收消息发送模块所发送的消息信息,其中,消息发送模块指的是车机在自动驾驶过程中车机系统上的用于进行数据通信的功能模块,例如,消息发送模块可以为超声波模块、摄像头模块、巡航模块、泊车模块以及出库模块等,在实际应用中,这些消息发送模块在将消息信息发送给其他模块的同时,还将消息信息发送给本公开所提供的车载数据处理装置,以便于车载数据处理装置能够接收各消息发送模块发送的消息信息,并对消息信息进行处理;消息信息指的是各消息发送模块进行通信的数据,可以为各种测量数据,也可以为各种控制指令。
步骤S102,将消息信息写入至内存中预设的定长循环队列中。
本公开实施例中,内存中预设有一个定长循环队列,该定长循环队列具有固定的长度,用于存储消息发送模块发送的消息信息,当定长循环队列中的存储空间已满时,新的消息信息将覆盖掉该定长循环队列中最早插入的消息信息,从而使得该定长循环队列中所存储的消息信息始终为固定数量的且最新的消息信息。向循环队列中插入数据已是本领域的公知常识,本公开实施例不再赘述。
步骤S103,检测车机系统是否切换为人工控制状态。
当车机系统出现运行故障时,车机系统由自动驾驶状态切换为人工驾驶状态,当检测出车机系统切换为人工控制状态时,执行下述步骤S104。
步骤S104,将定长循环队列中所存储的消息信息作为待分析数据提取至硬盘数据库进行存储。
本公开实施例中,当检测到车机系统切换为人工控制状态时,说明车机系统在自动驾驶过程中出现故障,此时此刻,定长循环队列中所存储的消息信息为车机系统切换为人工控制状态的时刻之前的一段时间内所存储的消息信息,而该时间段内的消息信息中必然包含了在自动驾驶过程中导致故障发生的消息信息,因此,在检测到车机系统切换为人工控制状态时,将定长循环队列中所存储的消息信息提取出来作为待分析数据,能够准确获取到导致自动驾驶故障的消息信息;同时,由于循环队列是定长的,因而所提取的待分析数据的数据量较小,从而避免后续对多余的数据进行分析。需要说明的是,本公开中,待分析数据是由多条消息信息构成的。
本公开实施例提供的车载数据处理方法,将车机系统自动驾驶过程中不断接收到的消息信息存储在一个定长循环队列中,并在车机系统由自动驾驶状态切换为人工控制状态时,将定长循环队列中的数据提取出来以作为待分析数据来分析定位问题,使得所记录到的待分析数据仅仅为车机系统由自动驾驶状态进入人工控制状态前的一段时间内的数据,该时间段内的数据包含了导致车机系统发生故障的数据,相较于现有技术,本公开实施例仅需要在内存中维护一个定长队列即可记录到包含有故障数据的消息信息,避免了安装运行工具包来录制数据,从而提高了系统的资源利用率。
在一些实施例中,步骤S102和S104分别具体包括如下步骤,如图2所示。
步骤S102具体包括:
步骤S1021,将消息信息序列化为二进制流。
步骤S1022,将二进制流存储至所述定长循环队列中。
步骤S104具体包括:
步骤S1041,将定长循环队列中所存储的二进制流反序列化为消息信息,以作为待分析数据。
步骤S1042,将待分析数据提取至硬盘数据库进行存储。
二进制流指的是将文本流经过序列化转换而形成的二进制数字序列,是计算机的一种数据存储格式,二进制流相较于文本流所需要的存储空间更小。
本公开实施例中,通过将消息信息序列化为二进制流,能够进一步节省存储空间,从而使所维护的定长循环队列的存储空间的设置要求进一步降低,进而进一步提高系统的资源利用率。
当然,在另外一些实施例中,步骤S104也可不将定长循环队列中的二进制流反序列化存储至硬盘数据库中,还可以直接将定长循环队列中的二进制流提取至硬盘数据库中进行存储,并后续采用相应的分析算法直接对硬盘数据库中的二进制流进行分析,具体是否将定长循环队列中的二进制流反序列化,可由本领域技术人员根据所设置的分析算法的需求以及存储空间的需求进行选择。
在一些实施例中,在将定长循环队列中所存储的消息信息存储至硬盘数据库中之后,还包括问题分析过程,如图3所示,在步骤S104之后,包括:
步骤S105,接收用户发出的分析指令。
步骤S106,将硬盘数据库所存储的待分析数据提取至内存中。
步骤S107,基于预设分析算法从提取至内存的待分析数据中确定出异常消息信息。
本公开实施例中,当接收到用户发出的分析指令时,将硬盘数据库内所存储的待分析数据再次提取至内存中,并基于预设的分析算法来对所提取出的待分析数据进行分析,以从中确定出异常消息信息。
当然,在一些实施例中,在将硬盘数据库内所存储的待分析数据提取至内存中时,还可以先将所述待分析数据序列化为二进制流,以降低对内存空间的占用,然而,当内存足够大时,也可不必将提取至内存中的待分析数据进行序列化转换。
本公开实施例所提供的车载数据处理方法,在从记录的待分析数据中进行问题分析时,基于预设的分析算法来对待分析数据进行筛选,从而能够自动快速的定位到待分析数据中存在的异常消息信息,相较于现有技术,避免了通过人工肉眼依次识别ros包来进行问题定位,从而提高了定位问题的效率。
在一些实施例中,上述步骤S107可按照如下步骤实现。
步骤S107具体包括:
步骤S1071,根据各消息信息中的时间戳,按照时间先后顺序来对提取至内存的各消息信息进行排序。
步骤S1072,基于预设分析算法从排序后的各消息信息中确定出异常消息信息及其对应的时间戳。
本公开实施例中,每个消息信息都配置有时间戳,该时间戳是对应的待分析数据在由消息发送模块进行发送时所生成的,代表了该消息信息的生成时间。
在对待分析数据进行分析以进行问题定位时,首先根据消息信息所配置的时间戳按时间的先后顺序进行排序,以便于在某些情况下,用户能够针对某些特定时间段的待分析数据进行分析,而后基于预设分析算法对排序后的消息信息进行分析,以从待分析数据中确定出异常消息信息以及该消息信息对应的时间戳,时间戳有助有用户根据时间戳去分析车机系统中其他模块在该时间戳所对应的时间点的运行状态,以便于更好的分析车机系统所发生的故障。
本公开中,预设分析算法为本领域技术人员根据自动驾驶的场景(例如,泊车场景、正常行驶场景等)中消息信息所具有的特征而设置。
在一些实施例中,上述步骤S1072中基于预设分析算法从排序后的消息信息中确定出异常消息信息及其对应的时间戳可按照如下方法实现:根据同类消息信息所对应的发送频率和数据跳变值来确定出该消息信息是否异常,并提取出异常消息信息的时间戳。
需要说明的是,本公开中,同类消息信息是指车载数据处理装置接收到的来自同一消息发送模块所发送的消息信息。
具体地,在计算同类消息信息的发送频率时,可由相邻两个同类消息信息的时间戳所代表的时间的差值的倒数表示,即,其中,fn表示当前消息信息的发送频率(待分析数据中第一个消息信息的发送频率不需要计算),Tn表示当前消息信息的时间戳所代表的时间点,Tn-1表示前一个同类消息信息的时间戳所代表的时间点,在计算出同类消息信息的各发送频率后,判断各发送频率是否处于预设范围内,当判断出某一发送频率超出预设范围时,可以认为该发送频率所对应的两个消息信息存在异常,可作为异常消息信息输出,同时还提取出该异常消息信息所对应的时间戳;在检测同类消息信息的数据跳变值是否异常时,计算判断相邻两个同类消息信息的数据值的差值作为数据跳变值,即数据跳变值为ΔD=Dn-Dn-1,其中Dn为当前消息信息的数据值,Dn-1为前一同类消息信息的数据值,通过判断同类消息信息的跳变值是否处于预设范围内而确定出可能存在问题的异常消息信息,并在确定出异常消息信息时,相应提取出该异常消息信息的时间戳。在步骤S1072中,发送频率和数据跳变值其中任意一个指标异常均认为对应的消息信息为异常消息信息。
需要说明的是,本公开实施例中,步骤S105-S107所代表的问题分析过程虽然在步骤S104之后执行,但并不代表在步骤S104之后,立刻执行步骤S105-S107,在实际应用中,还可能是车机系统重复执行了多次自动驾驶至人工控制的切换的过程,即在步骤S101-S104重复执行了多次,硬盘数据库内存储了多组定长循环队列所存储的数据之后,再执行问题分析过程,该场景下对应的技术方案与本公开上述实施例所描述的技术方案实质相同,其也属于本公开所保护的范围,此处不再赘述。
在一些实施例中,在步骤S104之后所进行的问题分析过程可根据用户的需求执行,相应地,如图4所示,在步骤S104之后还包括以下步骤:
步骤S105’,接收用户发出的提取指令,提取指令中包含有用户需求信息。
步骤S106’,根据用户需求信息,从硬盘数据库中提取出与所述用户需求信息相匹配的消息信息,以作为需求待分析数据。
本公开实施例中,用户所发出的提取指令中包含有用户需求信息,该用户需求信息表征用户预提取的消息信息应满足的条件,在接收到该提取指令后,将硬盘数据库内所存储的消息信息与提取指令中所包含的用户需求信息进行匹配,以筛选出符合用户需求的需求待分析数据,从而能够方便用户根据自身的需求来获取消息信息,以便于做更高效和更细致化的问题定位。
在一些实施例中,用户需求信息可以包括时间信息,该时间信息表示用户想要提取的消息信息所归属的时间段,当用户需要对某些特定时间段进行问题定位时,可以在提取指令中设置包含有该时间信息;对应的,每个消息信息都配置有时间戳,当车载数据处理装置接收到包含该时间信息的提取指令时,通过将硬盘数据库内所存储的消息信息所配置的时间戳与提取指令中的时间信息进行匹配,而筛选出符合用户需求的需求待分析数据。
在另一些实施例中,用户需求信息可以包括消息信息的类型信息,该类型信息表征发送该消息信息的消息发送模块的种类,当用户需要对某些特定的消息发送模块进行问题定位时,可以在提取指令中设置包含有类型信息,从而使得用户能够获取到针对某些特定消息发送模块的消息信息,进而提高后续的问题定位效率;对应的,消息信息中包含有类型标识信息,该类型标识信息为消息信息的一部分,用于在对应的消息发送模块发送该消息信息时唯一区别该消息发送模块,当车载数据处理装置接收到包含该类型信息的提取指令时,通过将硬盘数据库内所存储的消息信息所包含的类型标识信息与提取指令中的类型信息进行匹配而筛选出符合用户需求的需求待分析数据。
需要说明的是,本公开中,需求待分析数据是基于用户的某些需求而从硬盘数据库中的待分析数据中筛选出来的,在后续对该需求待分析数据进行处理时,用户可以采用人工方式进行分析以从中确定出异常消息信息,当然还可以采用本公开中步骤S107中所描述的基于预设分析算法对该需求待分析数据进行分析,具体采用哪种方式进行分析可由本领域技术人员根据实际情况确定,本公开不做具体限定。
本公开提供的上述各方法实施例之间可进行相互组合以形成新的技术方案,组合形成的新技术方案均属于本公开所保护的范围,此处不再赘述。
本公开实施例还提供一种车载数据处理装置,用于实现本公开上述实施例所提供的方法,对于下述即将介绍的装置所包含的各功能模块所具有的功能以及各功能模块之间的交互过程请参考本公开上述所提供的各方法实施例中对应的方法步骤的描述,本公开将不再赘述。
如图5所示,在一些实施例中,该装置包括:第一接收模块11、存储模块12、写入模块13、检测模块14以及第一提取模块15。
其中,第一接收模块11用于在车机系统处于自动驾驶状态时,接收消息发送模块发送的消息信息。具体的,在实际应用中,第一接收模块为设置在装置上的一个接口,当车机系统内的各消息发送模块在向其他模块发送消息信息时,同时还调用本公开实施例所提供的该接口,以便于本公开所提供的车载数据处理装置能够接收各消息发送模块所发送的消息信息,并对消息信息进行处理。
存储模块12包括预设在内存中的定长循环队列,该定长循环队列用于存储第一接收模块11所接收到的消息信息。
写入模块13用于将第一接收模块11所接收到的消息信息写入至定长循环队列中。
检测模块14用于检测车机系统是否切换为人工控制状态,并当检测到车机系统切换为人工控制状态时,指示第一提取模块15将定长循环队列中所存储的消息信息作为待分析数据提取至硬盘数据库进行存储。
本公开实施例所提供的车载数据处理装置,将车机系统自动驾驶过程中不断接收到的消息信息存储在一个定长循环队列中,并在车机系统由自动驾驶状态切换为人工控制状态时,将定长循环队列中的数据提取出来以作为待分析数据来分析定位问题,使得所记录到的待分析数据仅仅为车机系统由自动驾驶状态进入人工控制状态前的一段时间内的数据,该时间段内的数据包含了导致车机系统发生故障的数据,相较于现有技术,本公开实施例仅需要在内存中维护一个定长队列即可记录到包含有故障数据的消息信息,避免了安装运行工具包来录制数据,从而提高了系统的资源利用率。
在一些实施例中,如图6所示,写入模块13具体包括:序列化单元131和写入单元132;其中,序列化单元131用于将消息信息序列化为二进制流;写入单元132用于将序列化单元131所生成的二进制流存储至定长循环队列中。
相应的,第一提取模块15具体包括:反序列单元151和提取单元152;其中,反序列化单元151用于将定长循环队列中所存储的二进制流反序列化为消息信息,以作为待分析数据;提取单元152用于将反序列化单元151所生成的待分析数据提取至硬盘数据库进行存储。
当然,在一些实施例中,第一提取模块15也可不将定长循环队列中的二进制流反序列化存储至硬盘数据库中,还可以直接将定长循环队列中的二进制流提取至硬盘数据库中进行存储,并后续采用相应的分析算法直接对硬盘数据库中的二进制流进行分析,具体是否将定长循环队列中的二进制流反序列化,可由本领域技术人员根据所设置的分析算法的需求以及存储空间的需求进行选择。
在一些实施例中,如图7所示,装置还包括:第二接收模块16、第二提取模块17和分析模块18,模块16-18用于实现问题分析过程;其中,第二接收模块16用于接收用户发出的分析指令;第二提取模块,用于在第二接收模块16接收到分析指令后,将硬盘数据库所存储的待分析数据提取至内存;分析模块18用于基于预设分析算法从第二提取模块17提取至内存的待分析数据中确定出异常消息信息。
当然,在一些实施例中,第二提取模块17在将硬盘数据库内所存储的待分析数据提取至内存中时,还可以先将待分析数据序列化为二进制流,以降低对内存空间的占用,然而,当内存足够大时,也可不必将提取至内存中的待分析数据进行序列化转换。
本公开实施例所提供的车载数据处理装置,在从记录的待分析数据中进行问题分析时,基于预设的分析算法来对待分析数据进行筛选,从而能够自动快速的定位到待分析数据中存在的异常消息信息,相较于现有技术,避免了通过人工肉眼依次识别ros包来进行问题定位,从而提高了定位问题的效率。
在一些实施例中,分析模块18具体包括:排序单元181和分析单元182;其中,排序单元181用于根据各消息信息中的时间戳,按照时间先后顺序来对提取至内存的消息信息进行排序;分析单元182用于基于预设分析算法从经排序单元181排序后的消息信息中确定出异常消息信息及其对应的时间戳。
本公开中,分析单元182所采用的预设分析算法为本领域技术人员根据自动驾驶的场景(例如,泊车场景、正常行驶场景等)中消息信息所具有的特征而设置对应的分析算法进行分析。
在一些实施例中,分析单元182在基于预设分析算法从排序后的消息信息中确定出异常消息信息及其对应的时间戳时可按照如下方式实现:根据同类消息信息所对应的发送频率和数据跳变值来确定出消息信息是否异常,并提取出异常消息信息的时间戳。
在一些实施例中,该车载数据处理装置还支持基于用户需求进行问题分析,相应地,如图8所示,该装置还包括:第三接收模块19和第三提取模块20;其中,第三接收模块19用于接收用户发出的提取指令,该提取指令中包含有用户需求信息;第三提取模块20用于在第三接收模块19接收到提取指令后,根据用户需求信息,从硬盘数据库中提取出与用户需求信息相匹配的消息信息,以作为需求待分析数据。
在一些实施例中,用户需求信息可以包括时间信息,该时间信息表示用户想要提取的消息信息所归属的时间段,消息信息配置有时间戳,第三提取模块20具体用于在第三接收模块19接收到提取指令后,根据时间信息,从硬盘数据库中提取出时间戳与时间信息相匹配的消息信息,以作为所述需求待分析数据。
在一些实施例中,用户需求信息可以包括消息信息的类型信息,该类型信息表征发送该消息信息的消息发送模块的种类,消息信息中包含有类型标识信息,第三提取模块20具体用于在第三接收模块19接收到提取指令后,根据类型信息,从硬盘数据库中提取出消息信息的类型标识信息与类型信息相匹配的消息信息,以作为所述需求待分析数据。
当然,本公开所提供的上述各产品实施例之间可进行相互组合以形成新的技术方案,组合形成的新技术方案均属于本公开所保护的范围,此处不再赘述。
本公开实施例还提供一种电子设备,包括:一个或多个处理器和存储装置;其中,存储装置其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得该一个或多个处理器实现本公开上述任一实施例所提供的方法。
本公开实施例还提供一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现本公开上述任一实施例所提供的方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其他实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。
Claims (20)
1.一种车载数据处理方法,其特征在于,包括:
当车机系统处于自动驾驶状态时,接收消息发送模块发送的消息信息;
将所述消息信息写入至内存中预设的定长循环队列中;
检测所述车机系统是否切换为人工控制状态;
当检测出所述车机系统切换为人工控制状态时,将所述定长循环队列中所存储的消息信息作为待分析数据提取至硬盘数据库进行存储。
2.根据权利要求1所述的方法,其中,所述将所述消息信息写入至内存中预设的定长循环队列中的步骤具体包括:
将所述消息信息序列化为二进制流;
将所述二进制流存储至所述定长循环队列中。
3.根据权利要求2所述的方法,其中,所述将所述定长循环队列中所存储的数据作为待分析数据提取至硬盘数据库进行存储的步骤具体包括:
将所述定长循环队列中所存储的二进制流反序列化为消息信息,以作为待分析数据;
将所述待分析数据提取至硬盘数据库进行存储。
4.根据权利要求1所述的方法,其中,在所述将所述定长循环队列中所存储的数据提取至硬盘数据库进行存储的步骤之后,还包括:
接收用户发出的分析指令;
将所述硬盘数据库所存储的所述待分析数据提取至内存;
基于预设分析算法从提取至内存的所述待分析数据中确定出异常消息信息。
5.根据权利要求4所述的方法,其中,所述消息信息配置有时间戳;
所述基于预设分析算法从提取至内存的所述待分析数据中确定出异常消息信息的步骤具体包括:
根据各消息信息的时间戳,按照时间先后顺序来对提取至内存的各所述消息信息进行排序;
基于预设分析算法从排序后的消息信息中确定出异常消息信息及其对应的时间戳。
6.根据权利要求5所述的方法,其中,基于预设分析算法从排序后的消息信息中确定出异常消息信息及其对应的时间戳的步骤具体包括:
根据同类消息信息所对应的发送频率和数据跳变值来确定出异常消息信息;
提取出异常消息信息的时间戳。
7.根据权利要求1所述的方法,其中,在所述将所述定长循环队列中所存储的数据提取至硬盘数据库进行存储的步骤之后,还包括:
接收用户发出的提取指令,所述提取指令中包含有用户需求信息;
根据所述用户需求信息,从所述硬盘数据库中提取出与所述用户需求信息相匹配的消息信息,以作为需求待分析数据。
8.根据权利要求7所述的方法,其中,所述用户需求信息包括时间信息;所述消息信息配置有时间戳;
所述根据所述用户需求信息从所述硬盘数据库中提取出与所述用户需求信息相匹配的消息信息,以作为需求待分析数据的步骤具体包括:
根据所述时间信息,从所述硬盘数据库中提取出时间戳与所述时间信息相匹配的消息信息,以作为所述需求待分析数据。
9.根据权利要求7所述的方法,其中,所述用户需求信息包括消息信息的类型信息;所述消息信息中包含有类型标识信息;
所述根据所述用户需求信息从所述硬盘数据库中提取出与所述用户需求信息相匹配的消息信息,以作为需求待分析数据的步骤具体包括:
根据所述类型信息,从所述硬盘数据库中提取出消息信息的类型标识信息与所述类型信息相匹配的消息信息,以作为所述需求待分析数据。
10.一种车载数据处理装置,其特征在于,包括:
第一接收模块,用于在车机系统处于自动驾驶状态时,接收消息发送模块发送的消息信息;
存储模块,包括预设在内存中的定长循环队列,所述定长循环队列用于存储所述第一接收模块所接收到的消息信息;
写入模块,用于将所述第一接收模块所接收到的消息信息写入至所述定长循环队列中;
检测模块,用于检测所述车机系统是否切换为人工控制状态;
第一提取模块,用于当所述检测模块检测出所述车机系统切换为人工控制状态时,将所述定长循环队列中所存储的消息信息作为待分析数据提取至硬盘数据库进行存储。
11.根据权利要求10所述的装置,其中,所述写入模块具体包括:
序列化单元,用于将所述消息信息序列化为二进制流;
写入单元,用于将所述序列化单元所生成的二进制流存储至所述定长循环队列中。
12.根据权利要求11所述的装置,其中,所述第一提取模块具体包括:
反序列化单元,用于将所述定长循环队列中所存储的二进制流反序列化为消息信息,以作为待分析数据;
提取单元,用于将所述反序列化单元所生成的所述待分析数据提取至硬盘数据库进行存储。
13.根据权利要求10所述的装置,其中,所述装置还包括:
第二接收模块,用于接收用户发出的分析指令;
第二提取模块,用于在所述第二接收模块接收到分析指令后,将所述硬盘数据库所存储的所述待分析数据提取至内存;
分析模块,用于基于预设分析算法从第二提取模块提取至内存的所述待分析数据中确定出异常消息信息。
14.根据权利要求13所述的装置,其中,所述消息信息配置有时间戳;
所述分析模块具体包括:
排序单元,用于根据各消息信息的时间戳,按照时间先后顺序来对提取至内存的各所述消息信息进行排序;
分析单元,用于基于预设分析算法从经所述排序单元排序后的各消息信息中确定出异常消息信息及其对应的时间戳。
15.根据权利要求14所述的装置,其中,所述分析单元具体用于根据同类消息信息所对应的发送频率和数据跳变值来确定出异常消息信息,并提取出异常消息信息的时间戳。
16.根据权利要求10所述的装置,其中,所述装置还包括:
第三接收模块,用于接收用户发出的提取指令,所述提取指令中包含有用户需求信息;
第三提取模块,用于在所述第三接收模块接收到所述提取指令后,根据所述用户需求信息,从所述硬盘数据库中提取出与所述用户需求信息相匹配的消息信息,以作为需求待分析数据。
17.根据权利要求16所述的装置,其中,所述用户需求信息包括时间信息;所述消息信息配置有时间戳;
所述第三提取模块具体用于在所述第三接收模块接收到所述提取指令后,根据所述时间信息,从所述硬盘数据库中提取出时间戳与所述时间信息相匹配的消息信息,以作为所述需求待分析数据。
18.根据权利要求16所述的装置,其中,所述用户需求信息包括消息信息的类型信息;所述消息信息包括类型标识信息;
所述第三提取模块具体用于在所述第三接收模块接收到所述提取指令后,根据所述类型信息,从所述硬盘数据库中提取出消息信息的类型标识信息与所述类型信息相匹配的消息信息,以作为所述需求待分析数据。
19.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-9任一所述的方法。
20.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-9任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910689954.0A CN110400391A (zh) | 2019-07-29 | 2019-07-29 | 车载数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910689954.0A CN110400391A (zh) | 2019-07-29 | 2019-07-29 | 车载数据处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110400391A true CN110400391A (zh) | 2019-11-01 |
Family
ID=68326342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910689954.0A Pending CN110400391A (zh) | 2019-07-29 | 2019-07-29 | 车载数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110400391A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114461144A (zh) * | 2022-01-19 | 2022-05-10 | 清华大学 | 协同驾驶的数据存储装置、数据处理方法及路侧设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140173630A1 (en) * | 2012-12-17 | 2014-06-19 | Itron, Inc. | Non real-time metrology data management |
CN105808557A (zh) * | 2014-12-30 | 2016-07-27 | 陕西重型汽车有限公司 | 车辆监控系统的数据质量分析系统及其方法 |
CN106548532A (zh) * | 2016-01-07 | 2017-03-29 | 徐工集团工程机械股份有限公司 | 液压油在线检测方法、装置和系统 |
CN108961462A (zh) * | 2018-07-24 | 2018-12-07 | 重庆长安汽车股份有限公司 | 用于自动驾驶人车事故判责的数据记录装置、系统及车辆 |
CN109272602A (zh) * | 2018-08-29 | 2019-01-25 | 百度在线网络技术(北京)有限公司 | 无人车数据的录制方法、装置、设备和存储介质 |
CN109564709A (zh) * | 2017-05-10 | 2019-04-02 | Jvc 建伍株式会社 | 记录控制装置、记录装置、记录控制方法及记录控制程序 |
-
2019
- 2019-07-29 CN CN201910689954.0A patent/CN110400391A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140173630A1 (en) * | 2012-12-17 | 2014-06-19 | Itron, Inc. | Non real-time metrology data management |
CN105808557A (zh) * | 2014-12-30 | 2016-07-27 | 陕西重型汽车有限公司 | 车辆监控系统的数据质量分析系统及其方法 |
CN106548532A (zh) * | 2016-01-07 | 2017-03-29 | 徐工集团工程机械股份有限公司 | 液压油在线检测方法、装置和系统 |
CN109564709A (zh) * | 2017-05-10 | 2019-04-02 | Jvc 建伍株式会社 | 记录控制装置、记录装置、记录控制方法及记录控制程序 |
CN108961462A (zh) * | 2018-07-24 | 2018-12-07 | 重庆长安汽车股份有限公司 | 用于自动驾驶人车事故判责的数据记录装置、系统及车辆 |
CN109272602A (zh) * | 2018-08-29 | 2019-01-25 | 百度在线网络技术(北京)有限公司 | 无人车数据的录制方法、装置、设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
唐克双等: "《基于多源数据融合的城市道路交通控制与管理》", 30 September 2015 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114461144A (zh) * | 2022-01-19 | 2022-05-10 | 清华大学 | 协同驾驶的数据存储装置、数据处理方法及路侧设备 |
CN114461144B (zh) * | 2022-01-19 | 2024-04-19 | 清华大学 | 协同驾驶的数据存储装置、数据处理方法及路侧设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104407964B (zh) | 一种基于数据中心的集中监控系统及方法 | |
US8731286B2 (en) | Video detection system and methods | |
US10923157B2 (en) | System and method for event data collection and video alignment | |
CN102314460B (zh) | 数据分析方法、系统及服务器 | |
CN103167265A (zh) | 基于智能图像识别的视频处理方法及系统 | |
CN105025318A (zh) | 一种应用程序的异常日志信息的反馈方法及装置 | |
US10216432B1 (en) | Managing backup utilizing rules specifying threshold values of backup configuration parameters and alerts written to a log | |
US20100122270A1 (en) | System And Method For Consolidating Events In A Real Time Monitoring System | |
CN111055851B (zh) | 一种自动驾驶的监控报警系统、客户端、服务器 | |
US10065750B2 (en) | Aircraft maintenance systems and methods using wearable device | |
CN110942632A (zh) | 一种自动驾驶的数据处理方法、装置及设备 | |
CN110400391A (zh) | 车载数据处理方法和装置 | |
CN106095660B (zh) | 应用的质量监控方法及装置 | |
CN112219175A (zh) | 用于管理技术安装的方法和系统 | |
US20210232483A1 (en) | Log analysis device, log analysis method, and program | |
CN113473086A (zh) | 视频播放的方法、装置、电子设备、智慧高速大屏 | |
DE102012025033A1 (de) | Ferndiagnose eines Fehlerzustands in einem Kraftfahrzeug mittels einer fahrzeugexternen Serveranordnung | |
CN113032281A (zh) | 一种代码覆盖率实时获取方法及装置 | |
WO2019135750A1 (en) | Visualization of audio signals for surveillance | |
CN116346650A (zh) | 一种can信号处理方法、装置、系统及电子设备 | |
CN111240923A (zh) | 车载导航系统复现问题的自动测试方法、装置和存储介质 | |
CN110929097A (zh) | 录像记录显示方法、装置及存储介质 | |
CN112596450A (zh) | 一种基于b/s架构的实时频谱监控系统及方法 | |
CN106681805B (zh) | 一种智能设备中应用服务运行控制方法及装置 | |
CN114630104B (zh) | 一种面向广播电视的人工智能多模型报警处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |