Oblique photography data loading method, device, equipment, medium and program product
By screening and extracting the building-related information in the tilt photography data, combined with the storage and loading strategies of the hierarchical building height correspondence, the problem of long loading time caused by the large amount of tilt photography data is solved, and the smooth loading and display of urban and county-level data is achieved.
Patent Information
- Application Number
- CN202411603034.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-11
- Publication Date
- 2025-02-28
AI Technical Summary
The large amount of tilt photography data leads to a long loading time, affecting the fluency of the interactive interface. The existing simplified methods are difficult to achieve smooth loading on urban district and county-level data.
By filtering and extracting the information related to the building in the tilt photography data in advance, the building is extracted and stored according to the pre-configured hierarchical building height correspondence, and when the view angle to be loaded is received, the target loading content is determined for loading display.
The amount of data loading in a single data is reduced, and the loading efficiency is improved, so that tilted photography data can be loaded and displayed more smoothly at the urban district and county level.
Smart Images

Figure CN119537626A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of visualization technology, and in particular to a method, device, equipment, medium and program product for loading oblique photography data. Background Art
[0002] Oblique photography is an emerging technology in the field of surveying and mapping. It overturns the previous limitation that orthophotos can only be taken from vertical angles. By mounting a camera with multiple lenses on the same flying platform, it simultaneously collects images from five different angles, including one vertical and four oblique angles. It observes ground objects from multiple angles, reflects the real situation of ground objects, and introduces users into a real and intuitive world that conforms to human vision.
[0003] The three-dimensional model obtained based on oblique photography technology can more intuitively reflect the characteristics and texture information of ground objects, which can greatly promote the development of the surveying and mapping industry and provide rich basic data for applications such as three-dimensional digital cities and digital villages. However, in actual use, due to the huge amount of oblique photography data, it takes a lot of time to load the data into the cross section, resulting in an unsmooth interactive interface. Even through methods such as vertex merging and triangle simplification, the amount of three-dimensional data can be simplified to a certain extent and the data size can be reduced, but in the face of urban districts and counties with data calculated at the TB level, it is still difficult to achieve smooth loading of oblique photography data. Summary of the invention
[0004] The present invention provides a method, device, equipment, medium and program product for loading oblique photography data. According to the display requirements of oblique photography data in urban districts and counties, information related to buildings in the oblique photography data is screened and extracted in advance, thereby reducing the amount of data required to be loaded during a single oblique photography data loading and improving the loading efficiency.
[0005] In a first aspect, an embodiment of the present invention provides a method for loading oblique photography data, comprising:
[0006] Obtain oblique photography data;
[0007] Extract buildings from oblique photography data according to the pre-configured hierarchical building height correspondence, and store the extracted loading content of each level;
[0008] When receiving the view angle to be loaded, determining the target loading content according to the view angle to be loaded, the oblique photography data and the loading content of each level, and loading and displaying the target loading content;
[0009] The hierarchical loading content is the data content corresponding to the observable buildings at different levels in the oblique photography data.
[0010] In a second aspect, an embodiment of the present invention further provides a device for loading oblique photography data, comprising:
[0011] A data acquisition module, used for acquiring oblique photography data;
[0012] The building extraction module is used to extract buildings from the oblique photography data according to the pre-configured hierarchical building height correspondence, and store the extracted loading content of each level;
[0013] A content loading module is used to determine the target loading content according to the viewing angle to be loaded, the oblique photography data and the loading content of each level when receiving the viewing angle to be loaded, and load and display the target loading content;
[0014] The hierarchical loading content is the data content corresponding to the observable buildings at different levels in the oblique photography data.
[0015] In a third aspect, an embodiment of the present invention further provides an oblique photography data loading device, comprising:
[0016] at least one processor; and a memory communicatively coupled to the at least one processor;
[0017] The memory stores a computer program that can be executed by at least one processor, and the computer program is executed by at least one processor so that the at least one processor can implement the oblique photography data loading method of any embodiment of the present invention.
[0018] In a fourth aspect, an embodiment of the present invention further provides a storage medium comprising computer executable instructions, which, when executed by a computer processor, are used to execute the oblique photography data loading method of any embodiment of the present invention.
[0019] In a fifth aspect, an embodiment of the present invention further provides a computer program product, including a computer program, which, when executed by a processor, is used to execute the oblique photography data loading method of any embodiment of the present invention.
[0020] The embodiment of the present invention provides an oblique photography data loading method, device, equipment, medium and program product, which obtains oblique photography data; extracts buildings from the oblique photography data according to the preconfigured hierarchical building height correspondence, and stores the extracted loading content of each level; when receiving the viewing angle to be loaded, determines the target loading content according to the viewing angle to be loaded, the oblique photography data and the loading content of each level, and loads and displays the target loading content; wherein the hierarchical loading content is the data content corresponding to the observable buildings at different levels in the oblique photography data. By adopting the above technical solution, after obtaining the oblique photography data, firstly, according to the display requirements of the oblique photography data of urban districts and counties, and the correspondence between the level and the building height in the oblique photography data, complete the extraction and storage of the building location related information in the oblique photography data, and then when receiving the viewing angle to be loaded that needs to be loaded and displayed, the target loading content required to be loaded for the viewing angle to be loaded can be directly determined according to the hierarchical loading content and the oblique photography data. At the same time, since the level information is included during storage, the buildings of the corresponding level can be loaded directly when loading a perspective to be loaded, reducing the number of buildings loaded at a time, reducing the amount of loaded data, and improving loading efficiency.
[0021] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present application, nor is it intended to limit the scope of the present application. Other features of the present application will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0023] Figure 1 A flowchart of a method for loading oblique photography data provided in Embodiment 1 of the present invention;
[0024] Figure 2 A flowchart of a method for loading oblique photography data provided in Embodiment 2 of the present invention;
[0025] Figure 3 A schematic diagram of a process for determining building triangles in tile data according to the area and height of each triangle provided in the second embodiment of the present invention;
[0026] Figure 4A schematic diagram of a process for screening building triangles according to the shooting level of tile data and the pre-configured hierarchical building height correspondence provided in the second embodiment of the present invention to determine the hierarchical building triangles in the tile data;
[0027] Figure 5 A schematic diagram of the structure of an oblique photography data loading device provided in Embodiment 3 of the present invention;
[0028] Figure 6 This is a schematic structural diagram of an oblique photography data loading device provided in Embodiment 4 of the present invention. DETAILED DESCRIPTION
[0029] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.
[0030] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0031] Embodiment 1
[0032] Figure 1 This is a flowchart of a method for loading oblique photography data provided in the first embodiment of the present invention. The embodiment of the present invention can be applied to the case of smoothly loading oblique photography data calculated at the TB level in urban areas and counties. The method can be executed by an oblique photography data loading device, which can be implemented by software and / or hardware, and the oblique photography data loading device can be configured in an oblique photography data loading device. The optional oblique photography data loading device can be an electronic device, which can be a notebook, a desktop computer, a smart tablet, etc., and the embodiment of the present invention does not limit this.
[0033] like Figure 1As shown, an oblique photography data loading method provided by an embodiment of the present invention specifically includes the following steps:
[0034] S101, obtaining oblique photography data.
[0035] In this embodiment, the oblique photography data can be specifically understood as aerial photographs obtained by photographing ground objects that need to be presented in three dimensions using a flying platform equipped with multiple lens cameras, and the aerial photographs are imported into corresponding professional software for production processing to obtain data.
[0036] Specifically, when it is necessary to load a ground object for three-dimensional presentation, an aerial photograph of the ground object taken by a flying platform equipped with a multi-lens camera will be obtained first, and then the aerial photograph will be processed by professional software to obtain oblique photography data.
[0037] S102: extracting buildings from the oblique photography data according to the pre-configured hierarchical building height correspondence, and storing the extracted loading contents of each level.
[0038] In this embodiment, the level can be specifically understood as a level of detail (LOD) determined according to the distance between the observer and the object, which is used to indicate the observer's ability to observe details of the object. The level in the embodiment of the present invention can be determined according to the distance between the camera and the object being photographed on the ground. It can be understood that the lower the level, the farther the distance between the camera and the object being photographed, and the less detail information that can be observed, that is, only larger objects and taller buildings on the ground can be observed. The hierarchical building height correspondence can be specifically understood as the correspondence between the shooting data corresponding to different levels and the lowest building height that can be clearly observed in the shooting data. The hierarchical loading content can be specifically understood as the data content corresponding to the observable buildings at different levels in the oblique photography data.
[0039] Specifically, the oblique photography data is divided into different levels of data according to different shooting heights, and then the possible buildings in the different levels of data are extracted, and the extracted buildings are screened according to the preconfigured level-to-level building height correspondence, and only the buildings that can be clearly observed at this level are retained. Then, the data corresponding to the buildings that can be observed at this level in the oblique photography data can be determined as the level loading content corresponding to this level, and the level loading content can be directly stored in the database or converted into a form recognizable by the web interface and stored in the database as new level loading content. Alternatively, the buildings can be extracted directly based on the oblique photography data, and then based on the different levels of data contained in the oblique photography data, the buildings corresponding to each level of data are screened according to the pre-configured level-by-level building height correspondence relationship, and for each level, only the buildings that can be clearly observed at that level are retained, and the data corresponding to the screened buildings in the oblique photography data are determined as the level loading content corresponding to the level, and the level loading content is directly stored in the database or converted into a form recognizable by the web interface and then stored in the database as new level loading content.
[0040] In an embodiment of the present invention, the oblique photography data is pre-determined and stored according to the location of the building and the hierarchical loading content required to display the building at the corresponding levels of different viewing angles, so that the hierarchical division and preservation are realized in the storage process, and the loading of observable buildings at different levels can be directly realized in the subsequent loading process, thereby reducing the amount of data processing in the loading process and improving the loading efficiency.
[0041] S103: upon receiving the viewing angle to be loaded, determining target loading content according to the viewing angle to be loaded, the oblique photography data and the loading content at each level, and loading and displaying the target loading content.
[0042] In this embodiment, the viewing angle to be loaded can be specifically understood as information provided by the user, including the observation distance requirement for the display object corresponding to the oblique photography data. The target loading content can be specifically understood as the data content that needs to be loaded and displayed in the oblique photography data under the viewing angle to be loaded.
[0043] Specifically, when the user needs to view the three-dimensional form of a ground object, the viewing angle to be loaded, which is determined based on its own observation distance requirements, will be input into the oblique photography data loading device. The oblique photography data loading device will then directly determine or process the oblique photography data based on the observation distance requirements contained in the viewing angle to be loaded to obtain the target loading content, or determine the target loading content to be displayed based on the loading contents at each level, and load and display the target loading content on the user-facing interface after rendering.
[0044] It is understandable that the target loading content determined in the embodiment of the present invention may be data content in the same format as the oblique photography data, or data content that can be directly rendered and displayed and can be recognized by a web interface. When loading and displaying the target loading content, the target loading content needs to be converted into a format that can be rendered and displayed, and then loaded and displayed on the user-oriented interface through rendering processing.
[0045] The technical solution of this embodiment is to obtain oblique photography data; extract buildings from the oblique photography data according to the pre-configured hierarchical building height correspondence, and store the extracted loading contents of each level; when receiving the view angle to be loaded, determine the target loading content according to the view angle to be loaded, the oblique photography data and the loading contents of each level, and load and display the target loading content. By adopting the above technical solution, after obtaining the oblique photography data, firstly, according to the display requirements of the oblique photography data of urban districts and counties, and the correspondence between the level and the building height in the oblique photography data, complete the extraction and storage of the relevant information of the building location in the oblique photography data, and then when receiving the view angle to be loaded and displayed, the target loading content required to be loaded by the view angle to be loaded can be directly determined according to the level loading content and the oblique photography data. At the same time, because the level information is included when storing, the corresponding level of buildings can be directly loaded when loading for a view angle to be loaded, reducing the number of buildings loaded at a single time, reducing the amount of loaded data, and improving the loading efficiency.
[0046] Embodiment 2
[0047] Figure 2A flowchart of a method for loading oblique photography data provided in the second embodiment of the present invention is further optimized on the basis of the above-mentioned optional technical solutions. By dividing the oblique photography data into multiple tile data, and completing the determination of the triangular faces of buildings that may exist in the tile data based on the area and height of different triangular faces in the tile data, and then based on the shooting level of the tile data and the preset corresponding relationship, the determined building triangular faces are screened twice, reducing the amount of information contained in each tile data in the corresponding hierarchical building information, so that when the hierarchical loading content is subsequently determined based on the hierarchical building information, the amount of data contained in each hierarchical loading content is reduced, and then when the target loading content is determined based on the loading content of each hierarchical level, the amount of data corresponding to the target loading content is reduced, reducing the overall loading data amount in the loading process for the perspective to be loaded, and improving the loading efficiency. At the same time, the loading of oblique photography data is divided into loading of different perspectives according to different observation distances, so that only orthophotos need to be displayed at the farthest distance, and fast loading of the first screen is realized; and at medium and long distances, the target hierarchical loading content is directly determined by the pre-stored hierarchical loading content in full consideration of the requirements of different perspective levels. At the same time, when displaying, the orthophoto is superimposed with the target level loaded content to make the overall display more natural.
[0048] like Figure 2 As shown, an oblique photography data loading method provided by an embodiment of the present invention specifically includes the following steps:
[0049] S201, obtaining oblique photography data.
[0050] S202 : for each tile data in the oblique photography data, determine the triangle area and triangle height of each triangle in the tile data according to a set of triangle vertices in the tile data.
[0051] In this embodiment, tile data can be specifically understood as the entire model data collected during oblique photogrammetry and 3D modeling, that is, oblique photogrammetry data is divided into multiple small blocks, where each small block corresponds to data. For example, tile data in oblique photogrammetry data is usually stored according to a certain organizational structure, such as storing divided tile data in the Data directory, each tile data is stored in an LOD folder, and all data in the same tile data have the same level of detail (LOD). In the embodiment of the present invention, each tile data can be an open scene Figure 2 The file may be a file in the OpenScene Graph Binary (OSGB) format, or may be other files for storing data belonging to the same LOD level, which is not limited in the embodiment of the present invention.
[0052] Specifically, since each tile data in the oblique photography data is composed of multiple data points within its corresponding acquisition range, each data point contains information such as coordinate position and height. And since when constructing a three-dimensional model, the triangular face formed by three non-collinear points in the tile data will be used as the smallest unit of the model surface, at this time, the data points of each three-point different line in the tile data can be used as the triangular face vertices to obtain the corresponding triangular face vertex set, and multiple triangular faces can be constructed in the tile data based on each triangular face vertex. For each triangular face, the triangular face area of the triangular face can be determined based on the coordinate position of the three triangular face vertices of the triangular face and the triangle area formula, and the average height of the three triangular face vertices can be determined as the triangular face height of the triangular face.
[0053] S203: Determine the building triangles in the tile data according to the areas and heights of the triangles.
[0054] Specifically, in order to extract the triangular faces of possible buildings in the tile data, there is often a certain height difference between the top and bottom of the building. In order to reduce the error as much as possible, according to the triangular face area of each triangular face in the tile data, a part of the triangular faces with higher triangular face heights can be extracted according to the triangular face area, and a maximum height for determining the top height of the building can be determined according to the height of the extracted triangular faces; at the same time, a part of the triangular faces with lower triangular face heights can be extracted according to the triangular face area, and a minimum height for determining the bottom height of the building can be determined according to the height of the extracted triangular faces, and the triangular faces with triangular face heights between the minimum height and the maximum height can be determined as the building triangular faces where the building may exist.
[0055] In an embodiment of the present invention, when determining the screening criteria for the top and bottom heights of buildings, the highest and lowest heights for screening the top and bottom of buildings are comprehensively determined by extracting higher and lower triangular faces from each triangular facet based on the triangular facet area, rather than simply selecting the maximum height or minimum height from each triangular facet as the screening basis for the top and bottom heights of buildings. This increases the probability that a building actually exists in the screened building triangular faces, thereby improving the accuracy of determining the building triangular faces.
[0056] Optional, Figure 3 A schematic diagram of a process for determining building triangles in tile data according to the area and height of each triangle provided in the second embodiment of the present invention is shown in FIG. Figure 3 As shown, the specific steps include:
[0057] S2031. Determine the total area of the triangles according to the area of each triangle.
[0058] Specifically, the sum of the areas of the triangles is determined as the total area of the triangles in the tile data.
[0059] S2032, extracting each triangular facet in order of triangular facet height from low to high, and when the ratio of the extracted area of the extracted triangular facets to the total area of the triangular facets is greater than a preset ratio threshold, determining the triangular facet height of the last extracted triangular facet as the lowest height.
[0060] In this embodiment, the preset ratio threshold value can be specifically understood as a ratio value that is preset according to actual conditions and is used to improve the accuracy of determining the top and bottom screening heights of the building.
[0061] Specifically, each triangle is sorted in the order of triangle height from high to low or from low to high, and after sorting, each triangle is extracted in the order of triangle height from low to high. During the extraction process, the area sum of the extracted triangles is calculated in real time to obtain the extracted area sum of each extracted triangle. When the ratio of the extracted area sum to the total area of the triangles is greater than a preset ratio threshold, the extraction of the triangles is stopped, and the triangle height of the last extracted triangle is determined as the minimum height for screening the bottom surface of the building.
[0062] S2033, extracting each triangular face in descending order of triangular face height, and when the ratio of the extracted area of the extracted triangular face to the total area of the triangular face is greater than a preset ratio threshold, determining the triangular face height of the last extracted triangular face as the highest height.
[0063] Specifically, each triangle is sorted in the order of triangle height from high to low or from low to high, and after sorting, each triangle is extracted in the order of triangle height from high to low. During the extraction process, the area and area of the extracted triangles are calculated in real time to obtain the extracted area sum of each extracted triangle. When the ratio of the extracted area sum to the total area of the triangles is greater than a preset ratio threshold, the extraction of the triangles is stopped, and the triangle height of the last extracted triangle is determined as the highest height for screening the top surface of the building.
[0064] S2034. If the lowest height and the highest height belong to the same plane, determine the lowest height of the surrounding tile data corresponding to the tile data as the lowest height of the tile data; otherwise, keep the lowest height of the tile data unchanged.
[0065] Specifically, since the area corresponding to the tile data may be all roofs of buildings or all bottoms of buildings, the expression of both is that the determined minimum height and maximum height of the tile data are consistent or have a small difference, that is, the expression is that the minimum height and the maximum height belong to the same plane. When this happens, the tile data located around the tile data may contain the bottom of the building corresponding to the current tile data. At this time, the corresponding surrounding tile data can be determined based on the position of the current corresponding tile data in the oblique photography data, and the minimum height in the surrounding tile data is determined as the minimum height of the tile data, so as to ensure that the current corresponding tile data can fully and accurately determine the minimum height regardless of whether it fully covers the roof of the building. When the minimum height and the maximum height do not belong to the same plane, there is no need to modify the currently determined minimum height, and it can be kept unchanged.
[0066] Optionally, the surrounding tile data corresponding to the tile data may be data corresponding to four tiles located above, below, left and right of the tile data.
[0067] S2035. Determine the triangles whose heights are between the lowest height and the highest height as the building triangles in the tile data.
[0068] Specifically, each triangular face is screened based on the minimum height and the maximum height, and a triangular face whose height is within a closed set formed by the minimum height and the maximum height is determined as a building triangular face in the tile data.
[0069] In an embodiment of the present invention, the possible height range of a building is determined by area ratio. After the highest height and the lowest height are determined, in order to avoid misjudgment of the top and bottom of the building due to the entire area covered by the triangle surface being the roof, the lowest height is re-determined based on the surrounding tile data corresponding to the tile data, thereby improving the accuracy of identifying the triangle surfaces of the building, and further improving the accuracy of the determined hierarchical building information.
[0070] S204: Screen the building triangles according to the shooting level of the tile data and the pre-configured hierarchical building height correspondence to determine the hierarchical building triangles in the tile data.
[0071] In this embodiment, the shooting level can be specifically understood as the LOD level determined according to the distance between the tile data and the object being shot during shooting.
[0072] Specifically, since the LOD levels corresponding to the triangles in the same tile data are consistent, it can be considered that the LOD level of the building triangles corresponding to the tile data is also the shooting level of the tile data. According to the pre-configured hierarchical building height correspondence, the lowest height of the building that can be clearly loaded and displayed at different LOD levels can be determined. At this time, the building triangles in the tile data can be screened based on the lowest height of the building. It is considered that the building triangles with a triangle height less than the lowest height of the building cannot be clearly displayed when loading the shooting level of the tile data, that is, there is no need to display them when loading the shooting level of the tile data. At this time, the building triangles with a triangle height greater than or equal to the lowest height of the above-mentioned building can be determined as hierarchical building triangles in the tile data, that is, there are building triangles corresponding to the shooting level of the tile data that need to be loaded.
[0073] Optional, Figure 4 A schematic diagram of a process for screening building triangles according to the shooting level of tile data and the pre-configured hierarchical building height correspondence provided in the second embodiment of the present invention to determine the hierarchical building triangles in the tile data, such as Figure 4 As shown, the specific steps include:
[0074] S2041. Determine a building height threshold corresponding to the tile data according to the shooting level of the tile data and a pre-configured corresponding relationship between the level building heights.
[0075] In this embodiment, the building height threshold may be specifically understood as corresponding to the shooting level, and being the lowest height of a building that can be clearly loaded and displayed at the shooting level.
[0076] S2042: Determine the building triangle faces whose triangle heights are greater than the building height threshold as hierarchical building triangle faces in the tile data.
[0077] In an embodiment of the present invention, the height of the building required to be loaded is determined according to the shooting levels of different tile data, that is, the clarity of different tile data, that is, tile data with lower clarity will only load and display buildings with higher heights, thereby reducing the number of buildings that need to be displayed in the same tile data, further reducing the number of hierarchical building triangles, reducing the overall amount of loaded data, and improving loading efficiency.
[0078] S205 , projecting the triangular faces of the buildings at each level onto a two-dimensional plane, and determining the obtained projection information as the hierarchical building information of the shooting level corresponding to the tile data for storage.
[0079] In this embodiment, the hierarchical building information may be specifically understood as information indicating the projection positions of buildings observable at different levels on the ground.
[0080] Specifically, since the triangular faces of each level of building are still data in three-dimensional space, and the actual location of the building on the ground is the projection of its corresponding three-dimensional space location, in order to reduce the amount of pre-stored data, the triangular faces of each level of building can be projected onto the two-dimensional plane formed by the ground, and the obtained projection information is determined as the level building information of the shooting level corresponding to the tile data. After the level building information is determined for each tile data, the level building information will be stored in the database for subsequent extraction.
[0081] Exemplarily, the database used to store hierarchical building information in the embodiment of the present invention may be a sqlite database or other types of databases, and the embodiment of the present invention is not limited to this.
[0082] S206 , for each level of building information, each tile data in the oblique photography data is screened by the level of building information, the level loading content corresponding to the level of building information is determined, and the level loading content is stored.
[0083] Specifically, since the hierarchical building information can be considered as the two-dimensional plane projection information that can clearly display the building at the corresponding level with the ground as the projection plane, in order to clearly display the buildings at different levels in the three-dimensional space, the required display data is determined in advance. For each level of building information, each tile data in the oblique photography data can be filtered through the hierarchical building information, that is, only the triangular faces in the tile data that are projected within the two-dimensional plane projection corresponding to the building information of this level are retained. After traversing all the tile data in the oblique photography data, the data content composed of all the retained triangular faces is determined as the hierarchical loading content corresponding to the building information of this level, and the hierarchical loading content is stored.
[0084] It is understandable that the storage paths of the hierarchical loading content and the hierarchical building information are not the same, and the database types in which the two are stored may be the same or different, which is not limited in the embodiment of the present invention.
[0085] S207 . When the viewing angle to be loaded is received, target loading content is determined according to the viewing angle to be loaded, the oblique photography data and the loading content at each level, and the target loading content is loaded and displayed.
[0086] The viewing angles to be loaded include at least a first viewing angle and a second viewing angle, and the observation distance of the second viewing angle is smaller than the observation distance of the first viewing angle.
[0087] In this embodiment, the first viewing angle can be specifically understood as an ultra-long-distance viewing angle for overall observation of the area corresponding to the oblique photography data. The second viewing angle can be specifically understood as a medium-long-distance viewing angle for overall and detailed observation of the area corresponding to the oblique photography data, which is closer than the first viewing angle.
[0088] Accordingly, the target loading content is determined according to the viewing angle to be loaded, the oblique photography data and the loading content at each level, including:
[0089] 1) If the perspective to be loaded is the first perspective, the orthophoto corresponding to the oblique photography data is determined as the target loading content;
[0090] 2) If the perspective to be loaded is the second perspective, the target level loading content is determined from the loading content of each level according to the perspective level of the second perspective, and the target level loading content is superimposed with the orthophoto to determine as the target loading content.
[0091] In this embodiment, the orthophoto can be specifically understood as an image observed vertically downward from a high altitude by projecting the oblique photography data pixel by pixel vertically downward, and then clipping it according to the image mosaicking and the range of the map. It is understandable that the orthophoto can be determined based on the oblique photography data, or it can be directly determined based on the aerial image before the oblique photography data is processed, and the embodiment of the present invention does not limit this. The viewing angle level can be specifically understood as the level that the user needs to observe. The target level loading content can be specifically understood as the level loading content that needs to be loaded and corresponds to the shooting level.
[0092] Specifically, when the perspective to be loaded is received, if the perspective to be loaded is the first perspective, it can be considered that the user only needs to make an overall observation of the area corresponding to the oblique photography data. At this time, the orthophoto corresponding to the oblique photography data can be directly used as the target loading content to achieve fast loading of the first screen; if the perspective to be loaded is the second perspective, it can be considered that the user needs to make an overall and detailed observation of the area corresponding to the oblique photography data, that is, a more detailed observation relative to the first perspective is required, but there is no need to make an observation that includes all the detail information. At this time, according to the perspective level given by the user when giving the second perspective, the level loading content corresponding to the perspective level can be selected from the loading contents of each level as the target level loading content, and the target level loading content can be superimposed with the orthophoto corresponding to the oblique photography data as the target loading content.
[0093] In the embodiment of the present invention, the loading of oblique photography data is divided into loading of different perspectives according to different observation distances, so that at the farthest distance, only orthophotos need to be displayed to achieve fast loading of the first screen; and at medium and long distances, the target level loading content is directly determined from the pre-stored level loading content by fully considering the requirements of different perspective levels. At the same time, when displaying, the orthophotos are superimposed with the target level loading content for display, making the overall display more natural.
[0094] Optionally, the perspective to be loaded also includes a third perspective, and the observation distance of the third perspective is smaller than the observation distance of the second perspective.
[0095] In the embodiment of the present invention, the third viewing angle may be specifically understood as a close-range viewing angle for performing detailed observation of the area corresponding to the oblique photography data, and the corresponding observation distance should be smaller than the observation distance of the second viewing angle.
[0096] Accordingly, the target loading content is determined according to the viewing angle to be loaded, the oblique photography data and the loading content at each level, and further includes:
[0097] If the perspective to be loaded is the third perspective, the oblique photography data is lightweight processed and then determined as the target loading content.
[0098] Specifically, when the perspective to be loaded is received, if the perspective to be loaded is the third perspective, it can be considered that the user needs to conduct a close observation of the area corresponding to the oblique photography data containing rich detail information. At this time, in order to reduce the difficulty of loading the oblique photography data, the oblique photography data must first be lightweight processed, and the oblique photography data with reduced data volume after lightweight processing must be determined as the target loading content.
[0099] Exemplarily, the following methods can be used for lightweight processing of oblique photography data, such as merging OSGB nodes to reduce the number of tile requests and rendering scheduling times, and improve loading speed; merging multiple index files into one index file to reduce the number of requests; merging multiple tile materials to reduce the number of rendering scheduling times and improve rendering performance; using the QEM mesh simplification algorithm for geometric simplification; using the tile material compression algorithm to reduce GPU memory consumption, and the Draco compression algorithm to reduce data transmission volume, etc.
[0100] It should be made clear that, experimentally verified, after processing using the above method, it is possible to achieve a frame rate of more than 30fps at any viewing angle for TB-level oblique photography data.
[0101] The technical solution of this embodiment is to divide the oblique photography data into multiple tile data, and complete the determination of the triangular faces of the building that may exist in the tile data based on the area and height of different triangular faces in the tile data, and then perform secondary screening on the determined building triangular faces based on the shooting level of the tile data and the preset corresponding relationship, thereby reducing the amount of information contained in each tile data in the corresponding hierarchical building information, so that when the hierarchical loading content is subsequently determined based on the hierarchical building information, the amount of data in each hierarchical loading content is reduced, and then when the target loading content is determined based on the loading content of each hierarchical level, the amount of data corresponding to the target loading content is reduced, and the overall loading data amount in the loading process for the perspective to be loaded is reduced, thereby improving the loading efficiency. At the same time, the loading of oblique photography data is divided into loading of different perspectives according to different observation distances, so that only the orthophoto image needs to be displayed at the farthest distance, and the first screen is quickly loaded; and at medium and long distances, the target hierarchical loading content is directly determined by the pre-stored hierarchical loading content in full consideration of the requirements of different perspective levels. At the same time, when displaying, the orthophoto image is superimposed with the target hierarchical loading content for display, so that the overall display is more natural.
[0102] Embodiment 3
[0103] Figure 5 A schematic diagram of the structure of an oblique photography data loading device provided in the third embodiment of the present invention is shown in FIG. Figure 5 As shown, the oblique photography data loading device includes a data acquisition module 31, a building extraction module 32 and a content loading module 33.
[0104] Among them, the data acquisition module 31 is used to acquire oblique photography data; the building extraction module 32 is used to extract buildings from the oblique photography data according to the pre-configured hierarchical building height correspondence, and store the extracted loading content of each level; the content loading module 33 is used to determine the target loading content according to the viewing angle to be loaded, the oblique photography data and the loading content of each level when receiving the viewing angle to be loaded, and load and display the target loading content; wherein the hierarchical loading content is the data content corresponding to the observable buildings at different levels in the oblique photography data.
[0105] The technical solution of the embodiment of the present invention, after obtaining the oblique photography data, firstly extracts and stores the information related to the building location in the oblique photography data according to the display requirements of the oblique photography data of urban districts and counties, and the correspondence between the level and the building height in the oblique photography data, and then, when receiving the view angle to be loaded and displayed, the target loading content to be loaded for the view angle to be loaded can be directly determined according to the level loading content and the oblique photography data. At the same time, because the level information is included when storing, the corresponding level of buildings can be directly loaded when loading for a view angle to be loaded, reducing the number of buildings loaded at a single time, reducing the amount of loaded data, and improving loading efficiency.
[0106] Optionally, the building extraction module 32 includes:
[0107] The area height determination unit is used to determine the triangle area and triangle height of each triangle in the tile data according to the triangle vertex set in the tile data for each tile data in the oblique photography data.
[0108] The building triangle face determination unit is used to determine the building triangle face in the tile data according to the area and height of each triangle face.
[0109] The hierarchical triangle face determination unit is used to screen the building triangle faces according to the shooting level of the tile data and the pre-configured hierarchical building height correspondence relationship to determine the hierarchical building triangle faces in the tile data.
[0110] The building information determination unit is used to project the triangular faces of each level of the building onto a two-dimensional plane, and determine the obtained projection information as the level building information of the shooting level corresponding to the tile data for storage.
[0111] The hierarchical content determination unit screens each tile data in the oblique photography data according to the hierarchical building information for each hierarchical building information, determines the hierarchical loading content corresponding to the hierarchical building information, and stores the hierarchical loading content.
[0112] Optionally, a building triangle determination unit is used to:
[0113] Determine the total area of the triangles based on the area of each triangle;
[0114] Extracting each triangular face in the order of triangular face height from low to high, when the ratio of the extracted area of the extracted triangular face to the total area of the triangular face is greater than a preset ratio threshold, determining the triangular face height of the last extracted triangular face as the lowest height;
[0115] Extracting each triangular face in descending order of triangular face height, when the ratio of the extracted area of the extracted triangular face to the total area of the triangular face is greater than a preset ratio threshold, determining the triangular face height of the last extracted triangular face as the highest height;
[0116] If the lowest height and the highest height belong to the same plane, the lowest height of the surrounding tile data corresponding to the tile data is determined as the lowest height of the tile data; otherwise, the lowest height of the tile data is kept unchanged;
[0117] The triangle faces whose heights are between the minimum height and the maximum height are determined as the building triangle faces in the tile data.
[0118] Optionally, a hierarchical triangle determination unit is used to:
[0119] Determine the building height threshold corresponding to the tile data according to the shooting level of the tile data and the pre-configured level building height correspondence relationship;
[0120] Among the building triangles, the building triangles whose triangle heights are greater than the building height threshold are determined as the hierarchical building triangles in the tile data.
[0121] Optionally, the perspectives to be loaded include at least a first perspective and a second perspective, and an observation distance of the second perspective is smaller than an observation distance of the first perspective.
[0122] Accordingly, the content loading module 33 is specifically used for:
[0123] When the perspective to be loaded is received, if the perspective to be loaded is the first perspective, the orthophoto corresponding to the oblique photography data is determined as the target loading content; if the perspective to be loaded is the second perspective, the target level loading content is determined from the loading contents of each level according to the perspective level of the second perspective, and the target level loading content is superimposed with the orthophoto to be determined as the target loading content.
[0124] Optionally, the perspective to be loaded also includes a third perspective, and the observation distance of the third perspective is smaller than the observation distance of the second perspective.
[0125] Correspondingly, the content loading module 33 is also used for:
[0126] When the perspective to be loaded is received, if the perspective to be loaded is the third perspective, the oblique photography data is lightweight processed and then determined as the target loading content.
[0127] The oblique photography data loading device provided in the embodiment of the present invention can execute the oblique photography data loading method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0128] Embodiment 4
[0129] Figure 6 A schematic diagram of the structure of an oblique photography data loading device provided for Embodiment 4 of the present invention. The oblique photography data loading device 40 may be intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The oblique photography data loading device 40 may also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.
[0130] like Figure 6 As shown, the oblique photography data loading device 40 includes at least one processor 41, and a memory connected to the at least one processor 41, such as a read-only memory (ROM) 42, a random access memory (RAM) 43, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 41 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 42 or the computer program loaded from the storage unit 48 to the random access memory (RAM) 43. Various programs and data required for the operation of the oblique photography data loading device 40 can also be stored in the RAM 43. The processor 41, the ROM 42, and the RAM 43 are connected to each other through a bus 44. An input / output (I / O) interface 45 is also connected to the bus 44.
[0131] Multiple components in the oblique photography data loading device 40 are connected to the I / O interface 45, including: an input unit 46, such as a keyboard, a mouse, etc.; an output unit 47, such as various types of displays, speakers, etc.; a storage unit 48, such as a disk, an optical disk, etc.; and a communication unit 49, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 49 allows the oblique photography data loading device 40 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0132] The processor 41 may be a variety of general and / or dedicated processing components with processing and computing capabilities. Some examples of the processor 41 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 41 executes the various methods and processes described above, such as the tilt photography data loading method.
[0133] In some embodiments, the oblique photography data loading method may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 48. In some embodiments, part or all of the computer program may be loaded and / or installed on the oblique photography data loading device 40 via the ROM 42 and / or the communication unit 49. When the computer program is loaded into the RAM 43 and executed by the processor 41, one or more steps of the power distribution scheme determination method described above may be performed. Alternatively, in other embodiments, the processor 41 may be configured to execute the oblique photography data loading method in any other appropriate manner (e.g., by means of firmware).
[0134] Optionally, an embodiment of the present invention further provides a computer program product, including a computer program, which, when executed by a processor, implements the oblique photography data loading method provided by any embodiment of the present invention.
[0135] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0136] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0137] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0138] To provide interaction with a user, the systems and techniques described herein may be implemented on a power distribution scheme determining device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which a user can provide input to the power distribution scheme determining device. Other types of devices may also be used to provide interaction with a user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0139] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0140] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.
[0141] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.
[0142] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. A method for loading oblique photography data, characterized in that: include: Obtain oblique photography data; Extracting buildings from the oblique photography data according to a preconfigured hierarchical building height correspondence, and storing the extracted loading content of each level; When receiving the viewing angle to be loaded, determining the target loading content according to the viewing angle to be loaded, the oblique photography data and the loading content of each level, and loading and displaying the target loading content; The hierarchical loading content is the data content corresponding to the observable buildings at different levels in the oblique photography data.
2. The method for loading oblique photography data according to claim 1, characterized in that: The extracting of buildings from the oblique photography data according to the pre-configured hierarchical building height correspondence, and storing the extracted loading contents of each level, includes: For each tile data in the oblique photography data, determine the triangle surface area and triangle surface height of each triangle surface in the tile data according to a set of triangle surface vertices in the tile data; Determine the building triangles in the tile data according to the areas of the triangles and the heights of the triangles; Screening the building triangles according to the shooting level of the tile data and the pre-configured hierarchical building height correspondence to determine the hierarchical building triangles in the tile data; Projecting each of the hierarchical building triangles onto a two-dimensional plane, and determining the obtained projection information as hierarchical building information of the shooting level corresponding to the tile data for storage; For each of the hierarchical building information, each tile data in the oblique photography data is screened by the hierarchical building information, hierarchical loading content corresponding to the hierarchical building information is determined, and the hierarchical loading content is stored.
3. The method for loading oblique photography data according to claim 2, characterized in that: The determining of the building triangular faces in the tile data according to the areas of the triangular faces and the heights of the triangular faces comprises: Determine the total area of the triangular faces according to the areas of the triangular faces; Extracting the triangular faces in the order of the triangular face heights from low to high, and when the ratio of the extracted area of the extracted triangular faces to the total area of the triangular faces is greater than a preset ratio threshold, determining the triangular face height of the last extracted triangular face as the lowest height; Extracting the triangular faces in descending order of their heights, and when the ratio of the extracted area of the extracted triangular faces to the total area of the triangular faces is greater than the preset ratio threshold, determining the height of the last extracted triangular face as the highest height; If the lowest height and the highest height belong to the same plane, the lowest height of the surrounding tile data corresponding to the tile data is determined as the lowest height of the tile data; otherwise, the lowest height of the tile data is kept unchanged; The triangular face whose height is between the minimum height and the maximum height is determined as the building triangular face in the tile data.
4. The method for loading oblique photography data according to claim 2, characterized in that: The building triangular faces are screened according to the shooting level of the tile data and the pre-configured hierarchical building height correspondence relationship to determine the hierarchical building triangular faces in the tile data, including: Determining a building height threshold corresponding to the tile data according to the shooting level of the tile data and a preconfigured corresponding relationship between the level building heights; The building triangle faces whose triangle heights are greater than the building height threshold are determined as hierarchical building triangle faces in the tile data.
5. The method for loading oblique photography data according to claim 1, characterized in that: The viewing angles to be loaded include at least a first viewing angle and a second viewing angle, and the observation distance of the second viewing angle is smaller than the observation distance of the first viewing angle; The determining of target loading content according to the viewing angle to be loaded, the oblique photography data and each level of loading content includes: If the perspective to be loaded is the first perspective, determining the orthophoto corresponding to the oblique photography data as the target loading content; If the perspective to be loaded is the second perspective, the target level loading content is determined from the level loading content according to the perspective level of the second perspective, and the target level loading content is determined as the target loading content after being superimposed with the orthophoto.
6. The method for loading oblique photography data according to claim 5, characterized in that: The viewing angle to be loaded further includes a third viewing angle, and the observation distance of the third viewing angle is smaller than the observation distance of the second viewing angle; The step of determining the target loading content according to the viewing angle to be loaded, the oblique photography data and the loading content of each level also includes: If the perspective to be loaded is the third perspective, the oblique photography data is lightweight processed and then determined as the target loading content.
7. An oblique photography data loading device, characterized in that: include: A data acquisition module, used for acquiring oblique photography data; A building extraction module, used to extract buildings from the oblique photography data according to a pre-configured hierarchical building height correspondence, and store the extracted loading content of each level; A content loading module, configured to, upon receiving a viewing angle to be loaded, determine a target loading content according to the viewing angle to be loaded, the oblique photography data and each level of loading content, and load and display the target loading content; The hierarchical loading content is the data content corresponding to the observable buildings at different levels in the oblique photography data.
8. An oblique photography data loading device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the oblique photography data loading method according to any one of claims 1 to 6.
9. A storage medium containing computer executable instructions, characterized in that: When the computer executable instructions are executed by a computer processor, they are used to execute the oblique photography data loading method according to any one of claims 1 to 6.
10. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements the method for loading oblique photography data according to any one of claims 1 to 6.