CN109272602B - 无人车数据的录制方法、装置、设备和存储介质 - Google Patents

无人车数据的录制方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN109272602B
CN109272602B CN201810996808.8A CN201810996808A CN109272602B CN 109272602 B CN109272602 B CN 109272602B CN 201810996808 A CN201810996808 A CN 201810996808A CN 109272602 B CN109272602 B CN 109272602B
Authority
CN
China
Prior art keywords
written
message
block
file
channel
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.)
Active
Application number
CN201810996808.8A
Other languages
English (en)
Other versions
CN109272602A (zh
Inventor
鲍万宇
陈卓
姚卫锋
夏黎明
辛建康
邓呈亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baidu Online Network Technology Beijing Co Ltd
Original Assignee
Baidu Online Network Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Baidu Online Network Technology Beijing Co Ltd filed Critical Baidu Online Network Technology Beijing Co Ltd
Priority to CN201810996808.8A priority Critical patent/CN109272602B/zh
Publication of CN109272602A publication Critical patent/CN109272602A/zh
Application granted granted Critical
Publication of CN109272602B publication Critical patent/CN109272602B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME 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/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种无人车数据的录制方法、装置、设备和存储介质。该方法包括:通过订阅的频道获取待录入消息内容;若检测到当前存在待写入消息块,则将所述消息内容写入所述待写入消息块中;若检测到所述待写入消息块满足截止条件,则将所述待写入消息块写入当前的待写入文件中。本发明实施例通过将当前正在写入数据的待写入消息块作为消息的载体,并对满足截止条件即待写入消息块写入完毕时,将待写入块直接写入至当前待写入文件中,实现了对无人车系统运行数据的有效录制,且提高了数据存储的准确度和效率,为后期无人车系统的运行数据的追溯提供了依据。

Description

无人车数据的录制方法、装置、设备和存储介质
技术领域
本发明实施例涉及无人车技术领域,尤其涉及一种无人车数据的录制方法、装置、设备和存储介质。
背景技术
随着科技的发展,越来越多的智能设备涌入人们的生活当中,以提高人们的生活质量和使用体验,无人车也是其中之一。
无人车集成了雷达、摄像头、卫星定位、自主导航以及多种传感器等设备,在无人车行驶过程中,用户只需向无人车系统输入目的地址,无人车即可以自主定位、确定导航路线、自动识别交通指示牌和路况等信息,通过大量数据信息的来驱动无人车向目的地址安全行驶。其中,输入至无人车系统中的数据为各传感器或电子设备传输的原始数据信息,无人车系统通过计算输出的是对无人车的控制数据,以确保无人车根据实时路况调整行驶方式。
然而,由于现实环境中的信息是时刻变化的,相应的无人车系统中的运行数据也都是独一无二且不可再生的。因此对无人车系统的运行数据进行有效的保存,为后期数据的获取和分析是十分必要的。
发明内容
本发明实施例提供了一种无人车数据的录制方法、装置、设备和存储介质,能够将无人车系统运行数据的有效录制,且提高了数据存储的准确度和效率。
第一方面,本发明实施例提供了一种无人车数据的录制方法,包括:
通过订阅的频道获取待录入消息内容;
若检测到当前存在待写入消息块,则将所述消息内容写入所述待写入消息块中;
若检测到所述待写入消息块满足截止条件,则将所述待写入消息块写入当前的待写入文件中。
第二方面,本发明实施例提供了一种无人车数据的录制装置,包括:
消息获取模块,用于通过订阅的频道获取待录入消息内容;
块写入模块,用于若检测到当前存在待写入消息块,则将所述消息内容写入所述待写入消息块中;
文件写入模块,用于若检测到所述待写入消息块满足截止条件,则将所述待写入消息块写入当前的待写入文件中。
第三方面,本发明实施例提供了一种设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所述的无人车数据的录制方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所述的无人车数据的录制方法。
本发明实施例通过预先订阅的频道获取待录入的消息内容,将消息内容写入系统中当前的待写入消息块中,相应的在检测到待写入消息块满足截止条件时,则将待写入块写入当前的待写入文件中。本发明实施例通过将当前正在写入数据的待写入消息块作为消息的载体,并在满足截止条件即待写入消息块写入完毕时,将待写入块直接写入至当前待写入文件中,实现了对无人车系统运行数据的有效录制,且提高了数据存储的准确度和效率,为后期无人车系统的运行数据的追溯提供了依据。
附图说明
图1为本发明实施例一提供的一种无人车数据的录制方法的流程图;
图2为本发明实施例二提供的一种无人车数据的录制方法的流程图;
图3为本发明实施例二提供的消息块的数据格式示例图;
图4为本发明实施例二提供的文件的数据格式示例图;
图5为本发明实施例三提供的一种无人车数据的录制装置的结构示意图;
图6为本发明实施例四提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种无人车数据的录制方法的流程图,本实施例可适用于对无人车系统运行数据进行记录的情况,该方法可由一种无人车数据的录制装置来执行。该方法具体包括如下步骤:
S110、通过订阅的频道获取待录入消息内容。
在本发明具体实施例中,消息是指无人车系统中集成的功能模块(例如传感、驱动、感知和控制等)通信时所传输的数据内容,以使无人车通过数据的驱动进行正常行驶。当无人车系统中有消息传递时,则该消息即可作为待录入消息内容,以备记录在文件中,对无人车系统中的运行数据进行保存。
本实施例中,频道是消息的载体,消息只有在频道中才能由一个功能模块传输至至少一个其他功能模块当中。相应的,无人车系统中集成的各功能模块作为消息传输拓扑结构中的各个功能模块,只有预先订阅了指定的频道,才能在系统运行时接收到该订阅频道传输的消息内容。同时该消息内容附带传输时的时间点信息和频道信息,作为待录入消息内容等待被写入文件中。
具体的,无人车系统中能够利用的频道数量有限,而传输的消息是无限的。进而在无人车系统中可以根据无人车系统中消息的传输关系,对系统中的频道进行订阅。进而在系统运行时,通过订阅的频道获取待录入消息内容,触发对待录入消息内容的写入操作。
本实施例统一将消息内容录制写入到文件中,相应的,本实施例的文件可以包括文件头、文件体和文件索引。其中,文件头中可以包括多条用于描述文件属性的头数据,文件头的长度固定,且文件头的各条头数据的长度固定,且文件头的长度大于各条头数据的长度之和。文件头中的各条头数据可以为文件的众多描述信息,例如:开始录制时间、结束录制时间、消息块信息、频道块信息、文件生成阈值信息、块生成阈值信息以及版本号等属性信息。通常情况下,预先规定了文件头中所要写入的文件属性信息,在数据录制进行文件创建时,就根据预先的规定在文件头中初始化了文件属性对应的头数据,并根据写入的数据进行文件头的刷新。其中,基于文件头的长度大于各条头数据的长度之和,文件头中为后期对文件的拓展预留了位置,例如在版本升级时添加一定的头数据,但同时仍能够保证旧版本中的头数据信息可正常使用,提高了文件的可拓展性和通用性。
其中,文件体中记录了无人车系统运行时的数据。具体的,文件体中可以由多个数据块组成,数据块可以包括消息块和频道块,消息块或频道块的数量为一个或多个。其中,消息块中记录了一定时间段中无人车系统运行时产生并传输的多条单体消息,每条单体消息中包含了对应的时间点和频道标识。频道块中记录了无人车系统当前时刻所采用的用于传输消息的频道及其属性信息,至少可以包括频道名称、频道类型和频道解释,也可以包括对应的时间信息。
本实施例在对无人车系统运行数据进行录制时,可以将系统中当前时刻能够进行写入的文件数量设定为一个,因此若检测到当前存在待写入文件,则可以直接依据待写入文件进行消息内容的写入。若检测到当前不存在待写入文件,也就是说系统之前没有在进行消息内容的写入操作,或者系统刚好完成了一个文件的写入操作,因此需要创建一个新的待写入文件,具体的创建固定长度的文件头,并预先占据了文件头中各条长度固定的头数据所占用的空间,或者同时对各条头数据进行初始化,并预留出文件头中的多余空间以备拓展使用。
相应的,在当前存在待写入文件的基础上,若待写入文件中没有当前频道信息的频道块,其中当前频道信息是待录入消息内容的频道信息,则在该待写入文件中依据当前频道信息添加频道块。
示例性的,假设无人车系统中包括200个频道,分别用频道1、频道2直至频道200来标识。系统中的各个功能模块均预先订阅了具体的频道例如频道1,进而在无人车系统运行时,通过频道1来获取待录入消息内容。相应的,若检测到系统当前不存在待写入文件,则创建一个待写入文件以及该待写入文件的文件头。若检测到系统当前存在待写入文件,则继续检测该待写入文件中是否存在包括该待录入消息内容的频道信息即频道1的频道块,若无,则在待写入文件中依据获取的待录入消息内容中频道1的频道信息添加频道块。
S120、若检测到当前存在待写入消息块,则将消息内容写入待写入消息块中。
在本发明具体实施例中,数据块中可以包括块头、块信息和块体。其中,块头中可以包括多条用于描述块中消息属性的非序列化的原始数据信息,同一个文件中数据块的块头长度是固定的,且在数据块写入文件中后,数据块中的信息是固定不变不可追加的。块信息是块头中数据信息的序列化表示,以二进制的数据形式减少了原始数据信息所占用的存储空间,同时提高了数据块与无人车系统的兼容性,便于在无人车系统中对数据的存储和读取。块体中记录了结构化的数据信息。其中,消息块的块体中记录了结构化的消息,消息可以具体包括多条单体消息,每条单体消息中附加了对应的时间点和频道标识;频道块的块体中记录了当前时刻所采用的频道及其属性信息。
本实施例可以采用双缓冲的方式将消息内容写入消息块中。具体的,将系统中当前时刻能够进行写入的消息块数量设定为一个,同时还存在一个备用的消息块。即将当前时刻能够进行写入的消息块作为待写入消息块,将获取到的待录入消息写入该待写入消息块中,当该待写入消息块满足截止条件写完时,则将备用的消息块作为待写入消息块继续进行待录入消息内容的写入,同时将前一写完的消息块写入文件后清空并作为备用的消息块。因此系统中两个消息块轮流作为待写入消息块进行消息的写入操作,提高消息内容写入的准确度和效率。
具体的,在检测到当前存在待写入消息块的基础上,对获取的消息内容进行编码,得到序列化的消息内容,并确定消息内容的时间点和频道的属性;依据消息内容的时间点、频道的属性和编码结果得到单体消息;将单体消息写入待写入消息块中,并依据待写入消息块中包括的各单体消息更新待写入消息块的块头和块信息。
S130、若检测到待写入消息块满足截止条件,则将待写入消息块写入当前的待写入文件中。
在本发明具体实施例中,待写入消息块不是一昧的进行写入操作,为了提高消息内容写入的准确度和效率,待写入消息块中可记录的消息内容是有限的,进而避免较多消息内容中一旦有一处出错导致全部消息内容的不可用,以及避免较多消息内容一起从消息块写入文件时导致较低的写入效率。
相应的,对于待写入消息块的停止写入,本实施例可以在消息块的块头和块信息中预先设定截止条件,而截至条件可以从录制时间和数据量大小这两个方面来设置。进而若依据待写入消息块的录制时间和/或大小,检测到待写入消息块满足截止条件,则通过双缓存方式将待写入消息块作为新消息块写入当前的待写入文件中,并将双缓存中的另一备用消息块作为新的待写入消息块。
示例性的,假设消息块录制时间阈值为10秒,消息块大小阈值为50M,将两个阈值之一或全部都设置于消息块的块头和块信息中。进而在待录入消息内容写入待写入消息块时,一旦检测到写入的消息满足消息块录制时间阈值和/或消息块大小阈值,则将待写入消息块写入当前的待写入文件中,并启动备用的消息块作为待写入消息块继续录制消息。
此外,本实施例为了便于后期文件的读取,文件的文件索引中记录了文件体中各数据块的索引信息。具体的,文件索引中可以包括各消息块或频道块的标识信息、路径信息以及时间信息等。此外,由于无人车系统运行时的消息数据量较大,且消息本身占据内存空间较大,而其余属性信息占据内存空间较小,因此文件索引也可以包括文件体中除了消息本身以外的所有信息,从而可以在文件中的部分数据损坏时对数据进行恢复。因此,当待写入消息块写入当前的待写入文件中时,则在待写入文件的文件索引中添加写入的新消息块的索引信息。
同理,待写入文件也不是一昧的进行写入操作,为了提高消息内容写入的准确度和效率,对于待写入文件的停止写入,本实施例可以在文件头中预先设定截止条件,而截至条件同样可以从录制时间和数据量大小这两个方面来设置。进而若检测到待写入文件满足截止条件,则依据待写入文件中包括的各消息块信息和各频道块信息,更新待写入文件的文件头。
示例性的,假设文件录制时间阈值为1分钟,文件大小阈值为2G,将两个阈值之一或全部都设置于文件头中。进而在待写入消息块写入待写入文件时,一旦检测到写入的消息满足文件录制时间阈值和/或文件大小阈值,则停止对待写入文件的写入操作。并依据待写入文件中包括的各消息块信息和各频道块信息,更新待写入文件的文件头。
本实施例的技术方案,通过预先订阅的频道获取待录入的消息内容,将消息内容写入系统中当前的待写入消息块中,相应的在检测到待写入消息块满足截止条件时,则将待写入块写入当前的待写入文件中。本发明实施例通过将当前正在写入数据的待写入消息块作为消息的载体,并对满足截止条件即待写入消息块写入完毕时,将待写入块直接写入至当前待写入文件中,实现了对无人车系统运行数据的有效录制,且提高了数据存储的准确度和效率,为后期无人车系统的运行数据的追溯提供了依据。
实施例二
本实施例在上述实施例一的基础上,提供了无人车数据的录制方法的一个优选实施方式,能够将序列化的消息及其时间点和频道信息一并写入文件中。图2为本发明实施例二提供的一种无人车数据的录制方法的流程图,如图2所示,该方法包括以下具体步骤:
S210、通过订阅的频道获取待录入消息内容。
在本发明具体实施例中,无人车系统中集成的各种电子设备或装置作为消息传输拓扑结构中的各个功能模块,都预先订阅了需要接收或传输的消息对应的频道,进而在系统运行时接收到该订阅频道传输的消息内容为待录入消息内容。
可选的,若检测到当前不存在待写入文件,则创建待写入文件,并创建固定长度的文件头。
本实施例在对无人车系统运行数据进行录制时,可以将系统中当前时刻能够进行写入的文件数量设定为一个,因此若检测到当前存在待写入文件,则可以直接依据待写入文件进行消息内容的写入。若检测到当前不存在待写入文件,也就是说系统之前没有在进行消息内容的写入操作,或者系统刚好完成了一个文件的写入操作,因此需要创建一个新的待写入文件,具体的创建固定长度的文件头,并预先占据了文件头中各条长度固定的头数据所占用的空间,或者同时对各条头数据进行初始化,并预留出文件头中的多余空间以备拓展使用。
可选的,若待写入文件中没有当前频道信息的频道块,则在待写入文件中依据当前频道信息添加频道块。
本实施例中,由于频道是消息的载体,文件中必须同时记录了消息内容及其对应的频道内容,才能够供后期读取消息时调用,以获取消息内容。因此在系统中存在待写入文件的基础上,若待写入文件中没有待录入消息内容的频道信息的频道块,则在待写入文件中依据当前频道信息添加频道块。
示例性的,在系统中存在待写入文件的基础上,上一时刻系统采用频道1进行消息的传输,随之文件中记录了频道1的频道块。在当前时刻系统采用频道1和频道2进行消息的传输,则可以将频道1和频道2的频道块添加至文件中,或者鉴于文件中已经存在了包含频道1频道信息的频道块,因此也可以只将频道2的频道块添加至文件中。
具体的,可以将频道的名称、类型和属性信息的原始数据信息写入频道块的块头中,将块头中的信息进行序列化处理并写入频道块的块信息中,以备系统读取。最终将频道的详细信息写入频道块的块体中,完成频道块的添加。
S220、对获取的消息内容进行编码,并确定消息内容的时间点和频道的属性。
在本发明具体实施例中,为了减小消息内容对于系统空间的占用量,将待录入消息内容进行编码处理,以获取二进制形式的序列化消息内容。同时确定该消息内容的时间点,例如开始录制时间和结束录制时间,以及确定用于传递该消息内容的频道的属性信息,例如频道名称、频道类型和频道解释等。
S230、依据消息内容的时间点、频道的属性和编码结果得到单体消息。
在本发明具体实施例中,将消息内容的编码结果、确定的时间点以及频道属性进行关联,生成包含序列化消息内容、时间点和频道属性的单体消息。
S240、将单体消息写入待写入消息块中,并依据待写入消息块中包括的各单体消息更新待写入消息块的块头和块信息。
在本发明具体实施例中,图3为消息块的数据格式示例图。如图所示,将单体消息写入待写入消息块的块体中,以依据待写入消息块中包括的各单体消息,以及各单体消息中包括的时间点和频道属性,对待写入消息块的块头中的原始数据进行更新,并相应的更新待写入消息块的块信息。
S250、若检测到待写入消息块满足截止条件,则将待写入消息块写入当前的待写入文件中。
在本发明具体实施例中,截止条件可以包括录制时间阈值和/或消息块大小阈值,并规定或预先写入至待写入消息块的块头和块信息中。因此在将消息内容写入待写入消息块中时,依据待写入消息块的块头和/或块信息中指示的录制时间阈值和/或消息块大小阈值,对待写入消息块中当前已写入的消息进行时间和/或数据量的检测,若满足截止条件,则停止对待写入消息块的写入操作,将待写入消息块写入当前的待写入文件中。
可选的,若依据待写入消息块的录制时间和/或大小,检测到待写入消息块满足截止条件,则通过双缓存方式将待写入消息块作为新消息块写入当前的待写入文件中,并将双缓存中的另一备用消息块作为新的待写入消息块。
本实施例可以采用双缓存方式进行消息和消息块的写入,即即将当前时刻能够进行写入的消息块作为待写入消息块,将获取到的待录入消息写入该待写入消息块中,当该待写入消息块满足截止条件写完时,则将备用的消息块作为待写入消息块继续进行待录入消息内容的写入,同时将前一写完的消息块写入文件后清空并作为备用的消息块。因此系统中两个消息块轮流作为待写入消息块进行消息的写入操作,提高消息内容写入的准确度和效率。
S260、在待写入文件的文件索引中添加写入的新消息块的索引信息。
在本发明具体实施例中,图4为文件的数据格式示例图。从图中可以看出,将待写入块写入待写入文件的文件体中,相应的可以将待写入文件中写入的新消息块的索引信息写入文件索引中,例如各消息块或频道块的标识信息、路径信息以及时间信息等。
S270、若检测到待写入文件满足截止条件,则依据待写入文件中包括的各消息块信息和各频道块信息,更新待写入文件的文件头。
在本发明具体实施例中,截止条件可以包括录制时间阈值和/或文件大小阈值,并规定或预先写入至待写入文件的文件头中。因此在将待写入消息块写入待写入文件中时,依据待写入文件的文件头中指示的录制时间阈值和/或文件大小阈值,对待写入文件中当前已写入的消息块进行时间和/或数据量的检测,若满足截止条件,则停止对待写入文件的写入操作,并更新待写入文件的文件头中的信息。
本实施例的技术方案,通过预先订阅的频道获取待录入的消息内容,将消息内容进行编码并确定其时间点和频道属性,进而生成包含时间点、频道属性和编码结果的单体消息;从而利用双缓存的方式将单体消息写入待写入消息块中,并将满足截止条件时的待写入消息块写入待写入文件中;当待写入文件满足截止条件时,对待写入文件中的文件索引和文件头进行更新。本发明实施例通过将序列化后的消息内容写通过消息块写入文件中,其中并利用双缓存的方式进行写入,实现了对无人车系统运行数据的有效录制,且减少了消息内容对于有限存储空间的占用,提高了数据存储的准确度和效率,为后期无人车系统的运行数据的追溯提供了依据。
实施例三
图5为本发明实施例三提供的一种无人车数据的录制装置的结构示意图,本实施例可适用于对无人车系统运行数据进行记录的情况,该装置可实现本发明任意实施例所述的无人车数据的录制方法。该装置具体包括:
消息获取模块510,用于通过订阅的频道获取待录入消息内容;
块写入模块520,用于若检测到当前存在待写入消息块,则将所述消息内容写入所述待写入消息块中;
文件写入模块530,用于若检测到所述待写入消息块满足截止条件,则将所述待写入消息块写入当前的待写入文件中。
可选的,所述块写入模块520包括:
消息处理单元,用于对获取的消息内容进行编码,并确定消息内容的时间点和频道的属性;
单体消息生成单元,用于依据所述消息内容的时间点、所述频道的属性和编码结果得到单体消息;
单体消息写入单元,用于将所述单体消息写入所述待写入消息块中,并依据所述待写入消息块中包括的各单体消息更新所述待写入消息块的块头和块信息。
可选的,所述文件写入模块530具体用于:
若依据所述待写入消息块的录制时间和/或大小,检测到所述待写入消息块满足截止条件,则通过双缓存方式将所述待写入消息块作为新消息块写入当前的待写入文件中,并将所述双缓存中的另一备用消息块作为新的待写入消息块。
进一步的,所述装置还包括:
文件索引添加模块540,用于在所述将所述消息内容写入所述待写入消息块中之后,在所述待写入文件的文件索引中添加写入的新消息块的索引信息。
进一步的,所述装置还包括:
频道块添加模块550,用于在所述通过订阅的频道获取待录入消息内容之后,若所述待写入文件中没有当前频道信息的频道块,则在所述待写入文件中依据所述当前频道信息添加频道块;其中,所述当前频道信息是所述待录入消息内容的频道信息。
进一步的,所述装置还包括:
文件头刷新模块560,用于在所述将所述待写入消息块写入当前的待写入文件中之后,若检测到待写入文件满足截止条件,则依据所述待写入文件中包括的各消息块信息和各频道块信息,更新所述待写入文件的文件头。
进一步的,所述装置还包括:
文件创建模块570,用于在所述通过订阅的频道获取待录入消息内容之后,若检测到当前不存在待写入文件,则创建待写入文件,并创建固定长度的文件头。
本实施例的技术方案,通过各个功能模块之间的相互配合,实现了待录入消息内容的获取、待写入文件的创建、频道块的添加、向待写入消息块的写入、向待写入文件的写入、截止条件的判断、文件索引的添加以及文件头的刷新等功能。本发明实施例通过将序列化后的消息内容通过消息块写入文件中,其中并利用双缓存的方式进行写入,实现了对无人车系统运行数据的有效录制,且减少了消息内容对于有限存储空间的占用,提高了数据存储的准确度和效率,为后期无人车系统的运行数据的追溯提供了依据。
实施例四
图6为本发明实施例四提供的一种设备的结构示意图,图6示出了适于用来实现本发明实施例实施方式的示例性设备的框图。图6显示的设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
图6显示的设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,设备12以通用计算设备的形式表现。设备12的组件可以包括但不限于:一个或者多个处理器16,系统存储器28,连接不同系统组件(包括系统存储器28和处理器16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明实施例各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明实施例所描述的实施例中的功能和/或方法。
设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该设备12交互的设备通信,和/或与使得该设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与设备12的其它模块通信。应当明白,尽管图中未示出,可以结合设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器16通过运行存储在系统存储器28中的多个程序中的至少一个程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的无人车数据的录制方法。
实施例五
本发明实施例五还提供一种计算机可读存储介质,其上存储有计算机程序(或称为计算机可执行指令),该程序被处理器执行时用于执行一种无人车数据的录制方法,该方法包括:
通过订阅的频道获取待录入消息内容;
若检测到当前存在待写入消息块,则将所述消息内容写入所述待写入消息块中;
若检测到所述待写入消息块满足截止条件,则将所述待写入消息块写入当前的待写入文件中。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明实施例进行了较为详细的说明,但是本发明实施例不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (14)

1.一种无人车数据的录制方法,其特征在于,包括:
通过订阅的频道获取待录入消息内容;
若检测到当前存在待写入消息块,则将所述消息内容写入所述待写入消息块中;
若检测到所述待写入消息块满足截止条件,则将所述待写入消息块写入当前的待写入文件中;
其中,所述将所述消息内容写入所述待写入消息块中,包括:
对获取的消息内容进行编码,并确定消息内容的时间点和频道的属性;
依据所述消息内容的时间点、所述频道的属性和编码结果得到单体消息;
将所述单体消息写入所述待写入消息块中,并依据所述待写入消息块中包括的各单体消息更新所述待写入消息块的块头和块信息。
2.根据权利要求1所述的方法,其特征在于,所述若检测到所述待写入消息块满足截止条件,则将所述待写入消息块写入当前的待写入文件中,包括:
若依据所述待写入消息块的录制时间和/或大小,检测到所述待写入消息块满足截止条件,则通过双缓存方式将所述待写入消息块作为新消息块写入当前的待写入文件中,并将所述双缓存中的另一备用消息块作为新的待写入消息块。
3.根据权利要求1所述的方法,其特征在于,在所述将所述消息内容写入所述待写入消息块中之后,还包括:
在所述待写入文件的文件索引中添加写入的新消息块的索引信息。
4.根据权利要求1所述的方法,其特征在于,在所述通过订阅的频道获取待录入消息内容之后,还包括:
若所述待写入文件中没有当前频道信息的频道块,则在所述待写入文件中依据所述当前频道信息添加频道块;其中,所述当前频道信息是所述待录入消息内容的频道信息。
5.根据权利要求1所述的方法,其特征在于,在所述将所述待写入消息块写入当前的待写入文件中之后,还包括:
若检测到待写入文件满足截止条件,则依据所述待写入文件中包括的各消息块信息和各频道块信息,更新所述待写入文件的文件头。
6.根据权利要求1所述的方法,其特征在于,在所述通过订阅的频道获取待录入消息内容之后,还包括:
若检测到当前不存在待写入文件,则创建待写入文件,并创建固定长度的文件头。
7.一种无人车数据的录制装置,其特征在于,包括:
消息获取模块,用于通过订阅的频道获取待录入消息内容;
块写入模块,用于若检测到当前存在待写入消息块,则将所述消息内容写入所述待写入消息块中;
文件写入模块,用于若检测到所述待写入消息块满足截止条件,则将所述待写入消息块写入当前的待写入文件中;
其中,所述块写入模块包括:
消息处理单元,用于对获取的消息内容进行编码,并确定消息内容的时间点和频道的属性;
单体消息生成单元,用于依据所述消息内容的时间点、所述频道的属性和编码结果得到单体消息;
单体消息写入单元,用于将所述单体消息写入所述待写入消息块中,并依据所述待写入消息块中包括的各单体消息更新所述待写入消息块的块头和块信息。
8.根据权利要求7所述的装置,其特征在于,所述文件写入模块具体用于:
若依据所述待写入消息块的录制时间和/或大小,检测到所述待写入消息块满足截止条件,则通过双缓存方式将所述待写入消息块作为新消息块写入当前的待写入文件中,并将所述双缓存中的另一备用消息块作为新的待写入消息块。
9.根据权利要求7所述的装置,其特征在于,还包括:
文件索引添加模块,用于在所述将所述消息内容写入所述待写入消息块中之后,在所述待写入文件的文件索引中添加写入的新消息块的索引信息。
10.根据权利要求7所述的装置,其特征在于,还包括:
频道块添加模块,用于在所述通过订阅的频道获取待录入消息内容之后,若所述待写入文件中没有当前频道信息的频道块,则在所述待写入文件中依据所述当前频道信息添加频道块;其中,所述当前频道信息是所述待录入消息内容的频道信息。
11.根据权利要求7所述的装置,其特征在于,还包括:
文件头刷新模块,用于在所述将所述待写入消息块写入当前的待写入文件中之后,若检测到待写入文件满足截止条件,则依据所述待写入文件中包括的各消息块信息和各频道块信息,更新所述待写入文件的文件头。
12.根据权利要求7所述的装置,其特征在于,还包括:
文件创建模块,用于在所述通过订阅的频道获取待录入消息内容之后,若检测到当前不存在待写入文件,则创建待写入文件,并创建固定长度的文件头。
13.一种设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至6中任一项所述的无人车数据的录制方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至6中任一项所述的无人车数据的录制方法。
CN201810996808.8A 2018-08-29 2018-08-29 无人车数据的录制方法、装置、设备和存储介质 Active CN109272602B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810996808.8A CN109272602B (zh) 2018-08-29 2018-08-29 无人车数据的录制方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810996808.8A CN109272602B (zh) 2018-08-29 2018-08-29 无人车数据的录制方法、装置、设备和存储介质

Publications (2)

Publication Number Publication Date
CN109272602A CN109272602A (zh) 2019-01-25
CN109272602B true CN109272602B (zh) 2021-12-28

Family

ID=65155066

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810996808.8A Active CN109272602B (zh) 2018-08-29 2018-08-29 无人车数据的录制方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN109272602B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110400391A (zh) * 2019-07-29 2019-11-01 北京百度网讯科技有限公司 车载数据处理方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005119600A1 (en) * 2004-06-01 2005-12-15 Smiths Aerospace, Inc. Timeline random access for multi-format time-based file recording and playback
CN101179392A (zh) * 2006-12-12 2008-05-14 腾讯科技(深圳)有限公司 一种上传文件的方法和系统
CN102025490A (zh) * 2009-12-18 2011-04-20 华为终端有限公司 一种文件分段保护的方法、装置及系统
CN104270605A (zh) * 2014-09-23 2015-01-07 浪潮(北京)电子信息产业有限公司 一种视频监控数据的处理方法及装置
CN108205830A (zh) * 2016-12-20 2018-06-26 百度(美国)有限责任公司 识别对于无人驾驶车辆的个人驾驶偏好的方法和系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5710978A (en) * 1993-06-29 1998-01-20 Swift Computers, Inc. Logging recorder system for trunking radio
EP1886202A4 (en) * 2005-06-01 2011-09-21 Allstate Insurance Co COLLECTION AND ANALYSIS OF OPERATING DATA OF A MOTORIZED VEHICLE
TW201223803A (en) * 2010-12-06 2012-06-16 Aptos Technology Inc Vehicle recording apparatus and image recording method
CN102891997A (zh) * 2011-07-20 2013-01-23 深圳市快播科技有限公司 用于快速播放的音视频多媒体文件格式、播放方法及装置
WO2014169112A1 (en) * 2013-04-11 2014-10-16 The Uninversity Of Tulsa Wheeled vehicle event data recorder forensic recovery and preservation system
CN103778188A (zh) * 2013-12-31 2014-05-07 网秦(北京)科技有限公司 用于在库文件中查询和/或维护数据的方法和设备
CN103838830B (zh) * 2014-02-18 2017-03-29 广东亿迅科技有限公司 一种HBase数据库的数据管理方法及系统
US20180018833A1 (en) * 2016-07-18 2018-01-18 Ford Global Technologies, Llc Vehicle Database Storage And Retrieval Methods And Systems
CN106296875A (zh) * 2016-08-16 2017-01-04 湖南纽思曼导航定位科技有限公司 一种行车记录仪及存储方法
CN107393052B (zh) * 2017-06-28 2019-01-04 深圳市爱培科技术股份有限公司 一种记录仪数据存储方法及其存储装置
CN108415855A (zh) * 2018-03-06 2018-08-17 珠海全志科技股份有限公司 录影文件存储方法及装置、计算机装置及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005119600A1 (en) * 2004-06-01 2005-12-15 Smiths Aerospace, Inc. Timeline random access for multi-format time-based file recording and playback
CN101044513A (zh) * 2004-06-01 2007-09-26 史密斯航空航天有限责任公司 对多格式时基文件记录及回放的时间线随机访问
CN101179392A (zh) * 2006-12-12 2008-05-14 腾讯科技(深圳)有限公司 一种上传文件的方法和系统
CN102025490A (zh) * 2009-12-18 2011-04-20 华为终端有限公司 一种文件分段保护的方法、装置及系统
CN104270605A (zh) * 2014-09-23 2015-01-07 浪潮(北京)电子信息产业有限公司 一种视频监控数据的处理方法及装置
CN108205830A (zh) * 2016-12-20 2018-06-26 百度(美国)有限责任公司 识别对于无人驾驶车辆的个人驾驶偏好的方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
分布式风储系统监控后台设计;孙洋洲等;《储能科学与技术》;20160629(第04期);全文 *

Also Published As

Publication number Publication date
CN109272602A (zh) 2019-01-25

Similar Documents

Publication Publication Date Title
KR102525502B1 (ko) 자동운전 테스트 데이터 저장 방법, 장치, 전자 기기, 저장 매체 및 프로그램
US20220319253A1 (en) Autonomous Vehicle Data Recorders
US11670124B2 (en) Data recorders of autonomous vehicles
CN110472095B (zh) 语音引导方法、装置、设备和介质
CN109147091B (zh) 无人车数据的处理方法、装置、设备和存储介质
CN101571401A (zh) 一种导航系统及其使用的规划导航路径的方法
CN109284180B (zh) 一种任务调度方法、装置、电子设备及存储介质
CN109635861B (zh) 一种数据融合方法、装置、电子设备及存储介质
CN109272602B (zh) 无人车数据的录制方法、装置、设备和存储介质
CN114116946A (zh) 数据处理方法、装置、电子设备及存储介质
CN111785000B (zh) 一种车辆状态数据上传方法、装置、电子设备及存储介质
CN112102648B (zh) 一种空余车位推送方法、装置、设备及存储介质
CN113093516A (zh) 一种无人机电池的时间校准方法、装置、设备及存储介质
US11104329B2 (en) Parking control method and apparatus, and storage medium
CN109270566B (zh) 导航方法、导航效果测试方法、装置、设备和介质
US20230169228A1 (en) Traffic simulation method for creating an optimized object motion path in the simulator
CN111694848A (zh) 使用引用计数更新数据缓冲的方法及装置
CN112506871B (zh) 自动化任务管理及日志管理方法、系统、电子设备和介质
CN112925796A (zh) 一种写一致性控制方法、装置、设备及存储介质
CN113761990B (zh) 一种道路边界检测方法、装置、无人车及存储介质
CN115733867B (zh) 一种车载gps数据上传方法、系统及设备
CN109150612B (zh) 一种用于无人车的基于分布式系统的检测方法及电子设备
CN113486452A (zh) 一种用于无人驾驶设备远程遥控的方法及装置
CN113175934A (zh) 一种基于电动自行车的导航方法及设备
CN112329500A (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
GR01 Patent grant
GR01 Patent grant