CN112000628B - 多通道激光雷达数据存储方法、装置及电子设备 - Google Patents

多通道激光雷达数据存储方法、装置及电子设备 Download PDF

Info

Publication number
CN112000628B
CN112000628B CN202010847803.6A CN202010847803A CN112000628B CN 112000628 B CN112000628 B CN 112000628B CN 202010847803 A CN202010847803 A CN 202010847803A CN 112000628 B CN112000628 B CN 112000628B
Authority
CN
China
Prior art keywords
data
channel
time
laser radar
data acquisition
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
CN202010847803.6A
Other languages
English (en)
Other versions
CN112000628A (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.)
Xian University of Technology
Original Assignee
Xian University of Technology
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 Xian University of Technology filed Critical Xian University of Technology
Priority to CN202010847803.6A priority Critical patent/CN112000628B/zh
Publication of CN112000628A publication Critical patent/CN112000628A/zh
Application granted granted Critical
Publication of CN112000628B publication Critical patent/CN112000628B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Optical Radar Systems And Details Thereof (AREA)

Abstract

本申请提供一种多通道激光雷达数据存储方法、装置及电子设备,应用于多通道的激光雷达系统,所述方法包括:分别采集不同时刻所述多通道中的各个通道所对应的激光雷达数据单元;其中,每个所述激光雷达数据单元包括:多个雷达探测距离中的各个雷达探测距离所对应的雷达廓线数据;按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中;在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中,以提高数据存储效率和检索效率。

Description

多通道激光雷达数据存储方法、装置及电子设备
技术领域
本申请涉及激光雷达技术领域,具体而言,涉及一种多通道激光雷达数据存储方法、装置及电子设备。
背景技术
大气遥感探测激光雷达是以激光光波为信号源,以大气分子和气溶胶粒子为探测目标的先进大气遥感探测技术。激光射向大气时,大气中的气溶胶粒子和大气分子会与光相互作用产生大气散射回波光信号(如粒子Mie散射,分子Rayleigh散射及Raman散射等),大气激光雷达系统利用望远镜接收大气散射回波信号,并对大气散射回波信号进行光谱和能量分析,进而反演得到大气温度、水汽、风场及气溶胶等各种大气物理参量的时空分布,具有时空分辨率高的特点。
随着大气遥感探测及环境监测逐渐向着全方位、立体化的综合精细探测方向发展,多参量探测激光雷达技术成为大气激光雷达研究的主要方向。多参量探测激光雷达通过多个探测通道对多种大气物理参量进行同步探测,各探测通道接收不同的回波光谱且具有不同的实验配置信息,诸如光谱波长、接收系统参数、探测器参数等等。因此,多参量激光雷达数据具有种类多、数据量大、实验附加信息多的特点,因此需要提出新型的激光雷达数据存储方法,以提高其综合存储效率和综合检索效率。
发明内容
鉴于此,本申请实施例的目的在于提供一种多通道激光雷达数据存储方法、装置及电子设备,以提高数据存储效率和检索效率。
第一方面,本申请实施例提供一种多通道激光雷达数据存储方法,应用于多通道激光雷达系统,所述方法包括:分别采集不同时刻所述多通道中的各个通道所对应的激光雷达数据单元;其中,每个所述激光雷达数据单元包括:多个雷达探测距离中的各个雷达探测距离所对应的雷达廓线数据;按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中;在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中。
在上述实现过程中,按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中,由于在数据采集时的数据采集单位与将数据存储至缓存文件中的单位一致,即均以时间为单位,因此,数据存储效率高;其次,由于同一通道所对应的雷达廓线数据属于同种数据类型的数据,因此,为了便于后期快速检索,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中,即以通道为单位进行存储,继而便于后期以同种类型的数据为单位进行快速检索。
基于第一方面,在一种可能的设计中,所述方法还包括:在确定从采集数据开始时刻到当前时刻之间的时长大于等于所述预设时长时,确定数据采集结束。
为了避免额外采集过多的数据,以及一直执行数据采集步骤,继而导致无法执行后续的数据存储步骤,因此,在上述实现过程中,在确定从采集数据开始时刻到当前时刻之间的时长大于等于所述预设时长时,确定数据采集结束,继而能够准确地控制数据采集时长,及时停止进行数据采集步骤,并能够及时地执行后续的数据存储步骤,进一步提高数据存储效率。
基于第一方面,在一种可能的设计中,所述方法还包括:在确定从采集数据开始时刻到当前时刻所采集到的数据的总长度大于等于预设长度时,确定数据采集结束。
为了避免额外采集过多的数据,以及一直执行数据采集步骤,继而导致无法执行后续的数据存储步骤,因此,在上述实现过程中,在确定从采集数据开始时刻到当前时刻所采集到的数据的总长度大于等于预设长度时,确定数据采集结束,继而能够控制数据采集长度,及时停止进行数据采集,并能够及时地执行后续的数据存储步骤,进一步提高数据存储效率。
基于第一方面,在一种可能的设计中,在确定数据采集结束之前,所述方法还包括:在确定存储至所述缓存文件中的数据的长度达到第一预设长度时,确定数据采集是否结束;在确定数据采集未结束时,按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的新的激光雷达数据单元,实时存储至新的缓存文件中;在确定存储至所述新的缓存文件中的数据的长度达到第二预设长度时,确定数据采集是否结束;其中,所述在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中,包括:在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件和所述新的缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至所述数据文件中。
在上述实现过程中,确定存储至所述缓存文件中的数据的长度达到第一预设长度,确定数据采集是否结束,保证存储在缓存文件中的数据的长度达到第一预设长度,其次,在确定数据采集未结束时,按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的新的激光雷达数据单元,实时存储至新的缓存文件中,继而避免只利用一个缓存文件来存储大量数据而导致数据全部丢失的弊端;确定存储至所述新的缓存文件中的数据的长度达到第二预设长度,确定数据采集是否结束,保证存储在新的缓存文件中的数据的长度达到第二预设长度;在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件和所述新的缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至所述数据文件中,保证能够将采集到的全部数据存储至数据文件中。
基于第一方面,在一种可能的设计中,在所述按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中之后,所述方法还包括:针对每个通道,从所述数据文件中读取该通道所对应的不同时刻所对应的激光雷达数据单元;针对该通道所对应的每个时刻所对应的激光雷达数据单元,将该激光雷达数据单元中的各个雷达廓线数据,对应存储至预先建立的树形结构中与该通道和该时刻对应的数据节点;其中,所述树形结构包括:根节点、通道关系层节点、多个时间关系层节点和多个数据层节点;所述通道关系层节点包括多个通道节点,各个通道节点以指针的方式串联;所述根节点的指针指向所述多个通道节点的首通道节点;每个时间关系层节点包括多个时间节点,以时间先后顺序将同一个时间关系层节点中的各时间节点以指针的方式串联;不同通道的指针指向不同时间关系层节点中时间最靠前的时间节点;每个数据层节点包括多个数据节点;按照雷达探测距离的大小顺序,将同一个数据层节点中的多个数据节点以指针的方式串联;其中,同一个数据层节点中的数据节点和探测距离一一对应;不同时间节点的指针指向不同的数据层节点中的首数据节点。
在上述实现过程中,针对每个通道,从所述数据文件中读取该通道所对应的不同时刻所对应的激光雷达数据单元之后,针对该通道所对应的每个时刻所对应的激光雷达数据单元,将该激光雷达数据单元中的各个雷达廓线数据,对应存储至预先建立的树形结构中与该通道和该时刻对应的数据节点,继而便于后期能够根据树形结构,并以通道为单位进行快速检索。
第二方面,本申请实施例提供一种多通道激光雷达数据存储装置,应用于多通道的激光雷达系统,所述装置包括:采集单元,用于分别采集不同时刻所述多通道中的各个通道所对应的激光雷达数据单元;其中,每个所述激光雷达数据单元包括:多个雷达探测距离中的各个雷达探测距离所对应的雷达廓线数据;第一存储单元,用于按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中;第二存储单元,用于在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中。
基于第二方面,在一种可能的设计中,所述装置还包括:第一确定单元,用于在确定从采集数据开始时刻到当前时刻之间的时长大于等于所述预设时长时,确定数据采集结束。
基于第二方面,在一种可能的设计中,所述装置还包括:第二确定单元,用于在确定从采集数据开始时刻到当前时刻所采集到的数据的总长度大于等于预设长度时,确定数据采集结束。
基于第二方面,在一种可能的设计中,所述装置还包括:第三确定单元,用于在确定存储至所述缓存文件中的数据的长度达到第一预设长度时,确定数据采集是否结束;新的第一存储单元,用于在确定数据采集未结束时,按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的新的激光雷达数据单元,实时存储至新的缓存文件中;第四确定单元,用于在确定存储至所述新的缓存文件中的数据的长度达到第二预设长度时,确定数据采集是否结束;其中,所述第二存储单元具体用于,在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件和所述新的缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至所述数据文件中。
基于第二方面,在一种可能的设计中,所述装置还包括:新的存储单元,用于针对每个通道,从所述数据文件中读取该通道所对应的不同时刻所对应的激光雷达数据单元;以及针对该通道所对应的每个时刻所对应的激光雷达数据单元,将该激光雷达数据单元中的各个雷达廓线数据,对应存储至预先建立的树形结构中与该通道和该时刻对应的数据节点;其中,所述树形结构包括:根节点、通道关系层节点、多个时间关系层节点和多个数据层节点;所述通道关系层节点包括多个通道节点,各个通道节点以指针的方式串联;所述根节点的指针指向所述多个通道节点的首通道节点;每个时间关系层节点包括多个时间节点,以时间先后顺序将同一个时间关系层节点中的各时间节点以指针的方式串联;不同通道的指针指向不同时间关系层节点中时间最靠前的时间节点;每个数据层节点包括多个数据节点;按照雷达探测距离的大小顺序,将同一个数据层节点中的多个数据节点以指针的方式串联;其中,同一个数据层节点中的数据节点和探测距离一一对应;不同时间节点的指针指向不同的数据层节点中的首数据节点。
第三方面,本申请实施例提供一种电子设备,包括处理器以及与所述处理器连接的存储器,所述存储器内存储计算机程序,当所述计算机程序被所述处理器执行时,使得所述电子设备执行第一方面所述的方法。
第四方面,本申请实施例提供一种存储介质,所述存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行第一方面所述的方法。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的多通道激光雷达数据存储方法的流程示意图。
图2为本申请实施例提供的多通道激光雷达数据的示意图。
图3为本申请实施例提供的树形结构的示意图。
图4为本申请实施例提供的多激光雷达数据存储系统的结构示意图。
图5为本申请实施例提供的检索示意图。
图6为本申请实施例提供的多通道激光雷达数据存储装置的结构示意图。
图7为本申请实施例提供的电子设备的结构示意图。
图标:600-多通道激光雷达数据存储装置;610-采集单元;620-第一存储单元;630-第二存储单元;300-电子设备;301-处理器;302-存储器;303-通信接口。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参照图1,图1为本申请实施例提供的一种多通道激光雷达数据存储方法的流程图,所述方法应用于多通道的激光雷达系统,下面将对图1所示的流程进行详细阐述,所述方法包括步骤:S11、S12和S13。
S11:分别采集不同时刻所述多通道中的各个通道所对应的激光雷达数据单元;其中,每个所述激光雷达数据单元包括:多个雷达探测距离中的各个雷达探测距离所对应的雷达廓线数据。
S12:按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中。
S13:在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中。
下面对上述方法进行详细介绍。
S11:分别采集不同时刻所述多通道中的各个通道所对应的激光雷达数据单元;其中,每个所述激光雷达数据单元包括:多个雷达探测距离中的各个雷达探测距离所对应的雷达廓线数据。
在实际实施过程中,S11可以按照如下方式实施,基于预设时间间隔,或者不定时地分别采集所述多通道中的各个通道所对应的激光雷达数据单元,可以理解的是,针对同一时刻,会分别采集所述多通道中的各个通道所对应的激光雷达数据单元;其中,每个所述激光雷达数据单元包括:多个雷达探测距离中的各个雷达探测距离所对应的雷达廓线数据。
例如,如图2所示,其中,Time表示时刻,Range表示探测距离,Channel表示通道,因此,在时刻tj采集到的通道ck在雷达探测距离ri处雷达廓线数据可表示为sk i,j;其中,(1≤j≤m,1≤k≤q,1≤i≤n),m表示时刻数量,q表示通道数量,n表示雷达探测距离的数量。
S12:按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中。
在实际实施过程中,S12可以按照如下方式实施,按照数据采集的时间顺序,将tj(j=2,…,m)时刻采集到的q个通道中的各个通道所对应的激光雷达数据单元{s1 j,s2 j,…,sq j}作为一个整体存储至缓存文件中的第tj-1时刻采集到的数据的末尾,并利用tj时刻对{s1 j,s2 j,…,sq j}进行标记,即在缓存文件中存储的第tj-1时刻采集到的各个通道所对应的激光雷达数据单元{s1 j-1,s2 j-1,…,sq j-1}末尾,添加第tj时刻采集到的各个通道所对应的激光雷达数据单元{s1 j,s2 j,…,sq j},其中,s2 j表示在tj时刻采集到的通道c2所对应的激光雷达数据单元,那么在缓存文件中最终存储的数据形式为{s1 1,s2 1,…,sq 1;s1 2,s2 2,…,sq 2;s1 3,s2 3,…,sq 3;…}。
作为一种实施方式,在获取到第一时刻采集到的q个通道中的各个通道所对应的激光雷达数据单元{s1 1,s2 1,…,sq 1}之后,基于预先确定的通道与缓存文件中的列的索引的第一对应关系,将第一时刻采集到的所述多通道中的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中的第一数据行,并利用所述第一时刻对第一数据行进行标记;在获取到第二时刻采集到的所述多通道中的各个通道所对应的激光雷达数据单元之后,基于所述第一对应关系,将第二时刻采集到的所述多通道中的各个通道所对应的激光雷达数据单元{s1 2,s2 2,…,sq 2},实时存储至缓存文件中的第二数据行,并利用所述第二时刻对第二数据行进行标记;依次类推,在获取到最后一个时刻采集到的所述多通道中的各个通道所对应的激光雷达数据单元之后,基于所述第一对应关系,将最后一刻时刻采集到的所述多通道中的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中的最后一个数据行,并利用所述最后一个时刻对最后一个数据行进行标记。
可以理解的是,针对每个通道,将该通道对应的数据存储至所述缓存文件中与该通道对应的列。
S13:在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中。
在实际实施过程中,S13可以按照如下方式实施,在确定数据采集结束时,按照通道排列顺序,从所述缓存文件中提取出ck,(2≤k≤q)通道所对应的m个时刻所对应的激光雷达数据单元{sk 1,sk 2,…,sk m}作为一个整体存储至缓存文件中的ck-1通道对应的数据的末尾,并利用ck通道的序号k对{sk 1,sk 2,…,sk m}进行标记,即在缓存文件中存储的第ck-1通道所对应的m个时刻所对应的激光雷达数据单元{sk-1 1,sk-1 2,…,sk-1 m}末尾,添加第ck通道所对应的m个时刻所对应的激光雷达数据单元{sk 1,sk 2,…,sk m},依次类推,那么在缓存文件中最终存储的数据形式为存储为{{s1 1,s1 2,s1 3,..}1,{s2 1,s2 2,s2 3,…}2,…,{sq 1,sq 2,sq 3,…}q}。
作为一种实施方式,在从缓存文件中提取出c1通道所对应的m个时刻所对应的激光雷达数据单元{s1 1,s1 2,s1 3,..}之后,基于预先确定的数据采集时刻与缓存文件中的行的索引的第二对应关系,将出c1通道所对应的m个时刻所对应的激光雷达数据单元,实时存储至缓存文件中的第一数据列,并利用所述通道c1的序号1对第一数据列进行标记;在从缓存文件中提取出c2通道所对应的m个时刻所对应的激光雷达数据单元{s2 1,s2 2,s2 3,..}之后,基于预先确定的数据采集时刻与缓存文件中的行的索引的第二对应关系,将c2通道所对应的m个时刻所对应的激光雷达数据单元,实时存储至缓存文件中的第二数据列,并利用所述通道c2的序号2对第二数据列进行标记;依次类推,在获取到最后一个通道所对应的m个时刻所对应的激光雷达数据单元,实时存储至缓存文件中的最后一个数据列,并利用最后一个通道的序号对最后一个数据列进行标记。
可以理解的是,针对每个数据采集时刻,将该时刻对应的数据存储至所述缓存文件中与该时刻对应的行。
作为一种实施方式,所述方法还包括:在确定从采集数据开始时刻到当前时刻之间的时长大于等于所述预设时长时,确定数据采集结束。
可以理解的是,每执行完一次步骤S11,或者每执行完一次步骤S11和S12就确定从采集数据开始时刻到当前时刻之间的时长是否大于等于所述预设时长。
可以理解的是,在确定从采集数据开始时刻到当前时刻之间的时长小于所述预设时长时,确定数据采集未结束,继续执行步骤S11和S12,直到确定数据采集结束时,才会执行步骤S13。
作为一种实施方式,所述方法还包括:在确定从采集数据开始时刻到当前时刻所采集到的数据的总长度大于等于预设长度时,确定数据采集结束。
可以理解的是,每执行完一次步骤S11,或者每执行完一次步骤S11和S12就确定从采集数据开始时刻到当前时刻所采集到的数据的总长度是否大于等于预设长度。
可以理解的是,在确定从采集数据开始时刻到当前时刻所采集到的数据的总长度小于所述预设长度时,确定数据采集未结束,继续执行步骤S11和S12,直到确定数据采集结束时,才会执行步骤S13。
作为一种实施方式,在确定数据采集结束之前,所述方法还包括步骤:A1、A2和A3。
A1:在确定存储至所述缓存文件中的数据的长度达到第一预设长度时,确定数据采集是否结束。
可以理解的是,每执行完一次步骤S12,确定所述缓存文件中的数据的长度是否大于等于第一预设长度,若确定所述缓存文件中的数据的长度大于等于第一预设长度,确定数据采集是否结束。
反之,若确定存储至所述缓存文件中的数据的长度未达到第一预设长度,则继续执行步骤S11和S12,直到确定存储至所述缓存文件中的数据的长度达到第一预设长度时,才会确定数据采集是否结束,继而才会执行步骤S13。
A2:在确定数据采集未结束时,按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的新的激光雷达数据单元,实时存储至新的缓存文件中。
其中,A2的具体实施方式请参照步骤S12,因此,在此不再赘述。
A3:在确定存储至所述新的缓存文件中的数据的长度达到第二预设长度时,确定数据采集是否结束。
其中,A3的具体实施方式请参照步骤A1,因此,在此不再赘述。
其中,S13包括:在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件和所述新的缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至所述数据文件中。
作为一种实施方式,在S13之后,所述方法还包括步骤:B1和B2。
B1:针对每个通道,从所述数据文件中读取该通道所对应的不同时刻所对应的激光雷达数据单元。
针对每个通道,根据该通道的序号,从所述数据文件中读取该通道的序号所对应的不同时刻所对应的激光雷达数据单元之后,执行步骤B2。
B2:针对该通道所对应的每个时刻所对应的激光雷达数据单元,将该激光雷达数据单元中的各个雷达廓线数据,对应存储至预先建立的树形结构中与该通道和该时刻对应的数据节点;其中,所述树形结构包括:根节点、通道关系层节点、多个时间关系层节点和多个数据层节点;所述通道关系层节点包括多个通道节点,各个通道节点以指针的方式串联;所述根节点的指针指向所述多个通道节点的首通道节点;每个时间关系层节点包括多个时间节点,以时间先后顺序将同一个时间关系层节点中的各时间节点以指针的方式串联;不同通道的指针指向不同时间关系层节点中时间最靠前的时间节点;每个数据层节点包括多个数据节点;按照雷达探测距离的大小顺序,将同一个数据层节点中的多个数据节点以指针的方式串联;其中,同一个数据层节点中的数据节点和探测距离一一对应;不同时间节点的指针指向不同的数据层节点中的首数据节点。
请参照图3,每个节点由三部分组成,从左至右为指针,节点的标识,Λ表示节点存储内容,所述根节点T的指针指向c1通道节点(即首通道节点)的地址,在指针指向c1通道节点之后,通过将指针的地址加一,则指针指向c2通道节点的地址;在指针指向c2通道节点之后,通过将指针的地址加一,则指针指向c3通道节点的地址,即各个通道节点以指针的方式串联。同理,针对所述多个通道中的每个通道,该通道节点指向与该通道对应的时间关系层节点中之间最靠前的时间节点,例如图3中的c1通道节点的指向t1时间节点(即时间最靠前的时间节点),在指针指向t1时间节点之后,若将指针的地址加一,则指针指向t2时间节点,在指针指向t2时间节点之后,若将指针的地址加一,则指针指向t3时间节点。同理,针对同一个通道所对应的多个时间节点中的每个时间节点,该时间节点指向与该时间节点对应的数据层节点中探测距离最靠短的数据节点,例如图3中的t1通道节点的指向具有s1 1,1标记的数据节点(即探测距离最短的数据节点),在指针指向具有s1 1,1标记的数据节点之后,若将指针的地址加一,则指针指向具有s1 2,1标记的节点。在其他实施例中,t1通道节点也可以指向探测距离最长的数据节点。
可以理解的是,请参照图3,针对c1通道所对应的t3时刻所对应的探测距离r2所对应的雷达廓线数据s1 2,3,将雷达廓线数据s1 2,3存储至树形结构中与c1通道和该t3时刻对应的数据节点中,即第5行中具有标记s1 2,3的数据节点。
作为一种实施方式,本申请实施例提供一种多通道激光雷达数据存储系统,该存储系统根据各种功能需求将系统分为交互层、控制及运算层以及数据层,如图4所示。
交互层的主要作用是用户操作系统和系统反馈数据或运算结果的直接窗口。交互层由可视化数据的显示界面与面向用户提供的控制面板组成,一方面负责对用户发出的操作指令及参数设置的接收,另一方面则对用户的数据可视化结果及数据存储结果进行反馈。
控制层包括控制模块和运算模块两部分。控制模块具有用户管理、参数设置、硬件通信、运算管理等多种功能。控制模块是整个系统的核心结构,既负责对交互层传输的用户指令进行解析与反馈,又负责解析指令实现对数据采集设备、数据流、运算模块和数据模块的控制。控制模块为整个系统的通信中转站,用户发出指令后,由交互层接收,发送给控制层,再由控制模块进行解析,执行用户所需的运算、查询等操作,再通过控制模块将反馈结果返回至上层模块,最后到达用户。此外,系统中的许多操作及运算通常需要并发进行,整个系统各工作进行的时序控制也需要控制模块完成。运算模块为数值运算、图形运算各种数据运算功能的集成模块。控制模块发出运算指令后,运算模块根据指令提供对应的运算函数或方法结构,并将运算结果返回控制层。激光雷达数据常用的运算有数据标准化,数据滤波,线性插值等。
数据层具备的主要功能有数据流的管理,数据的缓存及数据文件的存储和管理。数据流的管理主要包括两部分,第一是多通道激光雷达数据采集系统与存储系统之间的数据传递,存储系统通过数据层从激光雷达数据采集设备按控制层发出的时序读取数据,数据读入内存后,数据层将其写入为数据容器,等待写入缓存;第二是在进行多通道激光雷达数据实时可视化时需要从缓存文件中读取数据,必须保证缓存的写入与读取的独立性。数据的缓存包括临时缓存和文件缓存。临时缓存一般指只需进行运算并提供返回值而不需进行存储的数据,临时缓存在内存中进行;第二是待存储数据缓存,多通道激光雷达数据存储的方法借助缓存文件实现,因此,采集来的数据需要先以数据采集时间为单位存储,由于其数据量通常较大,需要借助缓存文件实现。当数据采集结束后,数据层将缓存文件中的数据提取出来并按照通道为单位进行存储至数据文件。
作为一种实施方式,所述方法还包括:在接收到需要查询ck数据通道所对应的数据的请求时,根据ck通道的标记,以及预先确定的树形结构,访问根节点,并通过更改指针的地址,以使指针指向ck数据通道所对应的时间关系节点层中时间最靠前的时间节点,并获取该首通道节点中的数据,并通过将指针地址不断加一,以获取ck数据通道所对应的全部数据。
激光雷达树形数据结构数据检索方法基于深度优先检索原理实现。由于激光雷达树形数据结构各子树T1,T2,T3,…,Tq在结构上相同,因此在访问的最大深度相等,按激光雷达树形数据结构检索方法访问时,先访问T1的全部节点,如果没有符合检索条件的节点,按顺序继续访问T2,以此类推访问T3,…,Tq。当被检索的目标数据具有明确的关系条件时,激光雷达树形数据结构检索方法优先向下进行访问,例如已知目标数据所属通道为ck所属的通道,在访问时将不进行c1到ck-1的通道节点访问,由于关系节点使用顺序结构,激光雷达树形数据结构检索方法将直接访问ck节点,以节省访问时间,提高检索效率。
算法执行流程如图5所示。首先访问根节点,然后判断当前访问的节点是否为目标节点,若不是目标节点,获取此节点的子节点,并将当前节点压入节点堆栈,访问当前节点的子节点。循环进行直到出现以下两种情况:第一,访问的当前节点为目标节点时,此时读取节点并跳出;第二,循环访问直到当前节点没有子节点,即已到达当前路径的末端时仍未找到目标节点,则从堆栈中弹出一个节点并获取它的一个未访问的子节点,继续循环。算法的终止条件有二个,即找到目标节点和遍历全部节点仍未找到目标节点(节点堆栈为空)。
请参照图6,图6是本申请实施例提供的一种多通道激光雷达数据存储装置600的结构框图。下面将对图6所示的结构框图进行阐述,所示装置包括:
采集单元610,用于分别采集不同时刻所述多通道中的各个通道所对应的激光雷达数据单元;其中,每个所述激光雷达数据单元包括:多个雷达探测距离中的各个雷达探测距离所对应的雷达廓线数据;
第一存储单元620,用于按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中。
第二存储单元630,用于在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中。
作为一种实施方式,所述装置还包括:第一确定单元,用于在确定从采集数据开始时刻到当前时刻之间的时长大于等于所述预设时长时,确定数据采集结束。
作为一种实施方式,所述装置还包括:第二确定单元,用于在确定从采集数据开始时刻到当前时刻所采集到的数据的总长度大于等于预设长度时,确定数据采集结束。
作为一种实施方式,所述装置还包括:第三确定单元,用于在确定存储至所述缓存文件中的数据的长度达到第一预设长度时,确定数据采集是否结束;新的第一存储单元,用于在确定数据采集未结束时,按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的新的激光雷达数据单元,实时存储至新的缓存文件中;第四确定单元,用于在确定存储至所述新的缓存文件中的数据的长度达到第二预设长度时,确定数据采集是否结束;其中,所述第二存储单元630具体用于,在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件和所述新的缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至所述数据文件中。
作为一种实施方式,所述装置还包括:新的存储单元,用于针对每个通道,从所述数据文件中读取该通道所对应的不同时刻所对应的激光雷达数据单元;以及针对该通道所对应的每个时刻所对应的激光雷达数据单元,将该激光雷达数据单元中的各个雷达廓线数据,对应存储至预先建立的树形结构中与该通道和该时刻对应的数据节点;其中,所述树形结构包括:根节点、通道关系层节点、多个时间关系层节点和多个数据层节点;所述通道关系层节点包括多个通道节点,各个通道节点以指针的方式串联;所述根节点的指针指向所述多个通道节点的首通道节点;每个时间关系层节点包括多个时间节点,以时间先后顺序将同一个时间关系层节点中的各时间节点以指针的方式串联;不同通道的指针指向不同时间关系层节点中时间最靠前的时间节点;每个数据层节点包括多个数据节点;按照雷达探测距离的大小顺序,将同一个数据层节点中的多个数据节点以指针的方式串联;其中,同一个数据层节点中的数据节点和探测距离一一对应;不同时间节点的指针指向不同的数据层节点中的首数据节点。
本实施例对的各功能单元实现各自功能的过程,请参见上述图1-5所示实施例中描述的内容,此处不再赘述。
请参照图7,图7为本申请实施例提供的一种电子设备300的结构示意图,电子设备300可以是个人电脑(personal computer,PC)、平板电脑、智能手机、个人数字助理(personal digital assistant,PDA)等。
电子设备300可以包括:存储器302、处理301、通信接口303和通信总线,通信总线用于实现这些组件的连接通信。
所述存储器302用于存储本申请实施例提供的多通道激光雷达数据存储方法和装置对应的计算程序指令等各种数据,其中,存储器302可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable ProgrammableRead-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable ProgrammableRead-Only Memory,EEPROM)等。
处理器301用于读取并运行存储于存储器中的多通道激光雷达数据存储方法和装置对应的计算机程序指令。
其中,处理器301可能是一种集成电路芯片,具有信号的处理能力。上述的处理器301可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
通信接口303,用于接收或者发送数据。
此外,本申请实施例还提供了一种存储介质,在该存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行本申请任一项实施方式所提供的方法。
综上所述,本申请各实施例提出的多通道激光雷达数据存储方法、装置及电子设备,按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中,由于在数据采集时的数据采集单位与将数据存储至缓存文件中的单位一致,即均以时间为单位,因此,数据存储效率高;其次,由于同一通道所对应的雷达廓线数据属于同种数据类型的数据,因此,为了便于后期快速检索,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中,即以通道为单位进行存储,继而便于后期以同种类型的数据为单位进行快速检索。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

Claims (9)

1.一种多通道激光雷达数据存储方法,其特征在于,应用于多通道的激光雷达系统,所述方法包括:
分别采集不同时刻所述多通道中的各个通道所对应的激光雷达数据单元;其中,每个所述激光雷达数据单元包括:多个雷达探测距离中的各个雷达探测距离所对应的雷达廓线数据;
按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中;
在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中;
其中,在确定数据采集结束之前,所述方法还包括:
在确定存储至所述缓存文件中的数据的长度达到第一预设长度时,确定数据采集是否结束;
在确定数据采集未结束时,按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的新的激光雷达数据单元,实时存储至新的缓存文件中;
在确定存储至所述新的缓存文件中的数据的长度达到第二预设长度时,确定数据采集是否结束;
所述在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中,包括:
在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件和所述新的缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定从采集数据开始时刻到当前时刻之间的时长大于等于预设时长时,确定数据采集结束。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定从采集数据开始时刻到当前时刻所采集到的数据的总长度大于等于预设长度时,确定数据采集结束。
4.根据权利要求1所述的方法,其特征在于,在所述按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中之后,所述方法还包括:
针对每个通道,从所述数据文件中读取该通道所对应的不同时刻所对应的激光雷达数据单元;
针对该通道所对应的每个时刻所对应的激光雷达数据单元,将该激光雷达数据单元中的各个雷达廓线数据,对应存储至预先建立的树形结构中与该通道和该时刻对应的数据节点;其中,所述树形结构包括:根节点、通道关系层节点、多个时间关系层节点和多个数据层节点;所述通道关系层节点包括多个通道节点,各个通道节点以指针的方式串联;所述根节点的指针指向所述多个通道节点的首通道节点;每个时间关系层节点包括多个时间节点,以时间先后顺序将同一个时间关系层节点中的各时间节点以指针的方式串联;不同通道的指针指向不同时间关系层节点中时间最靠前的时间节点;每个数据层节点包括多个数据节点;按照雷达探测距离的大小顺序,将同一个数据层节点中的多个数据节点以指针的方式串联;其中,同一个数据层节点中的数据节点和探测距离一一对应;不同时间节点的指针指向不同的数据层节点中的首数据节点。
5.一种多通道激光雷达数据存储装置,其特征在于,应用于多通道的激光雷达系统,所述装置包括:
采集单元,用于分别采集不同时刻所述多通道中的各个通道所对应的激光雷达数据单元;其中,每个所述激光雷达数据单元包括:多个雷达探测距离中的各个雷达探测距离所对应的雷达廓线数据;
第一存储单元,用于按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的激光雷达数据单元,实时存储至缓存文件中;
第二存储单元,用于在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中;
其中,在确定数据采集结束之前,所述第一存储单元还用于:
在确定存储至所述缓存文件中的数据的长度达到第一预设长度时,确定数据采集是否结束;
在确定数据采集未结束时,按照数据采集的时间顺序,依次将不同时刻获取到的各个通道所对应的新的激光雷达数据单元,实时存储至新的缓存文件中;
在确定存储至所述新的缓存文件中的数据的长度达到第二预设长度时,确定数据采集是否结束;
所述在确定数据采集结束时,所述第二存储单元具体用于:
在确定数据采集结束时,按照通道排列顺序,依次将所述缓存文件和所述新的缓存文件中的不同通道所对应的各个时刻所对应的激光雷达数据单元,存储至数据文件中。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第一确定单元,用于在确定从采集数据开始时刻到当前时刻之间的时长大于等于预设时长时,确定数据采集结束。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第二确定单元,用于在确定从采集数据开始时刻到当前时刻所采集到的数据的总长度大于等于预设长度时,确定数据采集结束。
8.一种电子设备,其特征在于,包括存储器以及处理器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器读取并运行时,执行如权利要求1-4中任一项所述的方法。
9.一种存储介质,其特征在于,所述存储介质上存储有计算机程序指令,所述计算机程序指令被计算机读取并运行时,执行如权利要求1-4中任一项所述的方法。
CN202010847803.6A 2020-08-21 2020-08-21 多通道激光雷达数据存储方法、装置及电子设备 Active CN112000628B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010847803.6A CN112000628B (zh) 2020-08-21 2020-08-21 多通道激光雷达数据存储方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010847803.6A CN112000628B (zh) 2020-08-21 2020-08-21 多通道激光雷达数据存储方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112000628A CN112000628A (zh) 2020-11-27
CN112000628B true CN112000628B (zh) 2024-02-02

Family

ID=73473496

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010847803.6A Active CN112000628B (zh) 2020-08-21 2020-08-21 多通道激光雷达数据存储方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN112000628B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112860191B (zh) * 2021-03-02 2021-10-29 深圳市东方聚成科技有限公司 一种基于多通道的同步分道存储方法
CN115754971B (zh) * 2023-01-10 2023-09-15 湖南傲英创视信息科技有限公司 一种基于离散dma技术的雷达数据采集存储方法和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4890249A (en) * 1988-03-16 1989-12-26 Hughes Simulation Systems, Inc. Data compression and decompression for digital radar landmass simulation
CN107844115A (zh) * 2016-09-20 2018-03-27 北京百度网讯科技有限公司 用于无人驾驶车辆的数据获取方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4890249A (en) * 1988-03-16 1989-12-26 Hughes Simulation Systems, Inc. Data compression and decompression for digital radar landmass simulation
CN107844115A (zh) * 2016-09-20 2018-03-27 北京百度网讯科技有限公司 用于无人驾驶车辆的数据获取方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吕卫 ; 王粟瑶 ; .三维成像激光雷达高带宽数据采集与存储系统.激光与光电子学进展.2018,(10),全文. *

Also Published As

Publication number Publication date
CN112000628A (zh) 2020-11-27

Similar Documents

Publication Publication Date Title
CN108170859B (zh) 语音查询的方法、装置、存储介质及终端设备
AU2019333921B2 (en) Method and system for indexing of time-series data
CN112000628B (zh) 多通道激光雷达数据存储方法、装置及电子设备
CN109741060B (zh) 信息查询系统、方法、装置、电子设备及存储介质
CN106295250A (zh) 二代测序短序列快速比对分析方法及装置
CN106326309A (zh) 一种数据查询方法和装置
CN113918733B (zh) 一种获取目标知识图谱的数据处理系统
Liu et al. New analytical approach to detection threshold of a dynamic programming track‐before‐detect algorithm
Ramesh et al. Data modelling for discrete time series data using Cassandra and MongoDB
CN100462978C (zh) 一种图像检索方法及系统
CN103440249A (zh) 一种非结构化数据快速检索的系统及方法
CN114817651B (zh) 数据存储方法、数据查询方法、装置和设备
CN107179933A (zh) 动态语言变量识别方法、装置、翻译方法及软件移植方法
CN115454353B (zh) 一种面向空间应用数据的高速写入及查询方法
CN111427977B (zh) 电子眼数据的处理方法及装置
CN113626483B (zh) 一种填写表单的前端缓存方法、系统、设备及存储介质
CN112328630B (zh) 数据查询方法、装置、设备及存储介质
CN114116811B (zh) 日志处理方法、装置、设备及存储介质
CN102902701A (zh) 信息查询系统及方法
CN106202127A (zh) 一种垂直搜索引擎对检索请求的处理方法及装置
CN104077282B (zh) 处理数据的方法和装置
CN110928868B (zh) 车辆数据检索方法、装置及计算机可读存储介质
CN104679808A (zh) 用于使用和建立块级别索引进行搜索询问的方法和系统
CN112100313B (zh) 一种基于最细粒度切分的数据索引方法及系统
CN114186147A (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