CN111680095B - 一种处理点云数据的方法、装置和电子设备 - Google Patents
一种处理点云数据的方法、装置和电子设备 Download PDFInfo
- Publication number
- CN111680095B CN111680095B CN202010521133.9A CN202010521133A CN111680095B CN 111680095 B CN111680095 B CN 111680095B CN 202010521133 A CN202010521133 A CN 202010521133A CN 111680095 B CN111680095 B CN 111680095B
- Authority
- CN
- China
- Prior art keywords
- data
- array
- sequence
- depth
- point cloud
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Image Processing (AREA)
Abstract
本说明书实施例提供一种处理点云数据的方法,通过按照深度数据序列的顺序取各深度数据的小数部数据,取整数部数据并去重生成索引数组,结合小数部数据以及深度数据的整数部数据在索引数组中的索引号数据生成第二数组,通过将深度数据分解成小数部数据和数据量较小的索引号数据的形式,由于众多深度数据之间的整数部数据往往会重复,而且很难一直连续覆盖到每个整数,因此,通过取各深度数据的整数部数据并去重生成索引数组,使索引数组中整数部数据的个数(也就是索引号的最大值)小于整数部数据的最大值,因而,以索引号代替具体的整数部数据,使得第二数组的数据量远小于原来的深度数据的数据量,进而降低传输点云数据的数据量。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种处理点云数据的方法、装置和电子设备。
背景技术
通过探测设备(比如激光雷达)测量物体表面的大量的点的信息,这些信息被称作点云数据,通过对点云数据进行计算,可以得到物体形状、距离、位置等信息。
在对点云数据进行处理时,往往是点云探测设备探测生成点云信息,再将这些点云信息发送给具有数据处理功能的处理器(比如服务器),处理器对这些数据进行处理。
然而,在数据传输时,数据量的大小往往影响传输速度,尤其对于实时采集成像的场景,较大的数据量更容易造成延迟,而且较大的数据量也需要较大的存储空间,对设备造成压力,因此,有必要提出一种降低传输点云数据的数据量的方法。
发明内容
本说明书实施例提供一种处理点云数据的方法、装置和电子设备,用以降低传输点云数据的数据量。
本说明书实施例提供一种处理点云数据的方法,包括:
确定点云探测模块探测生成的点云信息,所述点云信息中具有探测点的深度数据序列;
取各深度数据的整数部数据并去重生成第一数组,所述第一数组为索引数组;
按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成第二数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
发送具有所述第一数组和第二数组的点云深度信息。
可选地,还包括:
对所述点云信息进行过滤,得到深度数据序列;
所述发送具有所述第一数组和第二数组的点云深度信息,包括:
向服务器发送具有所述第一数组和第二数组的点云深度信息,所述服务器预存有扫描偏角数据序列,所述扫描偏角数据序列中的偏角顺序为所述点云探测模块对探测点进行扫描时的偏角顺序,所述扫描偏角数据序列中的偏角数据为所述点云探测模块扫描时的偏角大小。
可选地,所述对所述点云信息进行过滤,得到深度数据序列,包括:
若所述点云探测模块采集生成的点云信息中具有各点的三维空间信息,则过滤掉深度之外的两个维度的空间信息,得到深度数据序列。
可选地,在所述取各深度数据的整数部数据并去重生成第一数组之前,还包括:
根据预设的精度对深度数据进行转换,生成具有整数部和预设精度的小数部的深度数据序列。
可选地,还包括:
确定扫描探测过程中控制偏转角度所使用的扫描顺序标识;
向服务器发送所述扫描顺序标识,所述服务器中存储有与所述扫描顺序标识对应的扫描偏角数据序列。
本说明书实施例还提供一种处理点云数据的方法,包括:
接收具有第一数组和第二数组的点云深度信息;
按照所述第二数组的顺序,从所述第一数组中提取整数部数据,并结合所述第二数组中的小数部数据还原生成深度数据序列;
其中,所述第一数组为:取点云信息中的深度数据序列中的各深度数据的整数部数据并去重而生成的索引数组;
所述第二数组为:按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成的数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
所述从所述第一数组中提取整数部数据,包括:
利用所述第二数组中的索引号数据从所述第二数组中索引并提取整数部数据。
可选地,还包括:
利用预存的扫描偏角数据序列结合所述深度数据序列计算还原各探测点的三维空间信息。
可选地,还包括:
利用还原的各探测点的三维空间信息构建三维模型。
可选地,还包括:
接收扫描顺序标识;
所述利用预存的扫描偏角数据序列结合所述深度数据序列计算还原各探测点的三维空间信息,包括:
根据所述扫描顺序标识从预存的多个扫描偏角数据序列中确定所述扫描顺序标识对应的扫描偏角数据序列;
利用所述扫描顺序标识对应的扫描偏角数据序列,结合所述深度数据序列计算还原各探测点的三维空间信息。
本说明书实施例还提供一种处理点云数据的装置,包括:
压缩模块,确定点云探测模块探测生成的点云信息,所述点云信息中具有探测点的深度数据序列;
取各深度数据的整数部数据并去重生成第一数组,所述第一数组为索引数组;
按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成第二数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
发送模块,发送具有所述第一数组和第二数组的点云深度信息。
本说明书实施例还提供一种处理点云数据的装置包括:
接收模块,接收具有第一数组和第二数组的点云深度信息;
解码模块,按照所述第二数组的顺序,从所述第一数组中提取整数部数据,并结合所述第二数组中的小数部数据还原生成深度数据序列;
其中,所述第一数组为:取点云信息中的深度数据序列中的各深度数据的整数部数据并去重而生成的索引数组;
所述第二数组为:按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成的数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
所述从所述第一数组中提取整数部数据,包括:
利用所述第二数组中的索引号数据从所述第二数组中索引并提取整数部数据。
本说明书实施例还提供一种电子设备,其中,该电子设备包括:
处理器;以及,
存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行上述任一项方法。
本说明书实施例还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现上述任一项方法。
本说明书实施例提供的各种技术方案通过按照深度数据序列的顺序取各深度数据的小数部数据,取整数部数据并去重生成索引数组,结合小数部数据以及深度数据的整数部数据在索引数组中的索引号数据生成第二数组,通过将深度数据分解成小数部数据和数据量较小的索引号数据的形式,由于众多深度数据之间的整数部数据往往会重复,而且很难一直连续覆盖到每个整数,因此,通过取各深度数据的整数部数据并去重生成索引数组,使索引数组中整数部数据的个数(也就是索引号的最大值)小于整数部数据的最大值,因而,以索引号代替具体的整数部数据,使得第二数组的数据量远小于原来的深度数据的数据量,进而降低传输点云数据的数据量。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本说明书实施例提供的一种处理点云数据的方法的原理示意图;
图2为本说明书实施例提供的一种处理点云数据的方法的原理示意图;
图3为本说明书实施例提供的一种处理点云数据的装置的结构示意图;
图4为本说明书实施例提供的一种处理点云数据的装置的结构示意图;
图5为本说明书实施例提供的一种电子设备的结构示意图;
图6为本说明书实施例提供的一种计算机可读介质的原理示意图。
具体实施方式
现在将参考附图更全面地描述本发明的示例性实施例。然而,示例性实施例能够以多种形式实施,且不应被理解为本发明仅限于在此阐述的实施例。相反,提供这些示例性实施例能够使得本发明更加全面和完整,更加便于将发明构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的元件、组件或部分,因而将省略对它们的重复描述。
在符合本发明的技术构思的前提下,在某个特定的实施例中描述的特征、结构、特性或其他细节不排除可以以合适的方式结合在一个或更多其他的实施例中。
在对于具体实施例的描述中,本发明描述的特征、结构、特性或其他细节是为了使本领域的技术人员对实施例进行充分理解。但是,并不排除本领域技术人员可以实践本发明的技术方案而没有特定特征、结构、特性或其他细节的一个或更多。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
术语“和/或”或者“及/或”包括相关联的列出项目中的任一个或多者的所有组合。
图1为本说明书实施例提供的一种处理点云数据的方法的原理示意图,该方法可以包括:
S101:确定点云探测模块探测生成的点云信息,所述点云信息中具有探测点的深度数据序列。
在本说明书实施例中,点云探测模块可以是激光雷达,也可以是其他能够采集点数据的设备,在此不做具体阐述和限制。
因为计算点坐标需要利用三个维度的数据,因此,现有的点云探测模块探测后会生成大量的三维数据集,每个点斗携带三个空间维度的数据,这其中便包括深度数据。
现有的点云探测模块探测在生成三维的点云数据后,向服务器发送三维的点云数据(X,Y,Z),但是考虑到点云探测模块探测过程中,实际上是按照一定的顺序进行扫描,这种顺序,体现为点云探测模块发射激光的顺序,比如,由做到右,由上到下,而这种顺序,实际上是通过控制激光发射头的偏移角度来实现的,故,探测过程中,偏移角度也具有一定的顺序。
由于在已知两个维度(左右维度,前后维度)上的偏移角度后,只需要知道深度距离,便可以利用三角函数计算出发射点和探测点在三维空间上的相对方位,因此,如果服务器预存了具有一定顺序的便宜角度顺序,理论上,只需要向服务器发送具有顺序的深度数据,服务器便可以进行计算得到点云的三维数据。
因此,在发送点云数据时,我么可以过滤掉深度数据之外的两个维度的数据,进一步降低点云数据的数据量。
所以,该方法还可以包括:
对所述点云信息进行过滤,得到深度数据序列。
其中,所述对所述点云信息进行过滤,得到深度数据序列,包括:
若所述点云探测模块采集生成的点云信息中具有各点的三维空间信息,则过滤掉深度之外的两个维度的空间信息,得到深度数据序列。
当然,由于目前市面上的雷达探测设备可能还会探测颜色数据(RGB),如果要进一步降低数据量,也可以对其进行过滤。
S102:取各深度数据的整数部数据并去重生成第一数组,所述第一数组为索引数组。
所采集的深度数据可能由于单位的限制使得采集的数据形式为整数,我们可以通过单位得到转换,将深度数据转换成具有整数部分和小数部分的形式,便于后续直接提取整数部分和小数部分。
比如,深度数据是整数114,单位是厘米,那么我们可以将其转换成1.14,理解成单位的转换,这样,便得到具有小数部分和整数部分的深度数据。
因此,该方法还可以包括:
通过单位转换,将所述深度数据转换为小数位数为预设位数的深度数据。
当然,如果采集精度较高,后续不需要利用这么高的精度,我们也可以结合预设的精度对深度数据进行转换,因此,在所述取各深度数据的整数部数据并去重生成第一数组之前,还可以包括:
根据预设的精度对深度数据进行转换,生成具有整数部和预设精度的小数部的深度数据序列。
具体的,如果采集的深度数据时以毫米为单位,比如1450毫米,最终需要的精度是厘米,那么我们可以先将其转换成以厘米为精度的数据,即145(单位厘米),继而,可以将其转换1.45(单位米)。
通过降低精度,降低了对深度数据进行编码所需的数据量大小。
通过取各深度数据的整数部数据并去重生成索引数组,可以得到整数部数据的去重个数。
这样,在对每个深度数据进行编码时,对于每个深度数据的整数部分,可以用索引号来代替,由于对索引号进行编码的数据量最大值取决于整数部分数据的去重个数,而不需要对每个证书部分数据的数值进行编码,因而降低了数据量。
为了方便理解,我们以采集9个深度数据为例,原点云数据集为{1.11,1.12,2.11,15.13,15.12,15.14,8.25,9.52,1.12}。
将整数部去重,得到,整数部只有1,2,15,8,9,这几种,15是多个深度数据重复的整数部分,而且3,4,5,6,7,10,11,12,13,14等整数都没有出现,不连续。
这时,如果直接对每个深度数据进行编码,整数部的编码位数至少考虑到最大的数15(15小于2的4次方,需要4bit),而如果是用序号代替整数部数据,由于去掉重复的个数,整数部数据种类为5个(1,2,15,8,9),编码时,编码位数只需要能记录5(5小于2的3次方,需要3bit)即可,因而降低了编码数据量,其降低数据量的本质,是利用了索引号是连续的,而整数部数据往往连续的这个特征,而且也利用了对于重复的整数部数据,只需要一个索引号,这就使得索引号的最大值,小于整数部数据的最大值,从而减小了编码数据量(二进制字节数)。
索引数组可以看作临时生成的查询表,根据索引号,便可以查询到该索引号在索引数组中的数据,在此不做具体阐述。
S103:按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成第二数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据。
深度数据序列的顺序体现了对点云进行探测的顺序,以按照所述深度数据序列中深度数据的顺序取各深度数据的小数部数据,使得第二数组中小数部数据的顺序与深度数据序列中深度数据的顺序相同,第二数组中索引号所体现的整数部数据,也与深度数据序列中深度数据的顺序相同,从而能够保持原顺序不变。
为了对深度数据中的小数部分进行编码,并且体现出同一深度数据的小数部分与整数部分的对应关系,我们可以按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成第二数组,这样,各深度数据的小数部数据通过索引号间接的与其整数部数据相对应。
由于第二数组中具有各深度数据的小数部数据和整数部的索引号数据,因此,通过第二数组中的索引号便可以从第一数组中索引到整数部数据,继而,结合小数部数据,便可以还原深度数据,所以,根据第一数组和第二数据生成并发送点云深度信息,接收方根据第一数组和第二数据足以还原深度数据。
S104:发送具有所述第一数组和第二数组的点云深度信息。
通过按照深度数据序列的顺序取各深度数据的小数部数据,取整数部数据并去重生成索引数组,结合小数部数据以及深度数据的整数部数据在索引数组中的索引号数据生成第二数组,通过将深度数据分解成小数部数据和数据量较小的索引号数据的形式,由于众多深度数据之间的整数部数据往往会重复,而且很难一直连续覆盖到每个整数,因此,通过取各深度数据的整数部数据并去重生成索引数组,使索引数组中整数部数据的个数(也就是索引号的最大值)小于整数部数据的最大值,因而,以索引号代替具体的整数部数据,使得第二数组的数据量远小于原来的深度数据的数据量,进而降低传输点云数据的数据量。
具体实施时,发送具有所述第一数组和第二数组的点云深度信息,可以以head、body的形式发送,在head部分编码第一数组,在body部分编码第二数组。
比如,对于原点云数据集:{1.11,1.12,2.11,15.13,15.12,15.14,8.25,9.52,1.12},编码后的head部分包括:[5][1,2,15,8,9];编码后的body部分包括:[1,11][1,12][2,11][3,13][3,12][3,14][4,25][5,52],其中,head部分的[5]表示索引号最大值,也表示众多深度数据的整数部的去重个数。
在本说明书实施例中,若S101还包括:
对所述点云信息进行过滤,得到深度数据序列;
那么,所述发送具有所述第一数组和第二数组的点云深度信息,可以包括:
向服务器发送具有所述第一数组和第二数组的点云深度信息,所述服务器预存有扫描偏角数据序列,所述扫描偏角数据序列中的偏角顺序为所述点云探测模块对探测点进行扫描时的偏角顺序,所述扫描偏角数据序列中的偏角数据为所述点云探测模块扫描时的偏角大小。
在实际场景中,考虑到扫描顺序可能会有所调整,我们可以预先设置不同的扫描顺序,用扫描顺序标识来区别不同的扫描顺序,对于每种扫描顺序,服务器中均存储对应的扫描偏角数据序列,这样,可以在点云深度信息中携带扫描顺序标识,一并向服务器发送。
因此,在本说明书实施例中,该方法还可以包括:
确定扫描探测过程中控制偏转角度所使用的扫描顺序标识;
向服务器发送所述扫描顺序标识,所述服务器中存储有与所述扫描顺序标识对应的扫描偏角数据序列。
这样,服务器便可以根据扫描顺序标识,查询到对应的扫描偏角数据序列米,继而结合第一数组和第二数组进行还原。
基于上述编码压缩的构思,对于解码过程,我们也提供一种处理点云数据的方法。
图2为本说明书实施例提供的一种处理点云数据的方法的原理示意图,该方法可以包括:
S201:接收具有第一数组和第二数组的点云深度信息。
这可以是服务器接收具有第一数组和第二数组的点云深度信息。
S201:按照所述第二数组的顺序,从所述第一数组中提取整数部数据,并结合所述第二数组中的小数部数据还原生成深度数据序列。
其中,按照所述第二数组的顺序为:按照第二数组中的小数部数据的顺序。
其中,所述第一数组为:取点云信息中的深度数据序列中的各深度数据的整数部数据并去重而生成的索引数组;
所述第二数组为:按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成的数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
所述从所述第一数组中提取整数部数据,包括:
利用所述第二数组中的索引号数据从所述第二数组中索引并提取整数部数据。
其中,还原生成深度数据序列,可以包括:将相对应的整数部数据和小数部数据合并。
由于众多深度数据之间的整数部数据往往会重复,而且很难一直连续覆盖到每个整数,因此,通过取各深度数据的整数部数据并去重生成索引数组,使索引数组中整数部数据的个数(也就是索引号的最大值)小于整数部数据的最大值,因而,以索引号代替具体的整数部数据,使得第二数组的数据量远小于原来的深度数据的数据量,通过接收将深度数据的整数部数据并去重而生成的索引数组,以及结合小数部数据和数据量较小的索引号数据生成的第二数据,因此,可以降低数据传输的数据量和存储空间,在解码时,按照所述第二数组的顺序,利用所述第二数组中的索引号数据从所述第二数组中索引并提取整数部数据,并结合所述第二数组中的小数部数据便可以还原生成深度数据序列。
可选地,还包括:
利用预存的扫描偏角数据序列结合所述深度数据序列计算还原各探测点的三维空间信息。
具体的,可以是利用深度数据扫描偏角,以三角函数的公式来进行计算,还原得到在对点云数据进行编码时过滤掉的两个维度的数据X,Y。
这样,对于每个点,都具有了X,Y,深度三个维度的数据,于是构建模型便有了数据基础。
因此,在本说明书实施例中,该方法还可以包括:
利用还原的各探测点的三维空间信息构建三维模型。
在本说明书实施例中,该方法还可以包括:
接收扫描顺序标识;
所述利用预存的扫描偏角数据序列结合所述深度数据序列计算还原各探测点的三维空间信息,包括:
根据所述扫描顺序标识从预存的多个扫描偏角数据序列中确定所述扫描顺序标识对应的扫描偏角数据序列;
利用所述扫描顺序标识对应的扫描偏角数据序列,结合所述深度数据序列计算还原各探测点的三维空间信息。
图3为本说明书实施例提供的一种处理点云数据的装置的结构示意图,该装置可以包括:
压缩模块301,确定点云探测模块探测生成的点云信息,所述点云信息中具有探测点的深度数据序列;
取各深度数据的整数部数据并去重生成第一数组,所述第一数组为索引数组;
按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成第二数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
发送模块302,发送具有所述第一数组和第二数组的点云深度信息。
可选地,压缩模块301,还可以用于:
对所述点云信息进行过滤,得到深度数据序列;
所述发送具有所述第一数组和第二数组的点云深度信息,包括:
向服务器发送具有所述第一数组和第二数组的点云深度信息,所述服务器预存有扫描偏角数据序列,所述扫描偏角数据序列中的偏角顺序为所述点云探测模块对探测点进行扫描时的偏角顺序,所述扫描偏角数据序列中的偏角数据为所述点云探测模块扫描时的偏角大小。
可选地,所述对所述点云信息进行过滤,得到深度数据序列,包括:
若所述点云探测模块采集生成的点云信息中具有各点的三维空间信息,则过滤掉深度之外的两个维度的空间信息,得到深度数据序列。
可选地,压缩模块301,在所述取各深度数据的整数部数据并去重生成第一数组之前,还可以用于:
根据预设的精度对深度数据进行转换,生成具有整数部和预设精度的小数部的深度数据序列。
可选地,发送模块302,还可以用于:
确定扫描探测过程中控制偏转角度所使用的扫描顺序标识;
向服务器发送所述扫描顺序标识,所述服务器中存储有与所述扫描顺序标识对应的扫描偏角数据序列。
该装置通过按照深度数据序列的顺序取各深度数据的小数部数据,取整数部数据并去重生成索引数组,结合小数部数据以及深度数据的整数部数据在索引数组中的索引号数据生成第二数组,通过将深度数据分解成小数部数据和数据量较小的索引号数据的形式,由于众多深度数据之间的整数部数据往往会重复,而且很难一直连续覆盖到每个整数,因此,通过取各深度数据的整数部数据并去重生成索引数组,使索引数组中整数部数据的个数(也就是索引号的最大值)小于整数部数据的最大值,因而,以索引号代替具体的整数部数据,使得第二数组的数据量远小于原来的深度数据的数据量,进而降低传输点云数据的数据量。
图4为本说明书实施例提供的一种处理点云数据的装置的结构示意图,该装置可以包括:
接收模块401,接收具有第一数组和第二数组的点云深度信息;
解码模块402,按照所述第二数组的顺序,从所述第一数组中提取整数部数据,并结合所述第二数组中的小数部数据还原生成深度数据序列;
其中,所述第一数组为:取点云信息中的深度数据序列中的各深度数据的整数部数据并去重而生成的索引数组;
所述第二数组为:按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成的数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
所述从所述第一数组中提取整数部数据,包括:
利用所述第二数组中的索引号数据从所述第二数组中索引并提取整数部数据。
可选地,解码模块402,还可以用于:
利用预存的扫描偏角数据序列结合所述深度数据序列计算还原各探测点的三维空间信息。
可选地,还可以包括,建模模块,用于:利用还原的各探测点的三维空间信息构建三维模型。
可选地,接收模块401,还可以用于:接收扫描顺序标识;
所述利用预存的扫描偏角数据序列结合所述深度数据序列计算还原各探测点的三维空间信息,包括:
根据所述扫描顺序标识从预存的多个扫描偏角数据序列中确定所述扫描顺序标识对应的扫描偏角数据序列;
利用所述扫描顺序标识对应的扫描偏角数据序列,结合所述深度数据序列计算还原各探测点的三维空间信息。
该装置通过取各深度数据的整数部数据并去重生成索引数组,使索引数组中整数部数据的个数(也就是索引号的最大值)小于整数部数据的最大值,因而,以索引号代替具体的整数部数据,使得第二数组的数据量远小于原来的深度数据的数据量,通过接收将深度数据的整数部数据并去重而生成的索引数组,以及结合小数部数据和数据量较小的索引号数据生成的第二数据,因此,可以降低数据传输的数据量和存储空间,在解码时,按照所述第二数组的顺序,利用所述第二数组中的索引号数据从所述第二数组中索引并提取整数部数据,并结合所述第二数组中的小数部数据便可以还原生成深度数据序列。
基于同一发明构思,本说明书实施例还提供一种电子设备。
下面描述本发明的电子设备实施例,该电子设备可以视为对于上述本发明的方法和装置实施例的具体实体实施方式。对于本发明电子设备实施例中描述的细节,应视为对于上述方法或装置实施例的补充;对于在本发明电子设备实施例中未披露的细节,可以参照上述方法或装置实施例来实现。
图5为本说明书实施例提供的一种电子设备的结构示意图。下面参照图5来描述根据本发明该实施例的电子设备500。图5显示的电子设备500仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,电子设备500以通用计算设备的形式表现。电子设备500的组件可以包括但不限于:至少一个处理单元510、至少一个存储单元520、连接不同系统组件(包括存储单元520和处理单元510)的总线530、显示单元540等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元510执行,使得所述处理单元510执行本说明书上述处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元510可以执行如图1所示的步骤。
所述存储单元520可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)5201和/或高速缓存存储单元5202,还可以进一步包括只读存储单元(ROM)5203。
所述存储单元520还可以包括具有一组(至少一个)程序模块5205的程序/实用工具5204,这样的程序模块5205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线530可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备500也可以与一个或多个外部设备600(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备500交互的设备通信,和/或与使得该电子设备500能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口550进行。并且,电子设备500还可以通过网络适配器560与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器560可以通过总线530与电子设备500的其它模块通信。应当明白,尽管图5中未示出,可以结合电子设备500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,本发明描述的示例性实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机可读的存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明的上述方法。当所述计算机程序被一个数据处理设备执行时,使得该计算机可读介质能够实现本发明的上述方法,即:如图1所示的方法。
图6为本说明书实施例提供的一种计算机可读介质的原理示意图。
实现图1所示方法的计算机程序可以存储于一个或多个计算机可读介质上。计算机可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,本发明可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)等通用数据处理设备来实现根据本发明实施例中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,本发明不与任何特定计算机、虚拟装置或者电子设备固有相关,各种通用装置也可以实现本发明。以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (13)
1.一种处理点云数据的方法,其特征在于,包括:
确定点云探测模块探测生成的点云信息,所述点云信息中具有探测点的深度数据序列;
取各深度数据的整数部数据并去重生成第一数组,所述第一数组为索引数组;
按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成第二数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
发送具有所述第一数组和第二数组的点云深度信息。
2.根据权利要求1所述的方法,其特征在于,还包括:
对所述点云信息进行过滤,得到深度数据序列;
所述发送具有所述第一数组和第二数组的点云深度信息,包括:
向服务器发送具有所述第一数组和第二数组的点云深度信息,所述服务器预存有扫描偏角数据序列,所述扫描偏角数据序列中的偏角顺序为所述点云探测模块对探测点进行扫描时的偏角顺序,所述扫描偏角数据序列中的偏角数据为所述点云探测模块扫描时的偏角大小。
3.根据权利要求2所述的方法,其特征在于,所述对所述点云信息进行过滤,得到深度数据序列,包括:
若所述点云探测模块采集生成的点云信息中具有各点的三维空间信息,则过滤掉深度之外的两个维度的空间信息,得到深度数据序列。
4.根据权利要求1所述的方法,其特征在于,在所述取各深度数据的整数部数据并去重生成第一数组之前,还包括:
根据预设的精度对深度数据进行转换,生成具有整数部和预设精度的小数部的深度数据序列。
5.根据权利要求1所述的方法,其特征在于,还包括:
确定扫描探测过程中控制偏转角度所使用的扫描顺序标识;
向服务器发送所述扫描顺序标识,所述服务器中存储有与所述扫描顺序标识对应的扫描偏角数据序列。
6.一种处理点云数据的方法,其特征在于,包括:
接收具有第一数组和第二数组的点云深度信息;
按照所述第二数组的顺序,从所述第一数组中提取整数部数据,并结合所述第二数组中的小数部数据还原生成深度数据序列;
其中,所述第一数组为:取点云信息中的深度数据序列中的各深度数据的整数部数据并去重而生成的索引数组;
所述第二数组为:按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成的数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
所述从所述第一数组中提取整数部数据,包括:
利用所述第二数组中的索引号数据从所述第二数组中索引并提取整数部数据。
7.根据权利要求6所述的方法,其特征在于,还包括:
利用预存的扫描偏角数据序列结合所述深度数据序列计算还原各探测点的三维空间信息。
8.根据权利要求7所述的方法,其特征在于,还包括:
利用还原的各探测点的三维空间信息构建三维模型。
9.根据权利要求7所述的方法,其特征在于,还包括:
接收扫描顺序标识;
所述利用预存的扫描偏角数据序列结合所述深度数据序列计算还原各探测点的三维空间信息,包括:
根据所述扫描顺序标识从预存的多个扫描偏角数据序列中确定所述扫描顺序标识对应的扫描偏角数据序列;
利用所述扫描顺序标识对应的扫描偏角数据序列,结合所述深度数据序列计算还原各探测点的三维空间信息。
10.一种处理点云数据的装置,其特征在于,包括:
压缩模块,确定点云探测模块探测生成的点云信息,所述点云信息中具有探测点的深度数据序列;
取各深度数据的整数部数据并去重生成第一数组,所述第一数组为索引数组;
按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成第二数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
发送模块,发送具有所述第一数组和第二数组的点云深度信息。
11.一种处理点云数据的装置,其特征在于,包括:
接收模块,接收具有第一数组和第二数组的点云深度信息;
解码模块,按照所述第二数组的顺序,从所述第一数组中提取整数部数据,并结合所述第二数组中的小数部数据还原生成深度数据序列;
其中,所述第一数组为:取点云信息中的深度数据序列中的各深度数据的整数部数据并去重而生成的索引数组;
所述第二数组为:按照所述深度数据序列的顺序取各深度数据的小数部数据,结合所述深度数据的整数部数据在所述索引数组中的索引号数据生成的数组,所述第二数组中具有各深度数据的小数部数据和整数部的索引号数据;
所述从所述第一数组中提取整数部数据,包括:
利用所述第二数组中的索引号数据从所述第二数组中索引并提取整数部数据。
12.一种电子设备,其中,该电子设备包括:
处理器;以及,
存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行根据权利要求1-9中任一项所述的方法。
13.一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010521133.9A CN111680095B (zh) | 2020-06-10 | 2020-06-10 | 一种处理点云数据的方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010521133.9A CN111680095B (zh) | 2020-06-10 | 2020-06-10 | 一种处理点云数据的方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111680095A CN111680095A (zh) | 2020-09-18 |
CN111680095B true CN111680095B (zh) | 2021-01-12 |
Family
ID=72435193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010521133.9A Active CN111680095B (zh) | 2020-06-10 | 2020-06-10 | 一种处理点云数据的方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111680095B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113781091A (zh) * | 2021-04-14 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 一种物品属性值的监控方法和装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102522120A (zh) * | 2011-11-08 | 2012-06-27 | 詹文法 | 一种无需存储字典的字典编码压缩方法 |
CN102918358A (zh) * | 2010-04-09 | 2013-02-06 | 通腾北美有限公司 | 从表示位置的数据解析位置的方法 |
CN105808672A (zh) * | 2016-03-01 | 2016-07-27 | 重庆市勘测院 | 基于浏览器的海量三维点云数据的发布方法 |
CN109298834A (zh) * | 2017-07-25 | 2019-02-01 | 通用电气公司 | 数据存储结构和方法 |
CN110019184A (zh) * | 2017-09-04 | 2019-07-16 | 北京字节跳动网络技术有限公司 | 一种压缩和解压缩有序整数数组的方法 |
US10437802B2 (en) * | 2016-03-07 | 2019-10-08 | Western Digital Technologies, Inc. | Single IO operation integer-value database |
CN110580250A (zh) * | 2018-06-08 | 2019-12-17 | 虚拟现实软件 | 用于有效可视化的海量点云数据的索引 |
CN110892725A (zh) * | 2017-07-13 | 2020-03-17 | 交互数字Vc控股公司 | 一种用于编码/解码表示3d对象的点云的方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180145701A1 (en) * | 2016-09-01 | 2018-05-24 | Anthony Ben Benavides | Sonic Boom: System For Reducing The Digital Footprint Of Data Streams Through Lossless Scalable Binary Substitution |
US10671586B2 (en) * | 2017-07-25 | 2020-06-02 | Sap Se | Optimal sort key compression and index rebuilding |
US11036517B2 (en) * | 2018-04-27 | 2021-06-15 | Sap Se | Database management system performing column operations using a set of SIMD processor instructions selected based on performance |
CN110971912B (zh) * | 2018-09-30 | 2022-04-29 | 华为技术有限公司 | 点云编解码方法、编解码器、编解码装置和存储介质 |
-
2020
- 2020-06-10 CN CN202010521133.9A patent/CN111680095B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102918358A (zh) * | 2010-04-09 | 2013-02-06 | 通腾北美有限公司 | 从表示位置的数据解析位置的方法 |
CN102522120A (zh) * | 2011-11-08 | 2012-06-27 | 詹文法 | 一种无需存储字典的字典编码压缩方法 |
CN105808672A (zh) * | 2016-03-01 | 2016-07-27 | 重庆市勘测院 | 基于浏览器的海量三维点云数据的发布方法 |
US10437802B2 (en) * | 2016-03-07 | 2019-10-08 | Western Digital Technologies, Inc. | Single IO operation integer-value database |
CN110892725A (zh) * | 2017-07-13 | 2020-03-17 | 交互数字Vc控股公司 | 一种用于编码/解码表示3d对象的点云的方法和装置 |
CN109298834A (zh) * | 2017-07-25 | 2019-02-01 | 通用电气公司 | 数据存储结构和方法 |
CN110019184A (zh) * | 2017-09-04 | 2019-07-16 | 北京字节跳动网络技术有限公司 | 一种压缩和解压缩有序整数数组的方法 |
CN110580250A (zh) * | 2018-06-08 | 2019-12-17 | 虚拟现实软件 | 用于有效可视化的海量点云数据的索引 |
Non-Patent Citations (1)
Title |
---|
三维点云数据精简与网格重建算法研究;田哲浩;《中国优秀硕士学位论文全文数据库信息科技辑》;20200315;第10-51页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111680095A (zh) | 2020-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111815755B (zh) | 虚拟物体被遮挡的区域确定方法、装置及终端设备 | |
Tao et al. | Optimizing lossy compression rate-distortion from automatic online selection between SZ and ZFP | |
CN111091876B (zh) | 一种dna存储方法、系统及电子设备 | |
CN109558400B (zh) | 数据处理方法、装置、设备和存储介质 | |
Pajarola et al. | Compressed progressive meshes | |
CN104008064B (zh) | 用于多级存储器压缩的方法和系统 | |
JP2021529482A (ja) | 点群符号化方法、点群復号化方法、符号器、及び復号器 | |
KR20140018919A (ko) | 메시 모델을 인코딩하는 방법, 인코딩된 메시 모델 및 메시 모델을 디코딩하는 방법 | |
CN111008230B (zh) | 数据存储方法、装置、计算机设备及存储介质 | |
CN109345615B (zh) | 蒙皮数据生成方法以及装置、电子设备及存储介质 | |
CN105354314A (zh) | 数据迁移方法及装置 | |
CN109920056B (zh) | 建筑物渲染方法、装置、设备和介质 | |
CN111857550A (zh) | 用于数据去重的方法、设备以及计算机可读介质 | |
CN111680095B (zh) | 一种处理点云数据的方法、装置和电子设备 | |
CN112035401A (zh) | 模型数据处理方法、装置、电子设备及可读介质 | |
US20160314141A1 (en) | Compression-based filtering for deduplication | |
CN113687975A (zh) | 数据处理方法、装置、设备及存储介质 | |
KR20230028234A (ko) | 멀티-플레인 이미지 압축 | |
CN111708673A (zh) | 一种日志数据压缩方法、装置、设备和存储介质 | |
CN110781197A (zh) | 一种hive离线同步校验方法、装置及电子设备 | |
CN114637870B (zh) | 一种图像数据处理方法、装置、设备及存储介质 | |
US8351715B1 (en) | Systems and processes for translating, compressing and storing solid-state model data | |
CN109271543B (zh) | 缩略图的显示方法、装置、终端及计算机可读存储介质 | |
CN112559497B (zh) | 一种数据处理方法、一种信息传输方法、装置及电子设备 | |
CN107341136B (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 |