CN108306649B - 一种用于测距传感器的数据处理的方法及设备 - Google Patents
一种用于测距传感器的数据处理的方法及设备 Download PDFInfo
- Publication number
- CN108306649B CN108306649B CN201810602027.6A CN201810602027A CN108306649B CN 108306649 B CN108306649 B CN 108306649B CN 201810602027 A CN201810602027 A CN 201810602027A CN 108306649 B CN108306649 B CN 108306649B
- Authority
- CN
- China
- Prior art keywords
- ranging
- sampled point
- data
- crucial
- point
- 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
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3059—Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
- H03M7/3062—Compressive sampling or sensing
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Radar Systems Or Details Thereof (AREA)
- Optical Radar Systems And Details Thereof (AREA)
Abstract
本申请的目的是提供一种用于测距传感器的数据处理的方法及设备,本申请通过将通过测距传感器得到的测距数据分组为多个数据组,其中,每个数据组包含相同数量的测距数据点;对所述每个数据组内的测距数据点进行分类,以分为关键测距采样点和非关键测距采样点;根据预设编码方式分别对所述关键测距采样点和非关键测距采样点进行压缩,相应的得到压缩后的关键测距采样点和压缩后的非关键测距采样点;通过第一预设的还原公式还原所述压缩后的关键测距采样点,以及通过第二预设的还原公式还原所述压缩后的非关键测距采样点。能够节约成本提高系统可靠性,具有更高的实时性同时较低的运算资源消耗,以及较好的数据还原度。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种用于测距传感器的数据处理的方法及设备。
背景技术
目前激光雷达传感器广泛的应用于机器人自主定位导航、无人驾驶等需要高精度、高实时性环境测量扫描的行业。该传感器使用非常高速的激光测距核心,可以在一秒内实现上千次至的十几万次的距离测量,并且具备十多米到几百米的测量范围以及最高毫米级别的测量分辨率。为了实现实时测量要求,激光雷达必须将上述数据及时的通过自身通讯接口发送给外部的处理系统。因此激光雷达往往具有很大的数据吞吐量。近年来,随着应用场景和技术发展,又出现了多线束激光雷达,由于其采集的数据更加丰富,对于激光雷达的通讯带宽要求又加重了挑战。
如何实现激光雷达采样数据的有效传输一直是充满挑战的课题。其中一种方式是通过对激光雷达输出数据进行压缩的方式减少实际传输的数据量,从而可以在不增加通讯带宽或者少量增加通讯带宽的情况下提供数据吞吐量。该方法的难点在于所采用的压缩算法需要同时具备高度的实时性和稳定的压缩比。因为激光雷达每秒将产生数千至数十万的数据,压缩算法必须能在很少的数据样本下就完成一次压缩迭代并输出数据,否则就会产生输出数据延迟,破坏了激光雷达传感器的高速扫描特性。但目前,现有算法要在这样的条件下保证压缩必是比较困难的。
目前,适用于激光雷达数据特性的压缩算法分为有损和无损两种大类。在无损压缩算法中,常见的如游程编码(run-length encoding,RLE)虽然算法简单且能保持一定的实时性,但由于激光雷达数据本身充满着噪声,相邻数据基本不相同,因此RLE难以实现有效压缩。另一种常见的无损压缩方式为基于数据的概率模型进行优化编码压缩,如霍夫曼(Huffman)编码方法,该方式要求对于压缩数据进行概率学统计后进行压缩编码。虽然压缩比率较高,但由于这类算法要求对总体数据先进行概率学统计,因此无法实现实时编码输出的要求。而目前最常见的基于字典模型的压缩算法,例如流行的Lempel-Ziv系列算法:LZ77/LZMA等,也需要压缩数据具有一定的重复模式且需要进行一定的数据统计后方可压缩。无法适用于激光雷达数据相对无序和高实时性的要求。
另一类压缩方式为有损压缩,它们可以在一定程度上实现数据的实时压缩,广泛应用在图像、音频数据的压缩传输中。然而目前并不存在针对激光雷达数据特性设计的压缩算法。常规用于图像、音频的有损压缩算法难以针对激光雷达数据得到理想的效果,并且有损算法容易令激光雷达丢失测距细节。同时,目前绝大部分的有损压缩算法基于是基于频域信号进行的,这难以在激光雷达内部的嵌入式处理器内凭借性能非常有限的运算能力实现大数据量的实时性压缩。
针对目前压缩算法直接在激光雷达中使用的困难,目前,也有直接将激光雷达数据进行简单截断处理的方案,比如限制输出数据的分辨率,例如从原先毫米级别的数据降低到厘米级别精度,从而可以减少每次采样数据的所使用的比特位。这种方案运算量比较低,的确可以实现很好的实时性,压缩比率也有保障。但本身也是一种有损压缩,且直接导致了激光雷达数据的分辨率和精度的损失。因此也难以满足需要高精度输出的场合使用。
发明内容
本申请的一个目的是提供一种用于测距传感器的数据处理的方法及设备,解决现有的压缩算法无法适用于激光雷达数据相对无序和高实时性的要求、难以在激光雷达内部的嵌入式处理器内实现大数据量的实时性压缩及难以满足需要高精度输出的场合使用的问题。
根据本申请的一个方面,提供了一种用于测距传感器的数据处理的方法,该方法包括:
将通过测距传感器得到的连续测距数据按对应的序列的相邻关系分组为多个数据组,其中,每个数据组包含相同数量的测距数据点;
对所述每个数据组内的测距数据点进行分类,以分为关键测距采样点和非关键测距采样点;
根据预设编码方式分别对所述关键测距采样点和非关键测距采样点进行压缩,相应的得到压缩后的关键测距采样点和压缩后的非关键测距采样点,其中,所述预设编码方式包括用于对所述关键测距采样点进行压缩的第一编码方式,以及用于对非关键测距采样点进行压缩的第二编码方式;
通过第一预设的还原公式还原所述压缩后的关键测距采样点,以及通过第二预设的还原公式还原所述压缩后的非关键测距采样点。
进一步地,对所述每个数据组内的测距数据点进行分类,以分为关键测距采样点和非关键测距采样点,包括:
从所述每个数据组中按照选取规则选取一个或多个测距数据点作为关键测距采样点,其余测距数据点作为非关键测距采样点,同时,每个数据组内包含相同数量的关键测距采样点。
进一步地,所述选取规则包括以下至少任一项:
从每个数据组中选取有效的距离测量的测距数据点作为关键测距采样点,其中,所述有效的距离测量满足以下条件:非零距离读数数据、目标距离被测量到及测量信号在预设范围内;
确定在每个数据组中与其他测距数据点之间的距离超过距离阈值的测距数据点,以作为关键测距采样点。
进一步地,根据预设编码方式分别对所述关键测距采样点和非关键测距采样点进行压缩,相应的得到压缩后的关键测距采样点和压缩后的非关键测距采样点,包括:
采用非线性映射编码方式,根据预设的映射规则将所述关键测距采样点进行变换,将变换后的数据作为压缩后的关键测距采样点,其中,所述预设的映射规则满足以下方程:
其中,x表示所述关键测距采样点对应的数值,F(x)表示对变量x进行数据压缩后的数值x′,Scale(x)表示为随x单调递增的函数,并且对于任意x,满足:|Scale(x)|≥1,Base(x)表示随x单调递增的函数,且对于任意x,满足|Base(x)|≤x,且至少存在一个x0,使得|Base(x0)|=x0。
进一步地,所述第二编码方式包括:
从当前非关键测距采样点所在的同一数据组及相邻的数据组内选取关键测距采样点作为参考点,根据所述参考点对所述当前非关键测距采样点进行压缩,并满足以下方程:
其中,x表示所述非关键测距采样点对应的数值,xref表示所述参考点对应的数值,D(x)表示对变量x进行数据压缩后的数值x′,Scale(xref)表示为随x单调递增的函数,并且对于任意x,满足:|Scale(xref)|≥1。
进一步地,所述第一预设的还原公式满足以下方程:
x=F-1(x′)=BaseR(x′)+[x′-F(BaseR(x′)))]·ScaleR(x′),
其中,x表示所述关键测距采样点对应的数值,F-1(x′)是F(x)的反函数,函数BaseR(x′)满足以下定义:
BaseR(x′)=Base(F-1(x′)),
函数ScaleR(x′)满足以下定义:
ScaleR(x′)=Scale(F-1(x′))。
进一步地,所述第二预设的还原公式满足以下方程:
x=x′·ScaleR(xref)+xref,
其中,x表示所述非关键测距采样点对应的数值,xref表示所述参考点对应的数值。
进一步地,从当前非关键测距采样点所在的同一数据组及相邻的数据组内选取关键测距采样点作为参考点,包括:
比较当前非关键测距采样点所在的同一数据组内及相邻的数据组内的关键测距采样点的测距置信度,将测距置信度最高的关键测距采样点作为参考点,若两组内的关键测距采样点的测距置信度相同,则将当前非关键测距采样点所在的同一数据组内的关键测距采样点作为参考点。
进一步地,所述方法包括:
确定压缩后的数据分组,其中,所述压缩后的数据分组包括由原属于同一数据组内的关键测距采样点及非关键测距采样点进行压缩得到的数据;
将同一压缩后的数据分组内的关键测距采样点及非关键测距采样点分别按照预设的比特数据位进行存储。
根据本申请另一个方面,还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如前述所述的方法。
根据本申请再一个方面,还提供了一种用于测距传感器的数据处理的设备,其中,所述设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述所述方法的操作。
与现有技术相比,本申请通过将通过测距传感器得到的测距数据分组为多个数据组,其中,每个数据组包含相同数量的测距数据点;对所述每个数据组内的测距数据点进行分类,以分为关键测距采样点和非关键测距采样点;根据第一编码方式对所述关键测距采样点进行压缩,得到压缩后的关键测距采样点,以及根据第二编码方式对非关键测距采样点进行压缩,得到压缩后的非关键测距采样点;通过第一预设的还原公式还原所述压缩后的关键测距采样点,以及通过第二预设的还原公式还原所述压缩后的非关键测距采样点。能够有效降低测距传感器数据通讯带宽需求,从而降低系统复杂性,节约成本提高系统可靠性。具有更高的实时性同时较低的运算资源消耗,同时针对测距传感器的数据特性,具有较好的数据还原度。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出根据本申请的一个方面提供的一种用于测距传感器的数据处理的方法流程示意图;
图2示出本申请一实施例中的用于测距传感器的数据处理的设备结构示意图;
图3示出根据本申请一实施例中激光雷达精度随距离变化关系的示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、通讯接口(如UART或者以太网)和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
图1示出根据本申请的一个方面提供的一种用于测距传感器的数据处理的方法流程示意图,该方法包括:步骤S11~步骤S14,其中,在步骤S11中,将通过测距传感器得到的连续测距数据按对应的序列的相邻关系分组为多个数据组,其中,每个数据组包含相同数量的测距数据点;在步骤S12中,对所述每个数据组内的测距数据点进行分类,以分为关键测距采样点和非关键测距采样点;在步骤S13中,根据预设编码方式分别对所述关键测距采样点和非关键测距采样点进行压缩,相应的得到压缩后的关键测距采样点和压缩后的非关键测距采样点,其中,所述预设编码方式包括用于对所述关键测距采样点进行压缩的第一编码方式,以及用于对非关键测距采样点进行压缩的第二编码方式;在步骤S14中,通过第一预设的还原公式还原所述压缩后的关键测距采样点,以及通过第二预设的还原公式还原所述压缩后的非关键测距采样点。通过针对测距传感器自身输出数据的特性进行了设计,可以实现对压缩实时性和压缩比率可靠性的兼顾,同时保留了原始输出数据的精度。
具体地,在步骤S11中,将通过测距传感器得到的连续测距数据按对应的序列的相邻关系分组为多个数据组,其中,每个数据组包含相同数量的测距数据点;在此,测距传感器优选为激光雷达或具有以下输出数据特点的测距传感器:输出数据随着测量距离增加而精度下降。实现雷达数据的实时压缩编码,首先对数据预先分组,进一步地,数据预先分组时,可将通过测距传感器得到的连续测距数据按对应的序列的相邻关系分组为多个数据组。例如,设激光雷达输出的测距数据为一有序序列S:x1,x2,...,xi,...,其中每个采样数据以xi表示。划分后得到的第k个数据组表示为Pk{xn(k-1)+i:1≤i<n},其中n表示数据组包含的测距数据个数。
接着,在步骤S12中,对所述每个数据组内的测距数据点进行分类,以分为关键测距采样点和非关键测距采样点;在此,对每个数据组中的数据点进行划分,划分为两种类型的数据点,以方便后续采用两种不同的压缩编码策略进行处理。
随后,在步骤S13中,根据预设编码方式分别对所述关键测距采样点和非关键测距采样点进行压缩,相应的得到压缩后的关键测距采样点和压缩后的非关键测距采样点,其中,所述预设编码方式包括用于对所述关键测距采样点进行压缩的第一编码方式,以及用于对非关键测距采样点进行压缩的第二编码方式。在此,根据第一编码方式对所述关键测距采样点进行压缩,得到压缩后的关键测距采样点,以及根据第二编码方式对非关键测距采样点进行压缩,得到压缩后的非关键测距采样点;在本申请一实施例,针对激光雷达测量或类似距离测量传感器的数据在相邻的采样点之间,具有距离相对变化较少的特性,分别针对关键测距采样点和非关键测距采样点,采用不同的方式进行压缩编码,使用非对等的差分编码方式进一步地数据压缩。
最后,在步骤S14中,通过第一预设的还原公式还原所述压缩后的关键测距采样点,以及通过第二预设的还原公式还原所述压缩后的非关键测距采样点。在此,先通过预设的公式还原被压缩的关键测距采样点,在完成了对关键测距采样点的还原后,其余的非关键采样点可通过第二预设的还原公式进行还原,进而完成当前数据分组的还原,输出数据,供外部系统其它部分使用。
在本申请一实施例中,在步骤S12中,对每个数据组中的数据点进行划分时,从所述每个数据组中按照选取规则选取一个或多个测距数据点作为关键测距采样点,其余测距数据点作为非关键测距采样点,同时,每个数据组内包含相同数量的关键测距采样点。在此,每个数据组中至少选出一个或多个关键测距采样点,后续采用第一编码方式(A方式编码),每个数据组分组Pk包含相同数量的关键测距采样点。其余的数据点划分为非关键测距采样点,后续采用第二编码方式(B方式编码)。
进一步地,所述选取规则包括以下至少任一项:从每个数据组中选取有效的距离测量的测距数据点作为关键测距采样点,其中,所述有效的距离测量满足以下条件:非零距离读数数据、目标距离被测量到及测量信号在预设范围内;确定在每个数据组中与其他测距数据点之间的距离超过距离阈值的测距数据点,以作为关键测距采样点。在本申请一实施例中,对于关键测距采样点的选择规则至少包含以下任一种情况:a)该测距采样点数据为有效的距离测量,无效的测距包含0距离读数数据、目标距离无法测量到或测量信号被激光雷达测距核心认定为存在较大误差的,比如误差范围与实际真实数据误差大于5%,则被认为为无效的测距。b)该测量点去其他数据测量点存在较大数值变化。
进一步地,对关键测距采样点采取A方式压缩编码过程为:
采用非线性映射编码方式,根据预设的映射规则将所述关键测距采样点进行变换,将变换后的数据作为压缩后的关键测距采样点,其中,所述预设的映射规则满足以下方程:
其中,x表示所述关键测距采样点对应的数值,F(x)表示对变量x进行数据压缩后的数值x′,Scale(x)表示为随x单调递增的函数,并且对于任意x,满足:|Scale(x)|≥1,Base(x)表示随x单调递增的函数,且对于任意x,满足|Base(x)|≤x,且至少存在一个x0,使得|Base(x0)|=x0。
在此,使用非线性映射编码方式,将原先的数据按照预先设定的映射规则变换为新的数据表示方式。映射后的数据可以使用更少的数据比特来表示原先的测距数据,从而实现数据压缩的目的。
进一步地,对于非关键测距采样点,采取第二编码方式(B方式编码),过程如下:
从当前非关键测距采样点所在的同一数据组及相邻的数据组内选取关键测距采样点作为参考点,根据所述参考点对所述当前非关键测距采样点进行压缩,并满足以下方程:
其中,x表示所述非关键测距采样点对应的数值,xref表示所述参考点对应的数值,D(x)表示对变量x进行数据压缩后的数值x′,Scale(xref)表示为随x单调递增的函数,并且对于任意x,满足:|Scale(xref)|≥1。
在此,在同数组Pk和相邻的数据组Pk-1以及Pk+1内,为当前的非关键测距采样点按照确定的规则寻找一个关键测距采样点作为参考点。设当前非关键测距采样点数据为x,参考的关键测距采样点数值为xref。则通过B方式压缩编码后的数据数值通过如上函数表达。进一步地,选取参考点时可以通过以下方式进行:比较当前非关键测距采样点所在的同一数据组内及相邻的数据组内的关键测距采样点的测距置信度,将测距置信度最高的关键测距采样点作为参考点,若两组内的关键测距采样点的测距置信度相同,则将当前非关键测距采样点所在的同一数据组内的关键测距采样点作为参考点。在此,在恢复编码时,非关键测距采样点是通过参考点恢复得到的,因此,采用上述方式选取置信度较高的关键测距采样点作为参考点,可以使得恢复后的非关键测距采样点更加精确。
在此,通过上述过程,将每个数据组P内的数据进行上述编码压缩后,将得到一个压缩后的数据组Pz,其中包含了对P中元素的压缩后数据。激光雷达将Pz输出到通讯接口。
外部系统在接收到激光雷达发送的压缩数据分组Pz后,内置其中的编码还原单元首先通过以下公式还原被压缩的关键测距采样点,即所述第一预设的还原公式满足以下方程:
x=F-1(x′)=BaseR(x′)+[x′-F(BaseR(x′)))]·ScaleR(x′),
其中,x表示所述关键测距采样点对应的数值,F-1(x′)是F(x)的反函数,函数BaseR(x′)满足以下定义:
BaseR(x′)=Base(F-1(x′)),
函数ScaleR(x′)满足以下定义:
ScaleR(x′)=Scale(F-1(x′))。
在完成了对关键测距采样点的还原后,其余的非关键测距采样点可通过所述第二预设的还原公式进行还原,其中,第二预设的还原公式满足以下方程:
x=x′·ScaleR(xref)+xref,
其中,x表示所述非关键测距采样点对应的数值,xref表示所述参考点对应的数值。
上述分别对关键测距采样点和非关键测距采样点进行压缩编码的方式,与现有的数据压缩相比,运算简单,可以满足激光雷达高度实施性的数据输出的需求。同时,也具备稳定的数据压缩比率,压缩比率不会随着数据本身波动。另一方面,由于压缩算法上考虑了激光雷达数据的特性,通过设置合理的Scale(x)和Base(x)函数,可以实现在近距离范围下高精度数据表达。
进一步地,确定压缩后的数据分组,其中,所述压缩后的数据分组包括由原属于同一数据组内的关键测距采样点及非关键测距采样点进行压缩得到的数据;将同一压缩后的数据分组内的关键测距采样点及非关键测距采样点分别按照预设的比特数据位进行存储。在此,对于一组连续的激光雷达输出数据,将其中的若干具有代表性(如变化较大)的数据点定义为关键点,采用相对较多的数字比特位表示数据,从而保证压缩数据的精确表达。而对其他的数据点,利用相邻数据存在相似性的原理,使用差分编码方式,仅编码这类数据相对于前面关键点差值的部分,并配合非线性编码,对于远距离情况下的差值数据,同样降低量化比特位的方式,实现进一步地数据压缩。
相比于传统的基于词典法或者概率模型的无损压算法,本申请所述的用于测距传感器的数据处理的方法,无需对原始数据进行宏观的概率统计或进行重复模式的识别。因此可实现很高的实时性。而相比RLE(游程编码)无法处理激光雷达数据充满噪声数据进行压缩的情况,本申请可以有效的对噪声数据进行压缩;相比于传统的有损压缩算法,本申请无复杂的运算负荷,同时针对激光雷达的数据特性,即使进行有损式数据压缩时,也可以满足激光雷达量程范围内精度不出现实际的损失。
本申请适用于激光雷达或者同类测距传感器的测距输出数据的处理方法,包括压缩编码方法,能够有效降低激光雷达数据通讯带宽需求,从而降低系统复杂性,节约成本提高系统可靠性。如图2所示的本申请一实施例中的用于测距传感器的数据处理的设备结构示意图,采用本申请中所述的数据压缩编码方法的激光雷达设备内部具有一数据编码压缩单元11,对激光雷达每次距离采集的数据进行本申请提供的方法进行压缩。压缩的数据经过激光雷达对外通讯接口输出的外部处理系统中,并经过数据恢复单元12进行还原。相比于传统的压缩编码方法,本申请提出的方法具有更高的实时性同时较低的运算资源消耗,同时针对激光雷达等测距传感器的数据特性,具有较好的数据还原度。
针对激光雷达和类似距离测量传感器输出数据随着测量距离增加而精度下降的特点,如图3所示的激光雷达精度随距离变化关系的示意图,本申请所述的压缩方法使用非线性数据编码的方式,通过使用不同的量化等级编码不同距离数据。对于表示近距离的数据,使用较多的数字比特位量化数值。实现近距离下对于高精度数据的表达。而对相对远距离的数据,使用较少的数字比特位量化数值,从而对于远距离数据,可以使用相对较少的比特位表达数据,达到了压缩作用。同时由于量化精度本身始终高于激光雷达的测量精度,所以不存在实际上的精度损失。
在本申请一优选实施例中,假设激光雷达原始数据采用以毫米为单位的非负整数。
数据压缩单元11按照如下的步骤进行数据压缩:
在步骤S11和步骤S12中,依次进行数据预先分组和划分,优选的实现将每三个相邻的原始数据编为一个分组,其中包含1个关键数据点(关键测距采样点)和2个非关键数据点(非关键测距采样点)。
对于压缩后的分组Pz,关键数据点采用12比特数据位存储,非关键数据点采用10比特数据位表示。因而每个分组占用32比特数据位,正好可以使用4字节的数据表达。其数据结构如表1所示:
表1
其中,每种数据点在实际数据结构中出现的位置和顺序并不限定,表1中的结构仅为举例。在数据的划分策略上,优选地,首先按照原始数据出现的先后顺序进行划分。在一个分组内,第一个输入的数据划分为关键点,其次的数据点为非关键数据点。同时,根据具体情况,划分规则也可出现调整,但仅限于组内元素的调整。
在步骤S13中,对于关键测距采样点采取A方式压缩编码,优选地实现过程如下:
非线性映射函数F(x)中的子函数Base(x)定义为如下表2所示:
x数值 | Base(x)输出值 |
0≤x<512 | 0 |
512≤x<2048 | 512 |
2048≤x<4096 | 2048 |
4096≤x<16384 | 4096 |
16384≤x | 16384 |
表2
非线性映射函数F(x)中的子函数Scale(x)定义为如下表3所示:
x数值 | Scale(x)输出值 |
0≤x<512 | 1 |
512≤x<2048 | 2 |
2048≤x<4096 | 4 |
4096≤x<16384 | 8 |
16384≤x | 16 |
表3
对于划分为关键点的原始数据,采用上述非线性映射函数F(x)进行压缩,从而可得到压缩后的数据。将压缩后的数据(压缩后的关键点)存储在压缩后分组Pz内的12bit区域内。
接着,对于非关键点,采取B方式压缩编码的具体过程为:寻找当前分组Pk和下一个分组Pk+1中测距置信度更高的关键点。诸如0距离或者无法读出测距数据的数据点,认为是置信度较低的点。如果两个关键点的置信度一致,则优选当前分组内的数据,使用如下的公式对当前的非关键点进行压缩编码:
其中,Scale(x)定义和前步骤一致,xref为选取后的关键点,x为当前的非关键点数据。x’为压缩后的非关键点。
关键点及非关键点都进行压缩后,将压缩后的数据(压缩后的非关键点)保存在当前压缩后分组Pz内的对应10bit区域内。
在完成对一个压缩后分组Pz中关键点和两个非关键点的数据填充后,将这个32bit的Pz数据输出,供通讯接口发送到外部系统。
数据还原单元12按照如下的步骤进行数据压缩:
在步骤S14中,外部系统在接收到每一个激光雷达发送的压缩数据分组后,内置在其中的编码还原单元首先采用如下的映射函数将其中12比特关键点进行还原:
x=F-1(x′)=BaseR(x′)+[x′-F(BaseR(x′)))]·ScaleR(x′)
其中,BaseR(x)的函数定义由下表4给出:
x数值 | BaseR(x)输出值 |
0≤x<512 | 0 |
512≤x<1280 | 512 |
1280≤x<1792 | 2048 |
1792≤x<3328 | 4096 |
3328≤x | 16384 |
表4
ScaleR(x)函数定义如下表5所示:
x数值 | ScaleR(x)输出值 |
0≤x<512 | 1 |
512≤x<1280 | 2 |
1280≤x<1792 | 4 |
1792≤x<3328 | 8 |
3328≤x | 16 |
表5
随后,还原单元继续接收下一个压缩分组并同样对其中的关键点进行还原。
接着,在完成了对关键测距采样点的还原后,对当前的压缩分组其余的2个非关键采样点使用如下公式还原:
x=x′·ScaleR(xref)+xref
其中,xref为从当前压缩分组和下一个压缩分组中还原出来的关键数据点按照压缩过程同样规则选择而来的数值。x’为当前的压缩后非关键点,x为通过还原的非关键点。
将当前分组中两个非关键采样点通过还原后,数据还原单元12完成了对当前数据分组的还原。进而输出数据,供外部系统其他部分使用。
通过本申请上述所述的优选实施例中的实现方式,可以编码最大28672毫米的距离采样数据,同时可以实现0.4%以内的数据表达精度。按照采样定律,可以保证激光雷达的数据精度不出现损失。
此外,根据本申请另一个方面,还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如前述所述的方法。
此外,根据本申请再一个方面,还提供了一种用于测距传感器的数据处理的设备,其中,所述设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述所述方法的操作。例如,所述计算机可读指令在被执行时使所述处理器执行如下操作:
将通过测距传感器得到的测距数据分组为多个数据组,其中,每个数据组包含相同数量的测距数据点;
对所述每个数据组内的测距数据点进行分类,以分为关键测距采样点和非关键测距采样点;
根据第一编码方式对所述关键测距采样点进行压缩,得到压缩后的关键测距采样点,以及根据第二编码方式对非关键测距采样点进行压缩,得到压缩后的非关键测距采样点;
通过第一预设的还原公式还原所述压缩后的关键测距采样点,以及通过第二预设的还原公式还原所述压缩后的非关键测距采样点。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (11)
1.一种用于测距传感器的数据处理的方法,其中,所述方法包括:
将通过测距传感器得到的连续测距数据按对应的序列的相邻关系分组为多个数据组,其中,每个数据组包含相同数量的测距数据点;
对所述每个数据组内的测距数据点进行分类,以分为关键测距采样点和非关键测距采样点;
根据预设编码方式分别对所述关键测距采样点和非关键测距采样点进行压缩,相应的得到压缩后的关键测距采样点和压缩后的非关键测距采样点,其中,所述预设编码方式包括用于对所述关键测距采样点进行压缩的第一编码方式,以及用于对非关键测距采样点进行压缩的第二编码方式;
通过第一预设的还原公式还原所述压缩后的关键测距采样点,以及通过第二预设的还原公式还原所述压缩后的非关键测距采样点。
2.根据权利要求1所述的方法,其中,对所述每个数据组内的测距数据点进行分类,以分为关键测距采样点和非关键测距采样点,包括:
从所述每个数据组中按照选取规则选取一个或多个测距数据点作为关键测距采样点,其余测距数据点作为非关键测距采样点,同时,每个数据组内包含相同数量的关键测距采样点。
3.根据权利要求2所述的方法,其中,所述选取规则包括以下至少任一项:
从每个数据组中选取有效的距离测量的测距数据点作为关键测距采样点,其中,所述有效的距离测量满足以下条件:非零距离读数数据、目标距离被测量到及测量信号在预设范围内;
确定在每个数据组中与其他测距数据点之间的距离超过距离阈值的测距数据点,以作为关键测距采样点。
4.根据权利要求1所述的方法,其中,根据预设编码方式分别对所述关键测距采样点和非关键测距采样点进行压缩,相应的得到压缩后的关键测距采样点和压缩后的非关键测距采样点,包括:
采用非线性映射编码方式,根据预设的映射规则将所述关键测距采样点进行变换,将变换后的数据作为压缩后的关键测距采样点,其中,所述预设的映射规则满足以下方程:
其中,x表示所述关键测距采样点对应的数值,F(x)表示对变量x进行数据压缩后的数值x′,Scale(x)表示为随x单调递增的函数,并且对于任意x,满足:|Scale(x)|≥1,Base(x)表示随x单调递增的函数,且对于任意x,满足|Base(x)|≤x,且至少存在一个x0,使得|Base(x0)|=x0。
5.根据权利要求1所述的方法,其中,所述第二编码方式包括:
从当前非关键测距采样点所在的同一数据组及相邻的数据组内选取关键测距采样点作为参考点,根据所述参考点对所述当前非关键测距采样点进行压缩,并满足以下方程:
其中,x表示所述非关键测距采样点对应的数值,xref表示所述参考点对应的数值,D(x)表示对变量x进行数据压缩后的数值x′,Scale(xref)表示为随x单调递增的函数,并且对于任意x,满足:|Scale(xref)|≥1。
6.根据权利要求4所述的方法,其中,所述第一预设的还原公式满足以下方程:
x=F-1(x′)=BaseR(x′)+[x′-F(BaseR(x′)))]·ScaleR(x′),
其中,x表示所述关键测距采样点对应的数值,F-1(x′)是F(x)的反函数,函数BaseR(x′)满足以下定义:
BaseR(x′)=Base(F-1(x′)),
函数ScaleR(x′)满足以下定义:
ScaleR(x′)=Scale(F-1(x′))。
7.根据权利要求5所述的方法,其中,所述第二预设的还原公式满足以下方程:
x=x′·ScaleR(xref)+xref,
其中,x表示所述非关键测距采样点对应的数值,xref表示所述参考点对应的数值。
8.根据权利要求5所述的方法,其中,从当前非关键测距采样点所在的同一数据组及相邻的数据组内选取关键测距采样点作为参考点,包括:
比较当前非关键测距采样点所在的同一数据组内及相邻的数据组内的关键测距采样点的测距置信度,将测距置信度最高的关键测距采样点作为参考点,若两组内的关键测距采样点的测距置信度相同,则将当前非关键测距采样点所在的同一数据组内的关键测距采样点作为参考点。
9.根据权利要求1所述的方法,其中,所述方法包括:
确定压缩后的数据分组,其中,所述压缩后的数据分组包括由原属于同一数据组内的关键测距采样点及非关键测距采样点进行压缩得到的数据;
将同一压缩后的数据分组内的关键测距采样点及非关键测距采样点分别按照预设的比特数据位进行存储。
10.一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如权利要求1至9中任一项所述的方法。
11.一种用于测距传感器的数据处理的设备,其中,所述设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如权利要求1至9中任一项所述方法的操作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810132279 | 2018-02-09 | ||
CN2018101322797 | 2018-02-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108306649A CN108306649A (zh) | 2018-07-20 |
CN108306649B true CN108306649B (zh) | 2018-09-28 |
Family
ID=62846522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810602027.6A Active CN108306649B (zh) | 2018-02-09 | 2018-06-12 | 一种用于测距传感器的数据处理的方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108306649B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111091371A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 快速支付方法和装置 |
CN111091367A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 开放式快速支付方法和装置 |
CN111091369A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 与输入设备协同应用的快速支付方法和装置 |
CN111091375A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 基于商品码识读的快速支付方法和装置 |
CN111091366A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 应用于远距离的扣扫式支付方法和装置 |
CN111091368A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 封闭式快速支付方法和装置 |
CN111091668A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 基于二维码识读装置的零距离收银方法和装置 |
CN111091372A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 与输入设备及打印装置协同应用的快速支付方法和装置 |
CN111091376A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 集扫码与非接触式刷卡的支付方法和装置 |
CN111091373A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 智能语音导购方法和装置 |
CN111091363A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 与pos设备协同应用的快速支付方法和装置 |
CN111091374A (zh) * | 2018-10-24 | 2020-05-01 | 北京意锐新创科技有限公司 | 与输入设备及打印装置协同应用的快速支付方法和装置 |
CN109709561B (zh) * | 2018-12-29 | 2022-05-27 | 努比亚技术有限公司 | 测距方法、终端和计算机可读存储介质 |
CN112393703B (zh) * | 2020-11-12 | 2022-03-11 | 成都九壹通智能科技股份有限公司 | 一种测距传感器的数据处理方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4023778B2 (ja) * | 2001-12-27 | 2007-12-19 | フジノン株式会社 | 測距装置 |
CN105300347A (zh) * | 2015-06-29 | 2016-02-03 | 国家电网公司 | 一种测距装置和方法 |
CN106405566A (zh) * | 2016-08-30 | 2017-02-15 | 广东雷洋智能科技股份有限公司 | 测量精度高的激光雷达测距方法 |
CN106383352A (zh) * | 2016-08-30 | 2017-02-08 | 广东雷洋智能科技股份有限公司 | 激光雷达测距方法 |
-
2018
- 2018-06-12 CN CN201810602027.6A patent/CN108306649B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108306649A (zh) | 2018-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108306649B (zh) | 一种用于测距传感器的数据处理的方法及设备 | |
WO2020248187A1 (zh) | 一种点云编码方法、点云解码方法及相关设备 | |
US9819964B2 (en) | Limited error raster compression | |
US9098537B2 (en) | Techniques for aligned run-length encoding | |
CN106301383B (zh) | 一种基于压缩感知的信号处理方法 | |
FI3739780T3 (fi) | Tiedonsiirron käsittelymenetelmä ja laite | |
CN103236846A (zh) | 一种工业实时数据压缩方法及装置 | |
CN110942151A (zh) | 一种量子态层析方法及装置 | |
CN116707534B (zh) | 基于物联网技术的电力计量箱数据处理系统 | |
CN104125475A (zh) | 一种多维量子数据压缩、解压缩方法及装置 | |
CN102084594A (zh) | 用于处理数字数据的方法 | |
Bennett et al. | Universal quantum data compression via nondestructive tomography | |
Kagita et al. | A lossless compression technique for Huffman-based differential encoding in IoT for smart agriculture | |
CN105279171B (zh) | 在压缩的可变长度字符串上进行谓词评估的方法和设备 | |
JP5933742B2 (ja) | 反復構造発見ベースの3dモデル圧縮のビットストリームを生成する方法及び装置 | |
Abdelwahab et al. | LiDAR data compression challenges and difficulties | |
Hurst et al. | GreedyGD: Enhanced generalized deduplication for direct analytics in IoT | |
CN104104390A (zh) | 一种信号压缩方法和重构方法及相关装置和系统 | |
Jiao et al. | Synchronous weight quantization-compression for low-bit quantized neural network | |
WO2022088033A1 (zh) | 数据处理方法和装置、图像信号处理器、可移动平台 | |
Maleika et al. | Lossless compression method for digital terrain model of seabed shape | |
CN102916774B (zh) | 一种容误码的ldpc码编码码长和码率的识别方法 | |
Boss et al. | Archetype classification in an iterated transformation image compression algorithm | |
Hurst et al. | Direct analytics of generalized deduplication compressed IoT data | |
CN113904900B (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 |