CN117437354A - Mass oblique photography three-dimensional model data storage and second-level loading method - Google Patents

Mass oblique photography three-dimensional model data storage and second-level loading method Download PDF

Info

Publication number
CN117437354A
CN117437354A CN202311284535.1A CN202311284535A CN117437354A CN 117437354 A CN117437354 A CN 117437354A CN 202311284535 A CN202311284535 A CN 202311284535A CN 117437354 A CN117437354 A CN 117437354A
Authority
CN
China
Prior art keywords
data
hilbert
space
dimensional
osgb
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
CN202311284535.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.)
China Survey Surveying And Mapping Technology Co ltd
Original Assignee
China Survey Surveying And Mapping Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Survey Surveying And Mapping Technology Co ltd filed Critical China Survey Surveying And Mapping Technology Co ltd
Priority to CN202311284535.1A priority Critical patent/CN117437354A/en
Publication of CN117437354A publication Critical patent/CN117437354A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/005Tree description, e.g. octree, quadtree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Geometry (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Graphics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Remote Sensing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

The invention relates to a method for storing and loading mass oblique photography three-dimensional model data in second level, which comprises the following steps: imaging by adopting a multi-lens oblique camera to obtain oblique photographic source data, and generating original OSGB data after space three encryption; the original OSGB data is segmented again by adopting a quadtree subdivision algorithm, and the original OSGB data is geometrically reconstructed from the bottom layer to the upper layer; performing space octree segmentation on the reconstructed OSGB data, connecting three-dimensional Hilbert curves in series, naming Hilbert codes, and storing each subspace data and Hilbert codes into an unstructured database MongoDB; generating a tilting data request service; performing space octree segmentation, three-dimensional Hilbert curve concatenation and Hilbert coding naming on the view cone visual field, matching the Hilbert coding of the view cone visual field with the Hilbert coding of the requested oblique data, and obtaining a coding set as a data set of the oblique data request loading. The invention solves the problem of high-efficiency storage and display management of mass oblique photography three-dimensional model data.

Description

Mass oblique photography three-dimensional model data storage and second-level loading method
Technical Field
The invention belongs to the technical field of geographic information systems, and relates to a mass oblique photography three-dimensional model data storage and second-level loading method.
Background
The oblique photography technology is a high-new technology developed in recent years in the international mapping field, is widely applied by the characteristics of quick acquisition and quick modeling, high precision, low cost and real effect, and is widely applied and researched at home and abroad. The large-scale oblique photographing three-dimensional model data has the characteristics of high model precision, large data total quantity, large quantity and the like, and taking a large-venturi river basin as an example, the oblique photographing three-dimensional model of about 1200 square kilometers around the river channel of the large-venturi river basin occupies 2.37TB and 2112.64 ten thousand files in total, the average file size is 116kb, and the model precision is in a centimeter level, so that the rapid sharing of mass data of the Web end becomes a main problem currently faced. In the rendering process of the front end, the data can be divided into more grids in a large range, the number of requests in the thread can be increased by sharing the data by the Web end, and the request efficiency of the data is seriously affected; the multi-level may cause the data request to stay in a certain area for a long time, and the phenomenon is that a certain piece of data may be clear, but the data in other places is not requested yet, the loading level is not uniform, and the display effect is not attractive; high precision is achieved when the data is loaded to a fine level, the data is very clear, but the memory and video memory of the machine will be occupied in large amounts.
Disclosure of Invention
The invention solves the technical problems that: the method for storing and loading the mass oblique photography three-dimensional model data in second level is provided to solve the problems of efficient storage and display management of the mass oblique photography three-dimensional model data.
The solution of the invention is as follows: in a first aspect, a method for storing and loading mass oblique photography three-dimensional model data in second level is provided, which comprises the following steps:
s1, imaging by adopting a multi-lens oblique camera to obtain oblique photographic source data, and generating original OSGB data after space three encryption;
s2, re-blocking the original OSGB data by adopting a quadtree splitting algorithm, and geometrically reconstructing the original OSGB data from the bottom layer to the upper layer;
s3, performing space octree segmentation on the reconstructed OSGB data, filling each subspace obtained by the space octree segmentation in series by using a three-dimensional Hilbert curve, performing Hilbert coding naming on each subspace penetrated by the three-dimensional Hilbert curve, taking the Hilbert code as a unique subspace data identifier, and storing each subspace data and the corresponding Hilbert code into an unstructured database MongoDB;
s4, the client sends an inclination data request, and the server reads an unstructured database MongoDB and feeds back the inclination data requested;
s5, performing space octree segmentation on the camera view cone visual field, repeating the three-dimensional Hilbert curve space series connection and Hilbert coding processing of the step S3, performing coding matching on the Hilbert codes of the camera view cone visual field and the Hilbert codes corresponding to the currently requested inclination data to obtain a Hilbert code set A corresponding to the current camera view cone visual field, taking the code set A as a parameter for inclination data request loading, and loading the inclination data; the camera view cone view corresponds to a tilt data view.
Further, S2 specifically includes:
according to the space quadtree grading and blocking subdivision method, the center point coordinates of the original OSGB data blocks are calculated, the center point coordinates are converted into quadtree codes, the current codes are 001010, the parent level codes 001 are upwards taken, after the original OSGB data are coded according to the method, the data blocks with the same codes are combined, repeated geometric vertexes are removed, and the OSGB data geometric reconstruction is completed.
Further, the performing space octree segmentation on the reconstructed OSGB data, and using a three-dimensional hilbert curve to serially fill each subspace obtained by the space octree segmentation, specifically includes:
and (3) performing space layering and blocking on the geometrically reconstructed inclined data by adopting a space octree segmentation algorithm, generating inclined data sub-blocks with different spatial resolutions, segmenting the inclined data sub-blocks into 15-18 layers according to data processing requirements, and performing space filling series connection on the inclined data sub-blocks corresponding to each layer by adopting a three-dimensional Hilbert curve to realize dimension reduction processing on the three-dimensional space data blocks.
Further, the Hilbert coding naming is performed on each subspace traversed by the three-dimensional Hilbert curve, which specifically includes:
each space code of the three-dimensional Hilbert curve is 0,1,2,3,4,5,6,7, and then the three-dimensional Hilbert curve is converted into a binary 000,001,010,011,100,101,110,111, and the three-bit binary code represents the Hilbert code of one subspace;
according to the level of the space subdivision, the data block of the corresponding level is subjected to multi-level coding, specifically: for the subspace of which the first-stage Hilbert code is 001, continuing to divide the space octree to obtain the Hilbert code of eight corresponding sub-data blocks of the second stage as 001000 ~ 001111; aiming at subspaces of the second-level Hilbert codes 001010, space octree segmentation is continued to obtain Hilbert codes of eight sub-data blocks corresponding to the third level 001010000 ~ 001010111; and so on, a Hilbert code is obtained for each subspace of the multiple levels.
Further, each of the subspace data and the corresponding Hilbert code are stored in the unstructured database MongoDB in the form of key-value pairs.
Further, the storage of each subspace data in S3 in the unstructured database mongo db is according to the following rules:
and storing the processed OSGB data in S3 into a storage unit collection of the MongoDB through a Studio 3T or other MongoDB connection tool, and naming the storage unit collection as a first-level Hilbert code.
Further, S4 specifically includes:
the client requests the inclined data through an Nginx server, the Nginx server forwards the request to a server, the server reads the inclined data in the unstructured database MongoDB, a compression program draco_encoder.exe is adopted to pre-compress the inclined data file, and meanwhile the transmission data file is subjected to Gzip compression through the Nginx; the web client calls js decompression code provided by Draco, decompresses the transmission data file, and renders the presentation.
In a second aspect, a computer readable storage medium is provided, where the computer readable storage medium stores a computer program, where the computer program when executed by a processor implements the steps of the method for storing and loading mass oblique photography three-dimensional model data.
In a third aspect, a device for storing and loading data of a three-dimensional model of mass oblique photography is provided, which comprises a memory, a processor and a computer program stored in the memory and capable of running on the processor, wherein the processor realizes the steps of the method for storing and loading data of the three-dimensional model of mass oblique photography when executing the computer program.
Compared with the prior art, the invention has the beneficial effects that:
(1) According to the invention, the top layer structure of the original data is rebuilt, the data storage and retrieval are optimized, the front-end rendering efficiency is improved, support is provided for transmission, exchange and sharing of massive three-dimensional model data among different terminals, and the capability of high-efficiency drawing of the massive data is realized. Compared with the traditional chip type file storage, the invention uses the unstructured database MongoDB to store mass inclined data blocks, effectively improves the speed of data retrieval, distribution and migration, and has the reading and writing speed 10 times that of file reading.
(2) According to the invention, a drago+gzip double compression technology is adopted aiming at the characteristics of massive oblique photographing data, the data compression rate is about 20%, the data volume is reduced, the network transmission efficiency is accelerated, and the front-end display performance is improved.
(3) According to the invention, by timely eliminating the outside oblique data of the visual field, the visual loading efficiency and the system fluency are improved, so that the data display is complete, the browsing is smooth, and the performance and effect are obviously improved in the Web front-end rendering of massive oblique photographic data.
Drawings
FIG. 1 is a flow chart of tilt model data processing according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of a root node reconstruction tile using a quadtree splitting algorithm in accordance with an embodiment of the present invention;
FIG. 3 is a schematic diagram of a spatial octree partitioning according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a three-dimensional Hilbert plot according to an embodiment of the present invention;
FIG. 5 is a schematic diagram of a three-dimensional Hilbert space concatenation according to an embodiment of the present invention;
FIG. 6 is a cut-away view of an inclined model octree according to an embodiment of the present invention;
fig. 7 is a schematic view of a camera view cone according to an embodiment of the invention.
Detailed Description
The invention is further elucidated below in connection with the accompanying drawings.
As shown in FIG. 1, the method for storing and loading mass oblique photography three-dimensional model data comprises the following steps:
s1, imaging by adopting a multi-lens oblique camera to obtain oblique photographic source data, and generating original OSGB data after space three encryption;
s2, re-blocking the original OSGB data by adopting a quadtree splitting algorithm, and geometrically reconstructing the original OSGB data from the bottom layer to the upper layer;
s3, performing space octree segmentation on the reconstructed OSGB data, filling each subspace obtained by the space octree segmentation in series by using a three-dimensional Hilbert curve, performing Hilbert coding naming on each subspace penetrated by the three-dimensional Hilbert curve, taking the Hilbert code as a unique subspace data identifier, and storing each subspace data and the corresponding Hilbert code into an unstructured database MongoDB;
s4, the client sends an inclination data request, and the server reads an unstructured database MongoDB and feeds back the inclination data requested;
s5, performing space octree segmentation on the camera view cone visual field, repeating the three-dimensional Hilbert curve space series connection and Hilbert coding processing of the step S3, performing coding matching on the Hilbert codes of the camera view cone visual field and the Hilbert codes corresponding to the currently requested inclination data to obtain a Hilbert code set A corresponding to the current camera view cone visual field, taking the code set A as a parameter for inclination data request loading, and loading the inclination data; the camera view cone view corresponds to a tilt data view.
In step S1, OSGB data generated by conventional space triple encryption is severely fragmented, and data is scattered, so that a network data request of TB-level data volume cannot be satisfied. According to the image pyramid data structure of fig. 2, the original OSGB data are geometrically reconstructed from the bottom layer to the upper layer by adopting a quadtree geographic subdivision algorithm. S2 specifically comprises: according to the space quadtree grading and blocking subdivision method, the center point coordinates of the original OSGB data blocks are calculated, the center point coordinates are converted into quadtree codes, if the current codes are 001010, the parent level codes 001 are upwards taken, after the original OSGB data are coded according to the method, the data blocks with consistent codes are combined, repeated geometric vertexes are removed, and the OSGB data geometric reconstruction is completed.
Fig. 2 illustrates an OSGB data upward one-level geometrical reconstruction using a quadtree splitting algorithm, such as: and combining the adjacent 0,1,2 and 3 blocks of the 10 th layer of the original OSGB data into one block.
The OSGB format data structure is complex, and the single block data volume is large, which is unfavorable for network transmission and visualization. In the invention, in the step S3, a space octree (octree) segmentation+three-dimensional Hilbert Curve (3D-Hilbert Curve) serial index algorithm is adopted to realize the space index optimization of OSGB data, the optimized data is subjected to Hilbert coding, the Hilbert code is used as a data unique identifier, and each subspace data and the corresponding Morton code are stored in a MongoDB to realize high-performance read-write management.
As shown in fig. 3, the OSGB data geometrically reconstructed in step S2 is segmented into three dimensions according to the spatial octree (octree) segmentation principle. Specifically: and carrying out space layering and blocking on the geometrically reconstructed inclined data to generate inclined data sub-blocks with different spatial resolutions, wherein each dimension takes half of the length of the original space range as the size of a sub-space, and after a space is divided, 8 sub-spaces with the same size but three dimensions are half of the original space are formed. And (3) continuing to iteratively divide each subspace obtained by division, wherein the subspaces can be divided into 15-18 layers according to the data processing requirement. And carrying out space filling series connection on the inclined data sub-blocks corresponding to each level by adopting a three-dimensional Hilbert curve, so as to realize dimension reduction processing on the three-dimensional space data blocks.
As shown in FIG. 4, the 3D-Hilbert Curve is continuous and stable compared with the Z Curve, and the problems of Z-letter corner sequence mutation and the like are avoided.
As shown in fig. 5 and 6, the present invention fills each subspace divided by a three-dimensional Hilbert Curve (3D-Hilbert Curve) into series, and performs Hilbert coding naming on each subspace traversed by the three-dimensional Hilbert Curve, which specifically includes:
as shown in fig. 5, each space code after the three-dimensional Hilbert curve is serially connected is 0,1,2,3,4,5,6,7, and then converted into a binary system 000,001,010,011,100,101,110,111, and then the three-bit binary system code represents the Hilbert code of one subspace;
according to the hierarchy of the spatial subdivision, the data blocks of the corresponding hierarchy are multi-level encoded, for example: for the subspace of which the first-stage Hilbert code is 001, continuing to divide the space octree to obtain the Hilbert code of eight corresponding sub-data blocks of the second stage as 001000 ~ 001111; aiming at subspaces of the second-level Hilbert codes 001010, space octree segmentation is continued to obtain Hilbert codes of eight sub-data blocks corresponding to the third level 001010000 ~ 001010111; and so on, a Hilbert code is obtained for each subspace of the multiple levels.
Each subspace data and corresponding Hilbert codes are then stored in the unstructured database mongo db in the form of key-value pairs. A preferred scheme is as follows: and storing the processed OSGB data in S3 into a storage unit collection of the MongoDB through a Studio 3T or other MongoDB connection tool, and naming the storage unit collection as a first-level Hilbert code.
Compared with the traditional chip type file storage, the invention uses the unstructured database MongoDB to store mass inclined data blocks, can effectively improve the speed of data retrieval, distribution and migration, and has the reading and writing speed 10 times that of file reading.
After the unstructured database MongoDB is built, a tilt data service needs to be generated: and the client sends a tilt data request, and the server reads the unstructured database MongoDB and feeds back the requested tilt data. The invention creatively provides a Draco+Gzip double compression technology, which comprises the following steps:
the client requests the inclined data through an Nginx server, the Nginx server forwards the request to the server, the server reads the inclined data in the unstructured database MongoDB, a compression program draco_encoder.exe is adopted to pre-compress the inclined data file, and meanwhile Gzip compression can be carried out on the transmission data file through the Nginx; the web client calls js decompression code provided by Draco, decompresses the transmission data file, and renders the presentation. According to the invention, through the Draco+Gzip double compression technology, the data compression rate is about 20%, the data volume is reduced, and the data transmission efficiency is improved.
As shown in fig. 7, the tilt data service is typically loaded in a three-dimensional geographic platform that controls the visual extent of the data through the camera view cone, i.e., the camera view cone visual field corresponds to the tilt data visual field. And (3) performing space octree segmentation on the camera view cone visual field, repeating the three-dimensional Hilbert curve space series connection and Hilbert coding processing of the step (S3), and performing coding matching on the Hilbert codes of the camera view cone visual field and the Hilbert codes corresponding to the currently requested oblique data to obtain a Hilbert code set A corresponding to the current camera view cone visual field, wherein the set A is used as a data set for oblique data request loading.
And taking the code set A as a parameter of the inclined data request loading, acquiring the inclined data service matched with the Hilbert code, meeting the minimum data set of the system data request, and improving the visual loading efficiency.
By adopting the method provided by the invention, the data structure of the oblique model is simplified, the data storage and reading efficiency is improved, the vertex coordinates and the texture of materials are compressed, the network transmission efficiency is accelerated, the oblique data outside the visual field is removed in time, the visual loading efficiency and the system fluency are improved, and the performance and the effect of massive oblique photographic data in Web front-end rendering are obviously improved.
The present application provides a computer readable storage medium storing computer instructions that, when run on a computer, cause the computer to perform the method described in fig. 1.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, magnetic disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present application without departing from the spirit or scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims and the equivalents thereof, the present application is intended to cover such modifications and variations.
What is not described in detail in the present specification is a well known technology to those skilled in the art.

Claims (9)

1. The mass oblique photography three-dimensional model data storage and second-level loading method is characterized by comprising the following steps of:
s1, imaging by adopting a multi-lens oblique camera to obtain oblique photographic source data, and generating original OSGB data after space three encryption;
s2, re-blocking the original OSGB data by adopting a quadtree splitting algorithm, and geometrically reconstructing the original OSGB data from the bottom layer to the upper layer;
s3, performing space octree segmentation on the reconstructed OSGB data, filling each subspace obtained by the space octree segmentation in series by using a three-dimensional Hilbert curve, performing Hilbert coding naming on each subspace penetrated by the three-dimensional Hilbert curve, taking the Hilbert code as a unique subspace data identifier, and storing each subspace data and the corresponding Hilbert code into an unstructured database MongoDB;
s4, the client sends an inclination data request, and the server reads an unstructured database MongoDB and feeds back the inclination data requested;
s5, performing space octree segmentation on the camera view cone visual field, repeating the three-dimensional Hilbert curve space series connection and Hilbert coding processing of the step S3, performing coding matching on the Hilbert codes of the camera view cone visual field and the Hilbert codes corresponding to the currently requested inclination data to obtain a Hilbert code set A corresponding to the current camera view cone visual field, taking the code set A as a parameter for inclination data request loading, and loading the inclination data; the camera view cone view corresponds to a tilt data view.
2. The method for storing and loading mass oblique photography three-dimensional model data and seconds according to claim 1, wherein S2 specifically comprises:
according to the space quadtree grading and blocking subdivision method, the center point coordinates of the original OSGB data blocks are calculated, the center point coordinates are converted into quadtree codes, the current codes are 001010, the parent level codes 001 are upwards taken, after the original OSGB data are coded according to the method, the data blocks with the same codes are combined, repeated geometric vertexes are removed, and the OSGB data geometric reconstruction is completed.
3. The method for storing and loading mass oblique photography three-dimensional model data and second-level loading according to claim 1, wherein the method is characterized in that the reconstructed OSGB data is subjected to space octree segmentation, and each subspace filling obtained by the space octree segmentation is connected in series by using a three-dimensional hilbert curve, and specifically comprises the following steps:
and (3) performing space layering and blocking on the geometrically reconstructed inclined data by adopting a space octree segmentation algorithm, generating inclined data sub-blocks with different spatial resolutions, segmenting the inclined data sub-blocks into 15-18 layers according to data processing requirements, and performing space filling series connection on the inclined data sub-blocks corresponding to each layer by adopting a three-dimensional Hilbert curve to realize dimension reduction processing on the three-dimensional space data blocks.
4. The method for storing and loading data of three-dimensional model of mass oblique photography according to claim 1, wherein said Hilbert coding naming is carried out on each subspace traversed by the three-dimensional Hilbert curve, specifically comprising:
each space code of the three-dimensional Hilbert curve is 0,1,2,3,4,5,6,7, and then the three-dimensional Hilbert curve is converted into a binary 000,001,010,011,100,101,110,111, and the three-bit binary code represents the Hilbert code of one subspace;
according to the level of the space subdivision, the data block of the corresponding level is subjected to multi-level coding, specifically: for the subspace of which the first-stage Hilbert code is 001, continuing to divide the space octree to obtain the Hilbert code of eight corresponding sub-data blocks of the second stage as 001000 ~ 001111; aiming at subspaces of the second-level Hilbert codes 001010, space octree segmentation is continued to obtain Hilbert codes of eight sub-data blocks corresponding to the third level 001010000 ~ 001010111; and so on, a Hilbert code is obtained for each subspace of the multiple levels.
5. A method of mass oblique photography three-dimensional model data storage and second-level loading as claimed in claim 1 wherein each subspace data and corresponding Hilbert code is stored in the unstructured database MongoDB in key-value pairs.
6. The method for storing and loading mass oblique photography three-dimensional model data and seconds according to claim 4, wherein the storage of each subspace data in S3 in the unstructured database MongoDB is according to the following rules:
and storing the processed OSGB data in S3 into a storage unit collection of the MongoDB through a Studio 3T or other MongoDB connection tool, and naming the storage unit collection as a first-level Hilbert code.
7. The method for storing and loading mass oblique photography three-dimensional model data and seconds according to claim 1, wherein S4 specifically comprises:
the client requests the inclined data through an Nginx server, the Nginx server forwards the request to a server, the server reads the inclined data in the unstructured database MongoDB, a compression program draco_encoder.exe is adopted to pre-compress the inclined data file, and meanwhile the transmission data file is subjected to Gzip compression through the Nginx; the web client calls js decompression code provided by Draco, decompresses the transmission data file, and renders the presentation.
8. A computer readable storage medium storing a computer program, which when executed by a processor performs the steps of the method according to any one of claims 1 to 7.
9. A mass oblique photography three-dimensional model data storage and second-level loading device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized by: the processor, when executing the computer program, performs the steps of the method according to any one of claims 1 to 7.
CN202311284535.1A 2023-09-28 2023-09-28 Mass oblique photography three-dimensional model data storage and second-level loading method Pending CN117437354A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311284535.1A CN117437354A (en) 2023-09-28 2023-09-28 Mass oblique photography three-dimensional model data storage and second-level loading method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311284535.1A CN117437354A (en) 2023-09-28 2023-09-28 Mass oblique photography three-dimensional model data storage and second-level loading method

Publications (1)

Publication Number Publication Date
CN117437354A true CN117437354A (en) 2024-01-23

Family

ID=89557458

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311284535.1A Pending CN117437354A (en) 2023-09-28 2023-09-28 Mass oblique photography three-dimensional model data storage and second-level loading method

Country Status (1)

Country Link
CN (1) CN117437354A (en)

Similar Documents

Publication Publication Date Title
Gobbetti et al. Layered point clouds: a simple and efficient multiresolution structure for distributing and rendering gigantic point-sampled models
JP5456903B2 (en) Method and apparatus for encoding mesh model, encoded mesh model, and method and apparatus for decoding mesh model
Gobbetti et al. C‐BDAM–compressed batched dynamic adaptive meshes for terrain rendering
CN105405166B (en) A kind of LOD model generating methods based on linear quadtree
RU2237284C2 (en) Method for generating structure of assemblies, meant for presenting three-dimensional objects with use of images having depth
CN113628314B (en) Visualization method, device and equipment for photographic measurement model in illusion engine
CN101364310A (en) Three-dimensional model image generating method and apparatus
CN111260784B (en) Urban three-dimensional space grid compression coding method and device and terminal equipment
CN114943810B (en) Osgb-based optimization method, terminal, device and medium for oblique photography slice
WO2022121649A1 (en) Point cloud data encoding and decoding method, point cloud data processing method and apparatus, electronic device, computer program product, and computer readable storage medium
JP2023501640A (en) POINT CLOUD PROCESSING METHOD, COMPUTER SYSTEM, PROGRAM AND COMPUTER-READABLE STORAGE MEDIUM
KR102592986B1 (en) Context modeling of occupancy coding for point cloud coding
Lee et al. Geometry splitting: an acceleration technique of quadtree-based terrain rendering using GPU
Pätzold et al. Grid-free out-of-core voxelization to sparse voxel octrees on GPU
Chen et al. Progressive visualization of complex 3D models over the internet
CN116467540B (en) HBase-based massive space data rapid visualization method
CN117437354A (en) Mass oblique photography three-dimensional model data storage and second-level loading method
CN115731354A (en) Visual relationship-based power grid equipment three-dimensional twin model slice simplification method
CN111275806A (en) Parallelization real-time rendering system and method based on points
CN115409907A (en) Point cloud model compression method, device and system
Lee et al. A bimodal empty space skipping of ray casting for terrain data
Platings et al. Compression of Large‐Scale Terrain Data for Real‐Time Visualization Using a Tiled Quad Tree
CN113032405A (en) Spatio-temporal data management method, system, host and computer readable storage medium
CN107507276A (en) The 3-dimensional digital rock core storage method that slabbed core for any direction is shown
CN107506357B (en) Two-dimensional digital rock core storage method for the reconstruct of different thicknesses granularity core image

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