CN110297924A - The processing of point cloud data and rendering method, device, equipment and storage medium - Google Patents

The processing of point cloud data and rendering method, device, equipment and storage medium Download PDF

Info

Publication number
CN110297924A
CN110297924A CN201910563858.1A CN201910563858A CN110297924A CN 110297924 A CN110297924 A CN 110297924A CN 201910563858 A CN201910563858 A CN 201910563858A CN 110297924 A CN110297924 A CN 110297924A
Authority
CN
China
Prior art keywords
point cloud
cloud data
data
octree
nodes encoding
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
Application number
CN201910563858.1A
Other languages
Chinese (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.)
Shenzhen Science And Technology Ltd Of Flying Horse Robot
Original Assignee
Shenzhen Science And Technology Ltd Of Flying Horse Robot
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 Shenzhen Science And Technology Ltd Of Flying Horse Robot filed Critical Shenzhen Science And Technology Ltd Of Flying Horse Robot
Priority to CN201910563858.1A priority Critical patent/CN110297924A/en
Publication of CN110297924A publication Critical patent/CN110297924A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering

Abstract

The invention discloses a kind of processing of point cloud data and rendering method, device, equipment and storage mediums.By constructing octree index structure based on point cloud data to be processed and being encoded to each node in octree index structure;Point cloud data to be processed is subjected to piecemeal processing, obtains multiple point cloud data blocks;Read the point cloud data in point cloud data block, and the corresponding Octree with pyramid structure of point cloud data to be processed is generated according to the point cloud data read, the management and running that inside and outside deposit data is realized by operation thread, IO thread, the rendering multithreadings means such as thread and load shedding thread realize that the Fast rendering of mass data is shown and interactive operation.

Description

The processing of point cloud data and rendering method, device, equipment and storage medium
Technical field
The present embodiments relate to the processing of electronic map technique more particularly to a kind of point cloud data and rendering methods, dress It sets, equipment and storage medium.
Background technique
With the development of science and technology, more and more sophisticated equipments are used for fields of measurement, three-dimensional laser scanning technique Due to the features such as its measurement accuracy is high, sampling density is big, data acquisition facilitates, become the main of three-dimensional spatial information quick obtaining One of means.Further, since multi-thread laser equipment has the characteristic of high sample frequency, it is per second to can produce up to hundreds of thousands, several 1000000 even up to ten million three-dimensional space points, these three-dimensional space points not only include location information, temporal information, while also including Strength information and echo information etc..The total amount of data of multi-thread laser equipment single operation acquisition reaches tens gigabytes (Gigabyte, GB) even GB up to a hundred, how mass data is rendered shown to user as current urgent problem to be solved.
The method that largely uses, which is, to be shown for the rendering of mass data at present: to initial data carry out piecemeal show or Person is by the way of vacuating.The consumption of calculator memory when deblocking mode reduces data render although can still be led Family of applying can not completely browse the data of entire scene, while data occur in subsequent processes and extracting not congruent ask Topic.The mode vacuated can not only reduce the precision of data, and with the increase of data volume, the ratio that vacuates of data is also increased with it, When reaching a certain level, the precision and overall effect of data can be seriously destroyed.Deblocking mode and the mode vacuated cannot Fundamentally solve the problems, such as that mass data rendering is shown.
Summary of the invention
The present invention provides processing and rendering method, device, equipment and the storage medium of a kind of point cloud data, to realize to sea Measure the real-time quick rendering of point cloud data.
In a first aspect, the embodiment of the invention provides a kind of processing methods of point cloud data, comprising:
Octree index structure is constructed based on point cloud data to be processed and to each section in the octree index structure Point is encoded;
Point cloud data to be processed is subjected to piecemeal processing, obtains multiple point cloud data blocks;
The point cloud data in point cloud data block is read, and point cloud data pair to be processed is generated according to the point cloud data read The Octree with pyramid structure answered.
Second aspect, the embodiment of the invention also provides a kind of rendering methods of point cloud data, comprising:
It is determined within the scope of viewport by data control line journey based on the paging detail node model and view distance Nodes encoding;
The corresponding point cloud data of each nodes encoding is read according to the nodes encoding by data I/O line journey;
The corresponding point cloud data of each nodes encoding is rendered by rendering thread.
The third aspect, the embodiment of the invention also provides a kind of processing units of point cloud data, comprising:
Index structure constructs module, for based on point cloud data to be processed building octree index structure and to eight fork Each node in tree index structure is encoded;
Point cloud data piecemeal module obtains multiple point cloud data blocks for point cloud data to be processed to be carried out piecemeal processing;
First point cloud data read module, for reading the point cloud data in point cloud data block, and according to the point read Cloud data generate the corresponding Octree with pyramid structure of point cloud data to be processed.
Fourth aspect, the embodiment of the invention also provides a kind of rendering devices of point cloud data characterized by comprising
Nodes encoding determining module, for being based on the paging detail node model and viewpoint by data control line journey Distance determines the nodes encoding within the scope of viewport;
Second point cloud data read module is compiled for reading each node according to the nodes encoding by data I/O line journey The corresponding point cloud data of code;
Point cloud data rendering module, for will the corresponding point cloud data progress of each nodes encoding by rendering thread Rendering.
5th aspect, the embodiment of the invention also provides a kind of equipment, the equipment includes:
One or more processors;
Memory, for storing one or more programs,
When one or more of programs are executed by one or more of processors, so that one or more of processing Device realizes point cloud data described in the processing method and above-mentioned second aspect of the point cloud data as described in above-mentioned first aspect Rendering method.
6th aspect, the embodiment of the invention also provides a kind of computer readable storage mediums, are stored thereon with computer Program, which is characterized in that the processing of the point cloud data as described in above-mentioned first aspect is realized when the program is executed by processor The rendering method of point cloud data described in method and above-mentioned second aspect.
The embodiment of the present invention is by constructing octree index structure based on point cloud data to be processed and to octree index knot Each node in structure is encoded;Point cloud data to be processed is subjected to piecemeal processing, obtains multiple point cloud data blocks;Read point Point cloud data in cloud data block, and there is pyramid according to the point cloud data generation point cloud data to be processed read is corresponding The Octree of structure is realized by operation thread, IO thread, the rendering multithreadings means such as thread and load shedding thread The management and running of inside and outside deposit data realize that the Fast rendering of mass data is shown and interactive operation.
Detailed description of the invention
Fig. 1 is the flow chart of the processing method for the point cloud data that the embodiment of the present invention one provides;
Fig. 2 is a kind of flow diagram for octree index Structure Creating that the embodiment of the present invention one provides;
Fig. 3 is a kind of structural schematic diagram for index file that the embodiment of the present invention one provides;
Fig. 4 is the flow chart of the rendering method of point cloud data provided by Embodiment 2 of the present invention;
Fig. 5 is the structural schematic diagram of the processing unit for the point cloud data that the embodiment of the present invention three provides;
Fig. 6 is the structural schematic diagram of the rendering device for the point cloud data that the embodiment of the present invention four provides;
Fig. 7 is the structural schematic diagram of one of the embodiment of the present invention five equipment.
Specific embodiment
The present invention is described in further detail with reference to the accompanying drawings and examples.It is understood that this place is retouched The specific embodiment stated is used only for explaining the present invention rather than limiting the invention.It also should be noted that in order to just Only the parts related to the present invention are shown in description, attached drawing rather than entire infrastructure.It also should be noted that in order to just Only the parts related to the present invention are shown in description, attached drawing rather than entire infrastructure.
Embodiment one
Fig. 1 is the flow chart of the processing method for the point cloud data that the embodiment of the present invention one provides, and the present embodiment is applicable to The case where point cloud data is stored and is called, this method can be executed by the processing method device of point cloud data, described The processing method device of point cloud data can be realized by way of software and/or hardware.
Currently, Point Cloud Processing technology is handled the discrete data of acquisition, to obtain the surface model of object, It is a kind of new technology according to measurement gained point cloud data building threedimensional model, its main feature is that directly stored in dots, Processing, transmission and drawing three-dimensional object.
In practical applications, user proposes very high requirement to the display speed of three-dimensional scenic, not only want can according to The interactive instruction Dynamically Announce model at family, and can be according to the resolution ratio of the quick more new model of viewpoint change of user.So And the magnanimity of point cloud data and the complexity of operation lead to the slow-footed problem of point cloud data real-time rendering.
As shown in Figure 1, the processing method of point cloud data provided in an embodiment of the present invention mainly includes the following steps:
S110, octree index structure is constructed based on point cloud data to be processed and to each section in the octree structure Point is encoded.
Octree is a kind of for describing the tree data structure of the having levels property of three-dimensional space, each of Octree Node indicates that a square volume element, each node have 8 child nodes, the volume element of 8 child nodes added up just It is the volume of father node.All father nodes with child node are all non-leaf nodes, and leaf node does not have child node.Octree In each node have a visual range, the radius of visual range and bounding box is linear relationship, and node radius is bigger, then visual model Enclose bigger, therefore, the visual range of father node is bigger than the visual range of child node.
Before constructing octree index structure, need to obtain point cloud data to be processed, point cloud data to be processed can be Single point cloud data file to be processed, is also possible to multiple point cloud data files to be processed.When point cloud data to be processed is not It is very big, it can complete to store by once constructing, and be stored in file.When point cloud data amount to be processed is very big, once Building is unable to complete, and muti-piece point cloud data to be processed can be divided to be successively read creation, and synchronized update octree index structure.
It should be noted that whether in single point cloud data file to be processed or multiple point cloud data files to be processed Each point cloud data file to be processed, treat processing point cloud data processing mode be all identical.
Further, point cloud data file to be processed is traversed, the spatial dimension of point cloud data to be processed is calculated, total points, The information such as offset, scaling, classification, echo, coordinate system.
Octree index structure is constructed based on point cloud data to be processed and to each section in the octree index structure Point is encoded, comprising: total according to point cloud data to be processed counts, top mode amount threshold and preset vacuates interval Determine the number of plies N of octree index structure.
Further, the number of plies N of computation index structure according to the following formula:
Wherein, PointNumber is total points of point cloud data to be processed, and Scale vacuates interval, TopNum to be preset For top mode amount threshold.
Top mode amount threshold can be understood as the number of top mode in octree index structure.Vacuating interval can be with It is interpreted as extracting point cloud data of the data as a upper node layer from the point cloud data of preset quantity.Preset quantity is Vacuate interval.Such as: it is divided into 4 between vacuating, then extracts a point cloud data as a upper node layer at interval of 4 point cloud datas Point cloud data.The top mode amount threshold and the preset interval that vacuates can be designed according to the actual situation.
Illustratively, top mode amount threshold is 200000, and total points of point cloud data to be processed are 20000000 A, data are divided into 4 between vacuating, and meet 20000000 ÷, 4>200000,20000000 ÷ 4<200000 when data are divided into, because This, the number of plies N of octree index structure.
S120, point cloud data to be processed is subjected to piecemeal processing, obtains multiple point cloud data blocks.
Further, piecemeal processing, operation can be carried out according to be processed point cloud data of the running environment information to acquisition Environmental information includes memory size.The quantity of the point cloud data block can be 8N, wherein N is positive integer.Due to described wait locate It manages and uses Octree in the treatment process of point cloud data, so the quantity of point cloud data block can be 8N
According to the spatial dimension of point cloud data to be processed and number of plies N on the direction XYZ, it is divided into 2N, determine the section of n-th layer Point range.
The range of nodes of n-th layer are as follows:
StepX=(MaxX-MinX)/8^ (N-1);
StepY=(MaxY-MinY)/8^ (N-1);
StepZ=(MaxZ-MinZ)/8^ (N-1);
SubBound [Code]=(MinX+N × stepX, MinY+N × stepY, MinZ+N × stepZ, MinX+ (N+1) × stepX, MinY+ (N+1) × stepY, MinZ+ (N+1) × stepZ)
Wherein, MaxX is X-axis maximum value, and MinX is X-axis minimum value, and stepX is X-axis length, and MaxY is Y-axis maximum value, MinY is Y-axis minimum value, and stepY is Y-axis length, and MaxZ is Z axis maximum value, and MinZ is Z axis minimum value, and stepZ is that Z axis is long Degree, SubBound [Code] are the range of nodes of n-th layer.
In the X-axis data of point cloud data to be processed, X-axis maximum value and X-axis minimum value are determined.In point cloud data to be processed Y-axis data in, determine Y-axis maximum value and Y-axis minimum value.In the Z axis data of point cloud data to be processed, Z axis maximum is determined Value and Z axis minimum value.It is minimum according to X-axis maximum value, X-axis minimum value, Y-axis maximum value, Y-axis minimum value, Z axis maximum value and Z axis Value, determines the original bounding box of point cloud data to be processed.X-axis minimum value is subtracted with X-axis maximum value, obtains X-axis length.Use Y-axis Maximum value subtracts Y-axis minimum value, obtains Y-axis length.Z axis minimum value is subtracted with Z axis maximum value, obtains Z axis length.According to X-axis Minimum value, Y-axis minimum value, Z axis minimum value, the number of plies, X-axis length, Y-axis length and Z axis length determine the node model of n-th layer It encloses.
Fig. 2 is a kind of flow diagram for octree index Structure Creating that the embodiment of the present invention one provides.Such as Fig. 2 institute Show, point cloud data has cutting altogether three times, and cutting is four layers altogether, has the part of point cloud data to indicate do not have with grey in space Have the part of point cloud data is indicated with white, and the node comprising point cloud data is only retained in structure tree.To octree index structure It is encoded, first layer is encoded to 1, and second layer coding is followed successively by 11,12,13,14,15,16,17,18, and third layer is followed successively by 111,112...187,188, until n-th layer.
Point cloud data in S130, reading point cloud data block, and to be processed cloud is generated according to the point cloud data read The corresponding Octree with pyramid structure of data.
Deblocking threshold value is set according to computer hardware memory size, determines deblocking number M, it successively will be with data point The equal point cloud data block of block threshold value carries out memory mapping and reads, and can accelerate reading speed by memory mapping mode.
The point cloud data in point cloud data block is read, and point cloud data pair to be processed is generated according to the point cloud data read The Octree that vacuates answered includes: the point cloud data read in point cloud data block in such a way that memory maps;The point that will be read Cloud data are filled according to spatial positional information to the leaf node of Octree, and whole Octree is generated;Interval is vacuated according to default The whole Octree vacuate and is successively filled upwards, obtains the Octree with pyramid structure, and update index Index record in file.
The point cloud data of reading is filled into the leaf node of Octree according to spatial positional information.It is spaced according to vacuating Scale is successively vacuated and is filled upwards, and index file is written in Octree data, and updates index file index record letter Breath;The leaf node for executing and the point cloud data of reading being filled into Octree according to spatial positional information is returned to, until all the points The reading of cloud data file finishes.
Further, in point cloud data storing process, index file can be established.Fig. 3 is that the embodiment of the present invention one provides A kind of structural schematic diagram of index file;As shown in figure 3, including index file head, variable-length record information, each section in index file Point data information and Las file record.Before reading the point cloud data in point cloud data block, to write in first indexed file Enter index file head and octree structure information.The information of original point cloud data is essentially described in index file head, such as: point Cloud data file spatial dimension, total to count, the information such as offset, scaling, classification, echo, coordinate system.In the present embodiment Index file head occupies 417 bytes altogether.What is recorded in variable-length record information is octree structure information.Octree structure packet It includes: initial point position, the length and width of point cloud data block, the information such as storage points.Each node data information mainly includes each node The byte length stored in node serial number and the node, 53 son sections in Fig. 3 by 5 bytes headers and 48 bytes Message segment.Block count is the quantity of the point cloud data block stored in the node, and 12 son sections are stored in each point cloud data block Byte length.Las file is used to record comprising lidar point data.All existed with this format by the data that software exports.Number It is to provide a disclosed data format according to the purpose of format, enables different lidar software and hardware tools common with one Format output.Las file record is point cloud data record, is no longer described in detail in the present embodiment.
The embodiment of the present invention is by constructing octree index structure based on point cloud data to be processed and to octree index knot Each node in structure is encoded;Point cloud data to be processed is subjected to piecemeal processing, obtains multiple point cloud data blocks;Read point Point cloud data in cloud data block, and there is pyramid according to the point cloud data generation point cloud data to be processed read is corresponding The Octree of structure is realized by operation thread, IO thread, the rendering multithreadings means such as thread and load shedding thread The management and running of inside and outside deposit data realize that the Fast rendering of mass data is shown and interactive operation.
On the basis of the above embodiments, further, the point cloud data in point cloud data block is read, and according to reading Point cloud data generate the corresponding Octree for having pyramid structure of point cloud data to be processed after, further includes: building is each The corresponding paging detail node model of point cloud data in node;The visual range of the paging detail node model is according to node The place number of plies determines.
Firstly, the node of each Octree respectively corresponds a paging detail node model.
When establishing the corresponding paging detail node model of each node, need to read octree structure information.In this reality It applies in example, reads in index, index file head information is to obtain the points such as the Octree number of plies, points, range, offset, scaling The information of cloud data.Structural information is in reading index file to obtain octree index structural information.Then, according to point cloud data Information and octree index structural information, calculate the encirclement radius of a ball of Octree child nodes, and paging detail node is arranged The visual range and time threshold of model.
Wherein, the visual range of the first-level nodes are as follows: max > Node [0] > 0;The visual range of second node layer are as follows: 8*R [2]>Node[1]>0;And so on, n-th layer node: 8*R [N] > Node [N-1] > 0.Wherein, Node [X] refers to -1 layer of X Visual range.R [X] is the encirclement radius of a ball of X layer.
In the present embodiment, the determination range of visual range in a kind of paging detail node model that provides.It needs to illustrate , only the determination method of visual range is illustrated, and it is non-limiting, other can be selected to determine according to the actual situation visual The method of range.
Embodiment two
Fig. 4 is the flow chart of the rendering method of point cloud data provided by Embodiment 2 of the present invention, and the present embodiment is applicable to The case where point cloud data carries out rendering display, this method can be executed by the rendering method device of point cloud data, the point The rendering device of cloud data can be realized by way of software and/or hardware.
As shown in figure 4, the rendering method of point cloud data provided in an embodiment of the present invention mainly includes the following steps:
S410, viewport range is determined based on the paging detail node model and view distance by data control line journey Interior nodes encoding.
In the present embodiment, viewpoint can be understood as the position that user is equivalent to display screen.Viewport range is understood that For the range of current display screen.Nodes encoding can be understood as in above-described embodiment S110, the number of nodes encoding.Viewport model Nodes encoding in enclosing can be understood as the set of displayable child node within the scope of current display screen.
Data control line journey calculates viewpoint and arrives node center according to viewport range traversal queries viewport range interior nodes Distance, the data that node serial number is added if the visual range for meeting LOD setting add list.
S420, the corresponding point cloud data of each nodes encoding is read according to the nodes encoding by data I/O line journey.
Further, the corresponding point cloud data of each nodes encoding, packet are read according to nodes encoding by data I/O line journey It includes: determining the address of index record according to nodes encoding by data I/O line journey;Read the nodes encoding stored in index record The position of corresponding point cloud data and length;The position of point cloud data is mapped to by memory, according to the length read of point cloud data Take point cloud data.
In the present embodiment, data I/O line journey is added in list according to data and is carried out in each nodes encoding indexed file Inquiry, for each nodes encoding, determines and deposits in the corresponding node of the nodes encoding stored in nodes encoding indexed file The position of the point cloud data of storage and the length of point cloud data.Position director's degree is directly mapped in such a way that memory maps Point cloud data carries out point cloud data reading.It can accelerate the reading speed of point cloud data using the above method.
In the present embodiment, when putting cloud number reading data, index file is directly read, each node is inquired in index file Coding, determine position and the length of the point cloud data stored in the corresponding node of nodes encoding, pass through memory map Point cloud data is read in radiation.It does not need to be searched using traversal point cloud data, substantially increases recall precision.
S430, the corresponding point cloud data of each nodes encoding is rendered by rendering thread.
Rendering thread, which draws out the point cloud data of reading by OpenGL, to carry out rendering and shows.It should be noted that It in the present embodiment, can no longer be repeated using reasonable rendering mode.
Further, the method also includes: by render thread update the corresponding point cloud data of each nodes encoding Timestamp;If the time tolerance of the corresponding point cloud data of nodes encoding is greater than time threshold, nodes encoding addition is unloaded List table;It is unloaded by unloading thread by the nodes encoding in list is unloaded.
In the present embodiment, while point cloud data is rendered, the timestamp of each frame point cloud data, data are updated Control the corresponding timestamp of each nodes encoding in thread synchronization real-time ergodic data addition list.And when being calculated according to timestamp Between it is poor, if difference is greater than the time threshold that is arranged in paging detail node model, which is added to unload and is listed Table.Thread synchronization traversal unloading data list is unloaded, the corresponding point cloud data of nodes encoding is unloaded, weight after completion of discharge The multiple circulation carries out next frame Rendering operations.
The embodiment of the present invention is determined by data control line journey based on the paging detail node model and view distance Nodes encoding within the scope of viewport;Each corresponding cloud of nodes encoding is read according to the nodes encoding by data I/O line journey Data;The corresponding point cloud data of each nodes encoding is rendered by rendering thread.It is provided in an embodiment of the present invention Technical solution passes through operation thread, IO thread, renders inside and outside the realization of the multithreadings means such as thread and load shedding thread The management and running of deposit data realize that the Fast rendering of mass data is shown and interactive operation.
Embodiment three
Fig. 5 is the structural schematic diagram of the processing unit for the point cloud data that the embodiment of the present invention three provides, and the present embodiment can fit For the case where point cloud data is stored and is called, the processing method device of the point cloud data can by software and/ Or the mode of hardware is realized.
As shown in figure 5, the processing unit of point cloud data provided in an embodiment of the present invention, mainly includes following module: index Structure constructs module 510, point cloud data piecemeal module 520 and the first point cloud data read module 530.
Wherein, index structure constructs module 510, for based on point cloud data to be processed building octree index structure and right Each node in the octree index structure is encoded;
Point cloud data piecemeal module 520 obtains multiple point cloud datas for point cloud data to be processed to be carried out piecemeal processing Block;
First point cloud data read module 530, for reading the point cloud data in point cloud data block, and according to reading Point cloud data generates the corresponding Octree with pyramid structure of point cloud data to be processed.
The embodiment of the present invention is by constructing octree index structure based on point cloud data to be processed and to octree index knot Each node in structure is encoded;Point cloud data to be processed is subjected to piecemeal processing, obtains multiple point cloud data blocks;Read point Point cloud data in cloud data block, and there is pyramid according to the point cloud data generation point cloud data to be processed read is corresponding The Octree of structure is realized by operation thread, IO thread, the rendering multithreadings means such as thread and load shedding thread The management and running of inside and outside deposit data realize that the Fast rendering of mass data is shown and interactive operation.
Further, described device further include:
Nodal analysis method constructs module, and for the point cloud data for each node in octree index structure, building is each The corresponding paging detail node model of point cloud data in node;The visual range of the paging detail node model is according to node The place number of plies determines.
Further, the first point cloud data read module 530, specifically for reading a cloud number in such a way that memory maps According to the point cloud data in block;The point cloud data read is filled according to spatial positional information to the leaf node of Octree, it is raw Integral Octree;The whole Octree vacuate and successively filling upwards according to the default interval that vacuates, be had The Octree of pyramid structure, and update the index record in index file.
The processing unit of point cloud data provided by the embodiment of the present invention can be performed provided by any embodiment of the invention The processing method of point cloud data has the corresponding functional module of execution method and beneficial effect.
Example IV
Fig. 6 is the structural schematic diagram of the rendering device for the point cloud data that the embodiment of the present invention four provides, and the present embodiment can fit For the case where point cloud data carries out rendering display, the rendering device of the point cloud data can to pass through software and/or hardware Mode realize.
As shown in fig. 6, the rendering device of point cloud data provided in an embodiment of the present invention, mainly includes following module: node Encode determining module 610, second point cloud data read module 620 and point cloud data rendering module 630.
Wherein, nodes encoding determining module 610, for being based on the paging detail node model by data control line journey And view distance determines the nodes encoding within the scope of viewport;
Second point cloud data read module 620, for reading each section according to the nodes encoding by data I/O line journey Point encodes corresponding point cloud data;
Point cloud data rendering module 630, for by rendering thread by the corresponding point cloud data of each nodes encoding It is rendered.
The embodiment of the present invention is determined by data control line journey based on the paging detail node model and view distance Nodes encoding within the scope of viewport;Each corresponding cloud of nodes encoding is read according to the nodes encoding by data I/O line journey Data;The corresponding point cloud data of each nodes encoding is rendered by rendering thread.It is provided in an embodiment of the present invention Technical solution passes through operation thread, IO thread, renders inside and outside the realization of the multithreadings means such as thread and load shedding thread The management and running of deposit data realize that the Fast rendering of mass data is shown and interactive operation.
Further, described device further include:
Update of time stamp unit, for updating the time of the corresponding point cloud data of each nodes encoding by rendering thread Stamp;
Module is added in nodes encoding, if the time tolerance for the corresponding point cloud data of nodes encoding is greater than time threshold Then unloading list is added in nodes encoding by value;
Nodes encoding Unload module, for being unloaded by unloading thread by the nodes encoding in list is unloaded.
Further, second point cloud data read module 620 is specifically used for being compiled by data I/O line journey according to the node Code determines the address of index record;Read position and the length of the corresponding point cloud data of nodes encoding stored in index record; It is mapped to the position of the point cloud data by memory, point cloud data is read according to the length of point cloud data.
The rendering device of point cloud data provided by the embodiment of the present invention can be performed provided by any embodiment of the invention The rendering method of point cloud data has the corresponding functional module of execution method and beneficial effect.
Embodiment five
Fig. 7 is the structural schematic diagram of one of the embodiment of the present invention five equipment, as shown in fig. 7, the equipment includes processing Device 710, memory 720, input unit 730 and output device 740;The quantity of processor 710 can be one or more in equipment It is a, in Fig. 7 by taking a processor 710 as an example;Processor 710, memory 720, input unit 730 and output device in equipment 740 can be connected by bus or other modes, in Fig. 7 for being connected by bus.
Memory 720 is used as a kind of computer readable storage medium, can be used for storing software program, journey can be performed in computer Sequence and module, if the corresponding program instruction/module of the processing method of the point cloud data in the embodiment of the present invention is (for example, point cloud Index structure building module 510, point cloud data piecemeal module 520 and the first point cloud data in the processing unit of data read mould Block 530), for another example the corresponding program instruction/module of the rendering method of the point cloud data in the embodiment of the present invention is (for example, point cloud number According to rendering device in nodes encoding determining module 610, second point cloud data read module 620 and point cloud data rendering module 630).Software program, instruction and the module that processor 710 is stored in memory 720 by operation, thereby executing equipment The processing method of above-mentioned point cloud data is realized in various function application and data processing.
Memory 720 can mainly include storing program area and storage data area, wherein storing program area can store operation system Application program needed for system, at least one function;Storage data area, which can be stored, uses created data etc. according to equipment.This Outside, memory 720 may include high-speed random access memory, can also include nonvolatile memory, for example, at least one Disk memory, flush memory device or other non-volatile solid state memory parts.In some instances, memory 720 can be into one Step includes the memory remotely located relative to processor 710, these remote memories can pass through network connection to equipment.On The example for stating network includes but is not limited to internet, intranet, local area network, mobile radio communication and combinations thereof.
Input unit 730 can be used for receiving the number or character information of input, and generate with the user setting of equipment with And the related key signals input of function control.Output device 740 may include that display screen etc. shows equipment.
It should be noted that in the present embodiment execution point cloud data processing method when, processor 710 by operation deposits The program in system storage 720 is stored up, thereby executing various function application and data processing, such as realizes that the present invention is implemented The processing method of point cloud data provided by example, this method comprises:
Octree index structure is constructed based on point cloud data to be processed and to each section in the octree index structure Point is encoded;
Point cloud data to be processed is subjected to piecemeal processing, obtains multiple point cloud data blocks;
The point cloud data in point cloud data block is read, and point cloud data pair to be processed is generated according to the point cloud data read The Octree with pyramid structure answered.
Certainly, it will be understood by those skilled in the art that processor 710 can also realize that any embodiment of that present invention is provided Point cloud data processing method technical solution.The hardware configuration and function of the equipment can be found in the content solution of embodiment five It releases.
It should be noted that in the present embodiment execution point cloud data rendering method when, processor 710 by operation deposits The program in system storage 720 is stored up, thereby executing various function application and data processing, such as realizes that the present invention is implemented The rendering method of point cloud data provided by example, this method comprises:
It is determined within the scope of viewport by data control line journey based on the paging detail node model and view distance Nodes encoding;
The corresponding point cloud data of each nodes encoding is read according to the nodes encoding by data I/O line journey;
The corresponding point cloud data of each nodes encoding is rendered by rendering thread.
Certainly, it will be understood by those skilled in the art that processor 710 can also realize that any embodiment of that present invention is provided Point cloud data rendering method technical solution.The hardware configuration and function of the equipment can be found in the content solution of embodiment five It releases.
Embodiment six
The embodiment of the present invention six also provides a kind of computer readable storage medium, is stored thereon with computer program, the journey The processing method of point cloud data is realized when sequence is executed by processing unit, this method comprises:
Octree index structure is constructed based on point cloud data to be processed and to each section in the octree index structure Point is encoded;
Point cloud data to be processed is subjected to piecemeal processing, obtains multiple point cloud data blocks;
The point cloud data in point cloud data block is read, and point cloud data pair to be processed is generated according to the point cloud data read That answers has the Octree of pyramid structure.
Certainly, a kind of storage medium comprising computer executable instructions, computer provided by the embodiment of the present invention The method operation that executable instruction is not limited to the described above, can also be performed point cloud data provided by any embodiment of the invention Processing method in relevant operation.
The embodiment of the present invention six also provides a kind of storage medium comprising computer executable instructions, and the computer can be held Row is instructed when being executed by computer processor for executing a kind of rendering method of point cloud data, this method comprises:
It is determined within the scope of viewport by data control line journey based on the paging detail node model and view distance Nodes encoding;
The corresponding point cloud data of each nodes encoding is read according to the nodes encoding by data I/O line journey;
The corresponding point cloud data of each nodes encoding is rendered by rendering thread.
Certainly, a kind of storage medium comprising computer executable instructions, computer provided by the embodiment of the present invention The method operation that executable instruction is not limited to the described above, can also be performed point cloud data provided by any embodiment of the invention Rendering method in relevant operation.
By the description above with respect to embodiment, it is apparent to those skilled in the art that, the present invention It can be realized by software and required common hardware, naturally it is also possible to which by hardware realization, but in many cases, the former is more Good embodiment.Based on this understanding, technical solution of the present invention substantially in other words contributes to the prior art Part can be embodied in the form of software products, which can store in computer readable storage medium In, floppy disk, read-only memory (Read-Only Memory, ROM), random access memory (Random such as computer Access Memory, RAM), flash memory (FLASH), hard disk or CD etc., including some instructions are with so that a computer is set Standby (can be personal computer, server or the network equipment etc.) executes method described in each embodiment of the present invention.
It is worth noting that, being wrapped in the processing unit of above-mentioned point cloud data and the embodiment of point cloud data rendering device The each unit and module included is only divided according to the functional logic, but is not limited to the above division, as long as can Realize corresponding function;In addition, the specific name of each functional unit is also only for convenience of distinguishing each other, it is not used to limit Protection scope of the present invention processed.
Note that the above is only a better embodiment of the present invention and the applied technical principle.It will be appreciated by those skilled in the art that The invention is not limited to the specific embodiments described herein, be able to carry out for a person skilled in the art it is various it is apparent variation, It readjusts and substitutes without departing from protection scope of the present invention.Therefore, although being carried out by above embodiments to the present invention It is described in further detail, but the present invention is not limited to the above embodiments only, without departing from the inventive concept, also It may include more other equivalent embodiments, and the scope of the invention is determined by the scope of the appended claims.

Claims (10)

1. a kind of processing method of point cloud data characterized by comprising
Based on point cloud data to be processed construct octree index structure and to each node in the octree index structure into Row coding;
Point cloud data to be processed is subjected to piecemeal processing, obtains multiple point cloud data blocks;
The point cloud data in point cloud data block is read, and corresponding according to the point cloud data generation point cloud data to be processed read Octree with pyramid structure.
2. the method according to claim 1, wherein further include:
For the point cloud data of each node in octree index structure, the corresponding paging of point cloud data in each node is constructed Detail node model;The visual range of the paging detail node model is determined according to the number of plies where node.
3. the method according to claim 1, wherein reading the point cloud data in point cloud data block, and according to reading The point cloud data got generates the corresponding Octree with pyramid structure of point cloud data to be processed, comprising:
The point cloud data in point cloud data block is read in such a way that memory maps;
The point cloud data read is filled according to spatial positional information to the leaf node of Octree, whole Octree is generated;
The whole Octree vacuate and successively filling upwards according to the default interval that vacuates, be obtained with pyramid structure Octree, and update the index record in index file.
4. a kind of rendering method of point cloud data characterized by comprising
The node within the scope of viewport is determined based on the paging detail node model and view distance by data control line journey Coding;
The corresponding point cloud data of each nodes encoding is read according to the nodes encoding by data I/O line journey;
The corresponding point cloud data of each nodes encoding is rendered by rendering thread.
5. according to the method described in claim 4, it is characterized by further comprising:
The timestamp of the corresponding point cloud data of each nodes encoding is updated by rendering thread;
If the time tolerance of the corresponding point cloud data of nodes encoding is greater than time threshold, nodes encoding addition is unloaded and is listed Table;
It is unloaded by unloading thread by the nodes encoding in list is unloaded.
6. according to the method described in claim 4, it is characterized in that, being read respectively by data I/O line journey according to the nodes encoding The corresponding point cloud data of a nodes encoding, comprising:
The address of index record is determined according to the nodes encoding by data I/O line journey;
Read position and the length of the corresponding point cloud data of nodes encoding stored in index record;
It is mapped to the position of the point cloud data by memory, point cloud data is read according to the length of point cloud data.
7. a kind of processing unit of point cloud data characterized by comprising
Index structure constructs module, for based on point cloud data to be processed building octree index structure and to the Octree rope Each node in guiding structure is encoded;
Point cloud data piecemeal module obtains multiple point cloud data blocks for point cloud data to be processed to be carried out piecemeal processing;
First point cloud data read module, for reading the point cloud data in point cloud data block, and according to the point cloud number read According to the corresponding Octree with pyramid structure of generation point cloud data to be processed.
8. a kind of rendering device of point cloud data characterized by comprising
Nodes encoding determining module, for being based on the paging detail node model and view distance by data control line journey Determine the nodes encoding within the scope of viewport;
Second point cloud data read module, for reading each nodes encoding pair according to the nodes encoding by data I/O line journey The point cloud data answered;
Point cloud data rendering module, for will the corresponding point cloud data progress wash with watercolours of each nodes encoding by rendering thread Dye.
9. a kind of equipment, which is characterized in that the equipment includes:
One or more processors;
Memory, for storing one or more programs,
When one or more of programs are executed by one or more of processors, so that one or more of processors are real The now point cloud number as described in any in the processing method of point cloud data as claimed in any one of claims 1-3 and claim 4-6 According to rendering method.
10. a kind of computer readable storage medium, is stored thereon with computer program, which is characterized in that the program is by processor It is realized as described in any in the processing method of point cloud data as claimed in any one of claims 1-3 and claim 4-6 when execution Point cloud data rendering method.
CN201910563858.1A 2019-06-26 2019-06-26 The processing of point cloud data and rendering method, device, equipment and storage medium Pending CN110297924A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910563858.1A CN110297924A (en) 2019-06-26 2019-06-26 The processing of point cloud data and rendering method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910563858.1A CN110297924A (en) 2019-06-26 2019-06-26 The processing of point cloud data and rendering method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN110297924A true CN110297924A (en) 2019-10-01

Family

ID=68029131

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910563858.1A Pending CN110297924A (en) 2019-06-26 2019-06-26 The processing of point cloud data and rendering method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN110297924A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111552555A (en) * 2020-05-19 2020-08-18 北京数字绿土科技有限公司 Point cloud visualization method and device
CN112417965A (en) * 2020-10-21 2021-02-26 湖北亿咖通科技有限公司 Laser point cloud processing method, electronic device and storage medium
CN112489177A (en) * 2020-11-30 2021-03-12 深圳供电局有限公司 Point cloud data rendering and displaying method and system
CN112817538A (en) * 2021-02-22 2021-05-18 腾讯科技(深圳)有限公司 Data processing method, device, equipment and storage medium
CN113761238A (en) * 2021-08-27 2021-12-07 广州文远知行科技有限公司 Point cloud storage method, device, equipment and storage medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306180A (en) * 2011-08-29 2012-01-04 北京建筑工程学院 Modeling method based on mass laser radar grid point cloud data
CN104268096A (en) * 2014-09-26 2015-01-07 西南科技大学 Rapid large-scale point-cloud data reading method based on memory pre-distribution and multi-point writing technology
CN104392480A (en) * 2014-11-12 2015-03-04 山东地纬数码科技有限公司 Point-based rendering method for global lighting effect via internal memory and external memory switching method
CN105808672A (en) * 2016-03-01 2016-07-27 重庆市勘测院 Browser based mass three-dimensional point cloud data release method
CN106407408A (en) * 2016-09-22 2017-02-15 北京数字绿土科技有限公司 A spatial index construction method and device for mass point cloud data
CN107798721A (en) * 2016-08-31 2018-03-13 北京四维图新科技股份有限公司 A kind of processing method and processing device of cloud data and point cloud rendering intent and device
CN108470374A (en) * 2018-04-08 2018-08-31 中煤航测遥感集团有限公司 Mass cloud data processing method and processing device
CN109410118A (en) * 2018-09-12 2019-03-01 广州南方卫星导航仪器有限公司 A kind of point cloud data rapid loading display method for magnanimity
US20190114808A1 (en) * 2017-10-12 2019-04-18 Sony Corporation Octree traversal for anchor point cloud compression

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306180A (en) * 2011-08-29 2012-01-04 北京建筑工程学院 Modeling method based on mass laser radar grid point cloud data
CN104268096A (en) * 2014-09-26 2015-01-07 西南科技大学 Rapid large-scale point-cloud data reading method based on memory pre-distribution and multi-point writing technology
CN104392480A (en) * 2014-11-12 2015-03-04 山东地纬数码科技有限公司 Point-based rendering method for global lighting effect via internal memory and external memory switching method
CN105808672A (en) * 2016-03-01 2016-07-27 重庆市勘测院 Browser based mass three-dimensional point cloud data release method
CN107798721A (en) * 2016-08-31 2018-03-13 北京四维图新科技股份有限公司 A kind of processing method and processing device of cloud data and point cloud rendering intent and device
CN106407408A (en) * 2016-09-22 2017-02-15 北京数字绿土科技有限公司 A spatial index construction method and device for mass point cloud data
US20190114808A1 (en) * 2017-10-12 2019-04-18 Sony Corporation Octree traversal for anchor point cloud compression
CN108470374A (en) * 2018-04-08 2018-08-31 中煤航测遥感集团有限公司 Mass cloud data processing method and processing device
CN109410118A (en) * 2018-09-12 2019-03-01 广州南方卫星导航仪器有限公司 A kind of point cloud data rapid loading display method for magnanimity

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111552555A (en) * 2020-05-19 2020-08-18 北京数字绿土科技有限公司 Point cloud visualization method and device
CN111552555B (en) * 2020-05-19 2023-07-28 北京数字绿土科技股份有限公司 Point cloud visualization method and equipment
CN112417965A (en) * 2020-10-21 2021-02-26 湖北亿咖通科技有限公司 Laser point cloud processing method, electronic device and storage medium
CN112489177A (en) * 2020-11-30 2021-03-12 深圳供电局有限公司 Point cloud data rendering and displaying method and system
CN112489177B (en) * 2020-11-30 2024-04-09 深圳供电局有限公司 Point cloud data rendering and displaying method and system
CN112817538A (en) * 2021-02-22 2021-05-18 腾讯科技(深圳)有限公司 Data processing method, device, equipment and storage medium
CN112817538B (en) * 2021-02-22 2022-08-30 腾讯科技(深圳)有限公司 Data processing method, device, equipment and storage medium
CN113761238A (en) * 2021-08-27 2021-12-07 广州文远知行科技有限公司 Point cloud storage method, device, equipment and storage medium

Similar Documents

Publication Publication Date Title
CN110297924A (en) The processing of point cloud data and rendering method, device, equipment and storage medium
CN106407408B (en) A kind of the spatial index construction method and device of mass cloud data
US10347042B2 (en) Importance sampling of sparse voxel octrees
CN106776963B (en) The online method for visualizing of light-weighted BIM big data and system
CN103093499B (en) A kind of city three-dimensional model data method for organizing being applicable to Internet Transmission
DE112021003335T5 (en) POINT CLOUD GEOMETRY COMPRESSION USING OCTREES WITH MULTIPLE SCAN ORDERS
US8947431B2 (en) Method and system for providing scene data of virtual world
CN115918088A (en) Point cloud compression using octree with slices
CN104572755B (en) A kind of method for establishing data directory, data query method and relevant apparatus
CN110990516B (en) Map data processing method, device and server
CN101364310A (en) Three-dimensional model image generating method and apparatus
CN105261066B (en) A kind of three-dimensional geographic information system real-time rendering multithreading distribution and control method
CN114008997A (en) Context determination of planar modes in octree-based point cloud coding
CN110597900B (en) Method for generating vector slice by GDB data in real time according to needs
CN111127637A (en) Data processing method and device of three-dimensional model and electronic equipment
CN112598793A (en) Three-dimensional map tile vector grid integrated system and method
CN108205960A (en) Method and apparatus, electron map manufacturing system and the navigation system that a kind of word renders
CN112017270A (en) Live-action three-dimensional visualization online application system
CN109997123B (en) Methods, systems, and apparatus for improved space-time data management
Andújar et al. Visualization of Large‐Scale Urban Models through Multi‐Level Relief Impostors
CN104166715A (en) Vxworks platform electronic chart engine
CN113034663B (en) GIM model light weight processing method and device, equipment and storage medium
CN115952252B (en) Semantic tile data processing method and device based on dynamic rendering and electronic equipment
CN114863040B (en) LOD tree construction method and device for texture-dense three-dimensional scene and electronic equipment
CN112843700B (en) Terrain image generation method and device, computer equipment and storage medium

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191001