A method, device, and readable storage medium for multi-perspective display of project models

By automatically determining and obtaining the high-altitude shooting position of the project's three-dimensional model and generating multi-view rendering pictures or animations, the problem of time-consuming adjustment of camera positions in the prior art is solved, and the rendering efficiency and quality are improved.

CN115134529BActive Publication Date: 2025-06-10GLODON CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202210763330.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-29
Publication Date
2025-06-10
Estimated Expiration
2042-06-29

AI Technical Summary

Technical Problem

In the prior art, designers need to manually adjust camera position and perspective to generate multi-view rendering results for project presentation, which consumes a lot of time and has high requirements for designers' business capabilities and software operation capabilities.

Method used

By obtaining the project's three-dimensional model and determining the outer bounding box, multiple high-altitude shooting positions are automatically determined, and high-altitude shooting pictures are obtained based on these positions to form rendered pictures or animations, so as to automatically generate multi-view rendering results.

Benefits of technology

Reduces time for designers to manually adjust camera position and keyframes, reduces operational difficulty, saves designers working time, and improves the quality of rendering results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115134529B_ABST
    Figure CN115134529B_ABST
Patent Text Reader

Abstract

The present invention discloses a method, device and readable storage medium for multi-perspective display of a project model. The method includes: obtaining a three-dimensional model of the project and determining an outer bounding box for wrapping preset components in the three-dimensional model of the project; determining a plurality of high-altitude shooting positions for shooting the three-dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box, and setting the shooting angle at each high-altitude shooting position to be directed towards the center point of the outer bounding box; sequentially traversing each high-altitude shooting position, and at the currently traversed target high-altitude shooting position, obtaining a high-altitude shooting image of the three-dimensional model of the project according to the shooting angle at the target high-altitude shooting position; sending a rendering picture formed according to all the high-altitude shooting images as a rendering result to a preset terminal; the present invention can automatically generate a multi-perspective rendering result for project display based on the three-dimensional model of the project.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of computer-aided design, and particularly relates to a method, device and readable storage medium for multi-view displaying of project models. Background Art

[0002] Before a construction enterprise constructs a building project, it will create a BIM model of the building project to plan the subsequent construction; after the BIM model is created, it is also necessary to render the BIM model to comprehensively display the building project through the rendered pictures or animations, and use the rendering results for the disclosure during actual construction, the display of meeting discussions, as well as BIM bidding and award applications, etc. Currently, the rendering methods for BIM models include: 1) manually adjusting the position and perspective of the camera used to capture the BIM model image to obtain a suitable position that meets the business requirements, and performing a screenshot operation or scene shooting at this suitable position to obtain a scene image for rendering; 2) manually adjusting the position and perspective of the camera used to capture the BIM model image to obtain a suitable position that meets the business requirements, and using the scene image captured at this suitable position as an animation key frame, repeatedly performing the above operations to obtain multiple animation key frames, and finally forming a rendered animation by adjusting the order and interval time between each animation key frame. Currently, whether generating a rendered picture or a rendered animation, designers need to manually adjust the position and perspective of the camera in the BIM model to a suitable position that meets the business requirements, so as to generate a scene image or an animation key frame at this suitable position, and then further generate a rendered picture or a rendered animation. Therefore, it has relatively high requirements for the business capabilities and software operation capabilities of designers; in addition, when a large number of scene images and animation key frames need to be generated, a large number of repeated operations are required, consuming a lot of time.

[0003] In summary, how to automatically generate multi-view rendering results for project display based on the BIM model has become a technical problem that needs to be urgently solved by those skilled in the art. Summary of the Invention

[0004] The purpose of the present invention is to provide a method, device and readable storage medium for multi-view displaying of project models, which can automatically generate multi-view rendering results for project display based on the project three-dimensional model.

[0005] According to one aspect of the present invention, a method for multi-view displaying of project models is provided, and the method includes:

[0006] Obtain a project three-dimensional model, and determine an outer bounding box for wrapping preset components in the project three-dimensional model;

[0007] Determine a plurality of high-altitude shooting positions for shooting the three-dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box, and set the shooting angle at each high-altitude shooting position to face the center point of the outer bounding box;

[0008] Traverse each high-altitude shooting position in sequence, and at the currently traversed target high-altitude shooting position, obtain the high-altitude shooting image of the three-dimensional model of the project according to the shooting angle at the target high-altitude shooting position;

[0009] Send the rendered image formed according to all high-altitude shooting images to a preset terminal as the rendering result, or send the rendered animation formed according to all high-altitude shooting images to the preset terminal.

[0010] Optionally, before determining a plurality of high-altitude shooting positions for shooting the three-dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box, the method further includes:

[0011] Obtain the morphological parameters of each preset component in the outer bounding box, and set the preset component whose morphological parameters meet the preset parameter conditions as a tall component;

[0012] Determine a concentrated area of tall components in the outer bounding box according to the distribution of all tall components;

[0013] Expand the four sides of the top surface of the outer bounding box outward by a preset distance value respectively to form a closed virtual frame; wherein, the top surface of the outer bounding box is coplanar with the virtual frame;

[0014] Calculate the distance values from the center point of the concentrated area of tall components to each side of the virtual frame respectively;

[0015] In the virtual frame, set the side corresponding to the minimum distance value as the first side, the side corresponding to the second smallest distance value as the second side, the opposite side of the first side as the third side, and the opposite side of the second side as the fourth side.

[0016] Optionally, the determining a plurality of high-altitude shooting positions for shooting the three-dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box includes:

[0017] When the rendering result is a rendered image, set the midpoint positions of the second side, the third side, and the fourth side as high-altitude shooting positions, and set the two endpoint positions of the third side as high-altitude shooting positions.

[0018] Optionally, the determining a plurality of high-altitude shooting positions for shooting the three-dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box includes:

[0019] When the rendering result is an animated rendering, the intersection point of the second side and the third side is used as both the second high-altitude shooting position and the sixth high-altitude shooting position at the same time;

[0020] A first high-altitude shooting position is determined on the line connecting the center point of the top surface of the outer bounding box and the second high-altitude shooting position; wherein, the first high-altitude shooting position is located outside the virtual frame and the first high-altitude shooting position is at a preset spacing value from the second high-altitude shooting position;

[0021] The intersection point of the third side and the fourth side is used as the third high-altitude shooting position, the intersection point of the fourth side and the first side is used as the fourth high-altitude shooting position, and the intersection point of the first side and the second side is used as the fifth high-altitude shooting position.

[0022] Optionally, after setting the shooting angle at each high-altitude shooting position to face the center point of the outer bounding box, the method further includes:

[0023] When the rendering result is a rendered picture, a preset business component is determined from the project three-dimensional model;

[0024] A detailed shooting position is set in front of the preset business component; wherein, the height of the detailed shooting position is lower than the height of the high-altitude shooting position;

[0025] Each detailed shooting position is traversed in sequence, and the shooting angle of the currently traversed detailed shooting position is set to face the next detailed shooting position.

[0026] Optionally, after setting the shooting angle at each high-altitude shooting position to face the center point of the outer bounding box, the method further includes:

[0027] When the rendering result is an animated rendering, the gate closest to the first high-altitude shooting position is determined from the project three-dimensional model, and the longest path starting from the gate is determined from the project three-dimensional model;

[0028] A set number of detailed shooting positions are sequentially selected on the longest path starting from the gate, and the height of each detailed shooting position is set to a preset height value lower than the height of the high-altitude shooting position;

[0029] Each detailed shooting position is traversed in sequence, and the shooting angle of the currently traversed detailed shooting position is set to face the next detailed shooting position.

[0030] Optionally, after successively traversing each high-altitude shooting position and obtaining the high-altitude shooting images of the project three-dimensional model at the currently traversed target high-altitude shooting position according to the shooting angle at the target high-altitude shooting position, the method further includes:

[0031] Successively traverse each detail shooting position and obtain the detail shooting images of the project three-dimensional model at the currently traversed target detail shooting position according to the shooting angle at the target detail shooting position.

[0032] Optionally, sending the rendering animation formed based on all the high-altitude shooting images to the preset terminal as the rendering result includes:

[0033] When the rendering result is a rendering animation, sort all the high-altitude shooting images in the order of the high-altitude shooting positions, and set the transition duration between the sorted high-altitude shooting images to a first duration to obtain a high-altitude animation;

[0034] Sort all the detail shooting images in the order of the detail shooting positions, and set the transition duration between the sorted detail shooting images to a second duration to obtain a detail animation; wherein, the first duration is less than the second duration;

[0035] Input the high-altitude animation and the detail animation into a rendering engine to obtain a rendering animation.

[0036] To achieve the above object, the present invention further provides a computer device, which specifically includes: a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, the steps of the method for multi-view displaying a project model introduced above are implemented.

[0037] To achieve the above object, the present invention further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method for multi-view displaying a project model introduced above are implemented.

[0038] The method, device, and readable storage medium for multi-view displaying a project model provided by the present invention, based on the created BIM model, automatically generate rendering pictures or rendering animations that meet business requirements according to information such as the types, layout positions, and dimensions of each component in the BIM model through built-in business rules, thereby avoiding designers manually adjusting the camera to a position that meets business requirements and releasing the designers' ability to master the business; at the same time, reducing the difficulty of designers operating the software and the operation process, and saving time for designers to manually adjust the camera position and key frames. Description of the Drawings

[0039] By reading the following detailed description of the preferred embodiments, various other advantages and benefits will become apparent to those of ordinary skill in the art. The drawings are only for the purpose of showing the preferred embodiments and are not considered to be a limitation of the present invention. Also, throughout the drawings, the same reference numerals are used to represent the same components. In the drawings:

[0040] Figure 1 An alternative flowchart of the method for multi-perspective display of a project model provided in the first embodiment;

[0041] Figure 2 The top view of the outer bounding box provided in the first embodiment;

[0042] Figure 3 The schematic diagram of the concentrated area of tall components and the virtual box provided in the first embodiment;

[0043] Figure 4 The schematic diagram of the aerial shooting position for forming a rendered picture provided in the first embodiment;

[0044] Figure 5 The schematic diagram of the aerial shooting position for forming a rendered animation provided in the first embodiment;

[0045] Figure 6 The schematic diagram of the detailed shooting position for forming a rendered animation provided in the first embodiment;

[0046] Figure 7 The complete flowchart of the method for multi-perspective display of a project model provided in the first embodiment;

[0047] Figure 8 An alternative structural schematic diagram of the device for multi-perspective display of a project model provided in the second embodiment;

[0048] Figure 9 An alternative hardware architecture schematic diagram of a computer device provided in the third embodiment. Detailed implementation manners

[0049] In order to make the objectives, technical solutions and advantages of the present invention clearer and more understandable, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the scope of protection of the present invention.

[0050] Embodiment 1

[0051] The embodiment of the present invention provides a method for multi-perspective display of a project model, as Figure 1As shown in the figure, the method specifically includes the following steps:

[0052] Step S101: Obtain a three-dimensional model of the project and determine an outer bounding box for wrapping preset components in the three-dimensional model of the project.

[0053] In practical applications, the three-dimensional model of the project can be a BIM model, which includes multiple components; the preset components can be civil engineering components, such as walls, beams, slabs, columns, or can also be site layout components, such as gates, fences, proposed buildings, tower cranes; in step S101, the position information and shape parameters (such as height) of each preset component can be obtained from the three-dimensional model of the project, and a three-dimensional outer bounding box that can completely wrap all preset components can be formed according to the position information and shape parameters of each preset component; in this embodiment, the outer bounding box is a parallelepiped, and subsequently, the shooting position for shooting the three-dimensional model of the project needs to be determined according to the outer bounding box. As Figure 2 shown, it is a top view of the formed outer bounding box.

[0054] Specifically, step S101 includes:

[0055] Step A1: Determine the model type of the three-dimensional model of the project and obtain the business rules corresponding to the model type;

[0056] Among them, the model types include: construction models (civil engineering models, site layout models, decoration models), municipal models;

[0057] Step A2: Determine the preset components included in the business rules from the three-dimensional model of the project;

[0058] For example, the civil engineering model forms an outer bounding box by identifying components such as walls, beams, slabs, columns, strip footings, raft footings, piles, and pile caps; the site layout model forms an outer bounding box by identifying components such as gates, fences, proposed buildings, tower cranes; the civil engineering model rendering mainly shows the entire building, so it is necessary to identify the building main body in the model and form an outer bounding box based on the building main body; while the site layout model mainly shows the overall layout and construction and living areas, so it is necessary to form an outer bounding box based on the whole.

[0059] Step A3: Obtain the position information and shape information of each preset component;

[0060] Step A4: Form an outer bounding box that completely wraps all preset components according to the position information and shape parameters of each preset component.

[0061] It should also be noted that in this embodiment, it is necessary to automatically generate multi-view rendering results for project display based on the project three-dimensional model; rendering is to use a rendering engine to fit and blend the material texture maps, lighting arrangements, etc. of the existing model with the model, and utilize the visual illusions of people regarding light and shadow, color, etc., so that the three-dimensional model can highlight the three-dimensional sense in the two-dimensional plane space and present a visual effect like a real object; in addition, the rendering results include two modes: rendering pictures and rendering animations. Among them, the rendering pictures are formed according to the pictures taken from various angles of the project three-dimensional model, and the rendering animations are obtained by taking the shooting pictures obtained from multiple angles as the key frames of each animation and sorting all the key frames of the animation in a certain order; one rendering picture corresponds to one shooting picture, and one rendering animation corresponds to multiple shooting pictures.

[0062] Step S102: Determine multiple high-altitude shooting positions for shooting the project three-dimensional model according to the position information of the four sides of the top surface of the outer bounding box, and set the shooting angle at each high-altitude shooting position to face the center point of the outer bounding box.

[0063] Among them, the high-altitude shooting position is a three-dimensional space coordinate (x, y, z), which is used to represent the placement position of the camera. The camera is used to shoot the project three-dimensional model at each determined high-altitude shooting position to obtain high-altitude shooting pictures from different perspectives.

[0064] Preferably, the high-altitude shooting positions are located on the four sides of the top surface of the outer bounding box; for example, one or more of the four vertices of the top surface of the outer bounding box are used as high-altitude shooting positions, and / or one or more of the four midpoints on the four sides of the top surface of the outer bounding box are used as high-altitude shooting positions.

[0065] In addition, from the perspective of actual business, in order to achieve better effects of rendering pictures or rendering animations, it is necessary to avoid the high-altitude shooting field of view being blocked by tall components; therefore, the high-altitude shooting positions should be arranged as far as possible on the side of the outer bounding box away from tall buildings; preferably, before step 102, it is necessary to first identify the sizes and heights of each preset component in the outer bounding box, and determine the area where the preset component with a large floor area and a high top elevation in the outer bounding box is located as the area that the high-altitude shooting position needs to stay away from.

[0066] Specifically, before the step S102, the method further includes:

[0067] Step B1: Obtain the morphological parameters of each preset component in the outer bounding box, and set the preset component whose morphological parameters meet the preset parameter conditions as a tall component;

[0068] Among them, the morphological parameters include: floor area and top elevation;

[0069] Step B2: Determine the concentrated area of tall components within the outer bounding box according to the distribution of all tall components;

[0070] Wherein, the ratio of the number of tall components in the concentrated area of tall components to the number of tall components in the outer bounding box is greater than a preset ratio threshold;

[0071] Preferably, the area where the tallest preset component in the outer bounding box is located can be set as the concentrated area of tall components, or the aggregated area with multiple tall components in the outer bounding box can be set as the concentrated area of tall components; The camera for shooting needs to move in the direction away from the concentrated area of tall components, so as to present a better shooting picture; As Figure 3 shown, it is a schematic diagram of the concentrated area of tall components;

[0072] Step B3: Expand the four sides of the top surface of the outer bounding box outward by a preset distance value respectively to form a closed virtual frame; wherein, the top surface of the outer bounding box and the virtual frame are coplanar;

[0073] In this embodiment, in order to better observe the project 3D model, a larger bounding box is generated outside the outer bounding box and within a certain range from it as the camera placement bounding box; As Figure 3 shown, it is a schematic diagram of the virtual frame;

[0074] Step B4: Calculate the distance values from the center point of the concentrated area of tall components to each side of the virtual frame respectively;

[0075] Step B5: In the virtual frame, set the side corresponding to the minimum distance value as the first side, the side corresponding to the second minimum distance value as the second side, the opposite side of the first side as the third side, and the opposite side of the second side as the fourth side;

[0076] The purpose of sorting each side in the virtual frame in the manner of Step B5 is to improve the priority of the shooting positions that are not blocked by tall components when setting the shooting positions subsequently, that is, to give priority to shooting the scene pictures with better perspectives.

[0077] Further, the determining multiple aerial shooting positions for shooting the project 3D model according to the position information of the four sides of the top surface of the outer bounding box in Step S102 specifically includes:

[0078] Step C1: When the rendering result is a rendered picture, set the midpoint positions of the second side, the third side, and the fourth side as the aerial shooting positions;

[0079] Step C2: Set the two endpoint positions of the third side as the aerial shooting positions.

[0080] As Figure 4 shown, it is a schematic diagram of the high-altitude shooting positions for forming the rendered pictures.

[0081] It should be noted that the multiple generated rendered pictures can be unordered, so only the respective high-altitude shooting positions need to be determined, and there is no need to sort the high-altitude shooting positions; in addition, since the height of the top surface of the outer bounding box is set according to the highest preset component within the outer bounding box, the height of each determined high-altitude shooting position is the height of the highest preset component within the outer bounding box.

[0082] Furthermore, in step S102, the determining of multiple high-altitude shooting positions for shooting the project 3D model according to the position information of the four sides of the top surface of the outer bounding box specifically includes:

[0083] Step D1: When the rendering result is a rendered animation, the intersection point of the second side and the third side is used as both the second high-altitude shooting position and the sixth high-altitude shooting position;

[0084] Step D2: Determine the first high-altitude shooting position on the line connecting the center point of the top surface of the outer bounding box and the second high-altitude shooting position; wherein, the first high-altitude shooting position is located outside the virtual frame and the first high-altitude shooting position is at a preset spacing value from the second high-altitude shooting position;

[0085] Step D3: Use the intersection point of the third side and the fourth side as the third high-altitude shooting position;

[0086] Step D4: Use the intersection point of the fourth side and the first side as the fourth high-altitude shooting position;

[0087] Step D5: Use the intersection point of the first side and the second side as the fifth high-altitude shooting position.

[0088] As Figure 5 shown, it is a schematic diagram of the high-altitude shooting positions for forming the rendered animation.

[0089] It should be noted that generating a rendered animation is based on ordered high-altitude shooting pictures (i.e., key frames), so it is necessary to sort the respective high-altitude shooting positions to facilitate obtaining ordered high-altitude shooting pictures in the later stage; in addition, since the height of the top surface of the outer bounding box is set according to the highest preset component within the outer bounding box, the height of each determined high-altitude shooting position is the height of the highest preset component within the outer bounding box.

[0090] In addition, furthermore, after step S102, the method further includes:

[0091] Step E1: When the rendering result is a rendered picture, determine preset business components from the project 3D model;

[0092] Step E2: Set a detailed shooting position in front of the preset business component; wherein, the height of the detailed shooting position is lower than the height of the high-altitude shooting position;

[0093] Step E3: Traverse each detailed shooting position in sequence, and set the shooting angle of the currently traversed detailed shooting position to face the next detailed shooting position.

[0094] In this embodiment, two methods of high-altitude panoramic view and detailed display are adopted to display the project 3D model from multiple perspectives; when the rendering result is a rendered picture, determine the high-altitude shooting position for high-altitude panoramic view in the manner of the above-mentioned steps C1 to C2, and determine the detailed shooting position for detailed display in the manner of the above-mentioned steps E1 to E3. When determining the detailed shooting position, it is by identifying common business components. For example, in the site layout business, when rendering a picture, it is necessary to display the gate, construction area, and living area. Therefore, it is also necessary to set detailed shooting positions in front of the gate, construction material yard, protective shed processing shed, construction board house, etc. to facilitate obtaining the detailed shooting pictures of these business components in the later stage.

[0095] Furthermore, after step S102, the method further includes:

[0096] Step F1: When the rendering result is a rendered animation, determine the gate closest to the first high-altitude shooting position from the project 3D model, and determine the longest path starting from the gate from the project 3D model;

[0097] Step F2: Sequentially select a set number of detailed shooting positions on the longest path starting from the gate, and set the height of each detailed shooting position to a preset height value lower than the height of the high-altitude shooting position;

[0098] Step F3: Traverse each detailed shooting position in sequence, and set the shooting angle of the currently traversed detailed shooting position to face the next detailed shooting position.

[0099] As Figure 6 shown, it is a schematic diagram of the detailed shooting positions for forming a rendered animation. Among them, it includes four detailed shooting positions.

[0100] In this embodiment, two methods, namely aerial view and detailed display, are adopted to display the 3D model of the project from multiple perspectives; when the rendering result is a rendered animation, the aerial shooting positions for the aerial view are determined in the manner of steps D1 to D5 above, and the detailed shooting positions for the detailed display are determined in the manner of steps F1 to F3 above. When determining the detailed shooting positions, the detailed shooting positions are determined by imitating the way of a pedestrian walking. Therefore, the preset height value of the detailed shooting positions can be set to 2 meters.

[0101] Step S103: Traverse each aerial shooting position in sequence, and at the currently traversed target aerial shooting position, obtain the aerial shooting image of the 3D model of the project according to the shooting angle at the target aerial shooting position.

[0102] It should be noted that when the rendering result is a rendered image, the aerial shooting images can be unordered, but when the rendering result is a rendered animation, all the obtained aerial shooting images need to be sorted in the order of the sequence of the aerial shooting positions, and each sorted aerial shooting image is used as an animation key frame for forming the rendered animation.

[0103] Specifically, after step S103, the method further includes:

[0104] Traverse each detailed shooting position in sequence, and at the currently traversed target detailed shooting position, obtain the detailed shooting image of the 3D model of the project according to the shooting angle at the target detailed shooting position.

[0105] It should also be noted that when the rendering result is a rendered image, the detailed shooting images can be unordered, but when the rendering result is a rendered animation, all the obtained detailed shooting images need to be sorted in the order of the sequence of the detailed shooting positions, and each sorted detailed shooting image is used as an animation key frame for forming the rendered animation.

[0106] Step S104: Send the rendered image formed based on all the aerial shooting images to the preset terminal as the rendering result, or send the rendered animation formed based on all the aerial shooting images to the preset terminal as the rendering result.

[0107] Specifically, step S105 includes

[0108] When the rendering result is a rendered image, input each aerial shooting image and each detailed shooting image into the rendering engine to respectively obtain each aerial rendered image and each detailed rendered image.

[0109] Further, step S105 also includes:

[0110] Step G1: When the rendering result is a rendered animation, sort all the high-altitude shooting images in the order of the high-altitude shooting positions, and set the transition duration between the sorted high-altitude shooting images to the first duration to obtain a high-altitude animation;

[0111] Step G2: Sort all the detailed shooting images in the order of the detailed shooting positions, and set the transition duration between the sorted detailed shooting images to the second duration to obtain a detailed animation; wherein, the first duration is less than the second duration;

[0112] In this embodiment, the shooting images are used as the key frames of the animation; it should be noted that a frame is the smallest unit of a single image in an animation, equivalent to each frame of film in a movie. On the timeline of animation software, a frame is represented as a grid or a marker; a key frame refers to the frame where the key scene is located during the movement and change of the rendered image, equivalent to the original drawing in two-dimensional animation; the animation between key frames can be created and added by software, called transitional frames or intermediate frames. In addition, the transition between the high-altitude shooting images in the high-altitude animation can be faster, while the transition within the brackets of the detailed shooting images in the detailed animation can be slower; for example, the camera movement speed of the high-altitude animation can be set to 100 m / s, while the camera cloud speed of the detailed animation can be set to 6 m / s to better conform to the business situation;

[0113] Step G3: Input the high-altitude animation and the detailed animation into the rendering engine to obtain a rendered animation.

[0114] Among them, the rendering engine is the engine used for rendering the animation; as Figure 5 and Figure 6 shown, first use the shooting images obtained at the first to sixth high-altitude shooting positions as key frames, and then use the shooting images obtained at the first to fourth detailed shooting positions as key frames, and connect them in sequence to form an animation. In addition, use the BIMMAKE built-in renderer or the FALCON V renderer as the rendering engine to render the pictures or animations, and export them to the specified location (software default + user-specified) after rendering for easy viewing and playing.

[0115] As Figure 7 shown, it is the complete process schematic diagram of the method for multi-view displaying the project model provided by this embodiment. As can be seen from Figure 7 this, in this embodiment, the rendering result can be a rendered picture or a rendered animation.

[0116] This embodiment can directly generate a rendering result that meets the business requirements, reducing the user's ability to master the business. At the same time, it effectively shortens the operation process of the user in visual rendering and generating animations, greatly reducing the difficulty and operation time of the user in operating the software. When using the traditional display method, it is necessary to manually open the rendering picture mode or the rendering animation mode, and repeatedly adjust in the project's 3D model to find a suitable camera position, and then obtain the scene picture or the key frames of the animation according to the camera position. If it is an animation, it is also necessary to adjust the time interval between the key frames of the animation. Finally, render and export the rendered picture or the rendered animation; the entire adjustment process requires a high level of business ability, is manual, has a long operation process, and wastes time. For the same project, after adopting the method of this embodiment, visual rendering can be performed with one key. Using the one-key visualization function of this embodiment, the previous cumbersome processes such as opening the rendering picture mode or the rendering animation mode, adjusting the camera position, and adjusting the key frames of the animation can all be completed by the machine. The generated rendering result meets the business requirements, and there is no need for the user to manually adjust to the shooting position that meets the business requirements; at the same time, the operation process is reduced, the difficulty of using the software is reduced, and time is saved.

[0117] Embodiment 2

[0118] An embodiment of the present invention provides a device for multi-view displaying a project model, as Figure 8 shown. The device specifically includes the following components:

[0119] An acquisition module 801, configured to acquire a project 3D model and determine an outer bounding box for wrapping a preset component in the project 3D model;

[0120] A determination module 802, configured to determine a plurality of high-altitude shooting positions for shooting the project 3D model according to the position information of the four sides of the top surface of the outer bounding box, and set the shooting angle at each high-altitude shooting position to face the center point of the outer bounding box;

[0121] A shooting module 803, configured to sequentially traverse each high-altitude shooting position, and at the currently traversed target high-altitude shooting position, obtain a high-altitude shooting picture of the project 3D model according to the shooting angle at the target high-altitude shooting position;

[0122] A forming module 804, configured to send the rendered picture formed according to all the high-altitude shooting pictures to a preset terminal as a rendering result, or send the rendered animation formed according to all the high-altitude shooting pictures to the preset terminal as a rendering result.

[0123] Specifically, the device further includes:

[0124] A preprocessing module, configured to obtain the morphological parameters of each preset component within the outer bounding box, and set the preset components whose morphological parameters meet the preset parameter conditions as tall components; determine a tall component concentration area within the outer bounding box according to the distribution of all tall components; expand the four sides of the top surface of the outer bounding box outward by a preset distance value respectively to form a closed virtual frame; wherein, the top surface of the outer bounding box and the virtual frame are coplanar; calculate the distance values from the center point of the tall component concentration area to each side of the virtual frame respectively; in the virtual frame, set the side corresponding to the minimum distance value as the first side, set the side corresponding to the second smallest distance value as the second side, set the opposite side of the first side as the third side, and set the opposite side of the second side as the fourth side.

[0125] Specifically, the determination module 802 is configured to:

[0126] When the rendering result is a rendered picture, set the midpoint positions of the second side, the third side, and the fourth side as the high-altitude shooting positions, and set the two endpoint positions of the third side as the high-altitude shooting positions.

[0127] Further, the determination module 802 is further configured to:

[0128] When the rendering result is a rendered animation, use the intersection point of the second side and the third side as both the second high-altitude shooting position and the sixth high-altitude shooting position;

[0129] Determine a first high-altitude shooting position on the connection line between the center point of the top surface of the outer bounding box and the second high-altitude shooting position; wherein, the first high-altitude shooting position is located outside the virtual frame and the first high-altitude shooting position is at a preset spacing value from the second high-altitude shooting position;

[0130] Use the intersection point of the third side and the fourth side as the third high-altitude shooting position, use the intersection point of the fourth side and the first side as the fourth high-altitude shooting position, and use the intersection point of the first side and the second side as the fifth high-altitude shooting position.

[0131] Further, the determination module 802 is further configured to:

[0132] When the rendering result is a rendered picture, determine preset business components from the project three-dimensional model;

[0133] Set a detailed shooting position in front of the preset business component; wherein, the height of the detailed shooting position is lower than the height of the high-altitude shooting position;

[0134] Traverse each detailed shooting position in sequence, and set the shooting angle of the currently traversed detailed shooting position to face the next detailed shooting position.

[0135] Further, the determination module 802 is further configured to:

[0136] When the rendering result is a rendered animation, determine the gate closest to the first high-altitude shooting position from the project three-dimensional model, and determine the longest path starting from the gate from the project three-dimensional model;

[0137] Sequentially select a set number of detailed shooting positions on the longest path starting from the gate, and set the height of each detailed shooting position to a preset height value lower than the height of the high-altitude shooting position;

[0138] Traverse each detailed shooting position in sequence, and set the shooting angle of the currently traversed detailed shooting position to face the next detailed shooting position.

[0139] Further, the shooting module 803 is further configured to:

[0140] Traverse each detailed shooting position in sequence, and at the currently traversed target detailed shooting position, obtain the detailed shooting image of the project three-dimensional model according to the shooting angle at the target detailed shooting position.

[0141] Further, the forming module 804 is specifically configured to:

[0142] When the rendering result is a rendered animation, sort all the high-altitude shooting images in the order of the high-altitude shooting positions, and set the transition duration between the sorted high-altitude shooting images to a first duration to obtain a high-altitude animation;

[0143] Sort all the detailed shooting images in the order of the detailed shooting positions, and set the transition duration between the sorted detailed shooting images to a second duration to obtain a detailed animation; wherein, the first duration is less than the second duration;

[0144] Input the high-altitude animation and the detailed animation into a rendering engine to obtain a rendered animation.

[0145] Embodiment III

[0146] This embodiment also provides a computer device, such as a smart phone, a tablet computer, a notebook computer, a desktop computer, a rack server, a blade server, a tower server or a cabinet server (including an independent server, or a server cluster composed of multiple servers) that can execute programs. As Figure 9 shown, the computer device 90 of this embodiment at least includes, but is not limited to: a memory 901 and a processor 902 that can communicate with each other through a system bus. It should be noted that, Figure 9Only a computer device 90 with components 901-902 is shown, but it should be understood that it is not required to implement all the shown components, and more or fewer components can be implemented alternatively.

[0147] In this embodiment, the memory 901 (i.e., the readable storage medium) includes flash memory, hard disk, multimedia card, card-type memory (e.g., SD or DX memory, etc.), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic memory, magnetic disk, optical disk, etc. In some embodiments, the memory 901 may be an internal storage unit of the computer device 90, such as the hard disk or memory of the computer device 90. In other embodiments, the memory 901 may also be an external storage device of the computer device 90, such as a plug-in hard disk equipped on the computer device 90, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. Of course, the memory 901 may also include both the internal storage unit and the external storage device of the computer device 90. In this embodiment, the memory 901 is generally used to store the operating system and various application software installed on the computer device 90. In addition, the memory 901 can also be used to temporarily store various data that have been output or will be output.

[0148] In some embodiments, the processor 902 may be a central processing unit (CPU), a controller, a microcontroller, a microprocessor, or other chips for multi-perspective display of project models. The processor 902 is generally used to control the overall operation of the computer device 90.

[0149] Specifically, in this embodiment, the processor 902 is used to execute the program of the method for multi-perspective display of project models stored in the memory 901. When the program of the method for multi-perspective display of project models is executed, the following steps are implemented:

[0150] Obtain a three-dimensional model of the project and determine an outer bounding box for wrapping a preset component in the three-dimensional model of the project;

[0151] Determine a plurality of high-altitude shooting positions for shooting the three-dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box, and set the shooting angle at each high-altitude shooting position to face the center point of the outer bounding box;

[0152] Traverse each high-altitude shooting position in sequence, and at the currently traversed target high-altitude shooting position, obtain the high-altitude shooting image of the project three-dimensional model according to the shooting angle at the target high-altitude shooting position;

[0153] Send the rendered picture formed according to all high-altitude shooting images to a preset terminal as the rendering result, or send the rendered animation formed according to all high-altitude shooting images to the preset terminal.

[0154] For the specific implementation process of the above method steps, refer to Embodiment 1, and this embodiment will not be repeated here.

[0155] Embodiment 4

[0156] This embodiment also provides a computer-readable storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory (for example, an SD or DX memory, etc.), a random access memory (RAM), a static random access memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, an optical disk, a server, an App application store, etc., on which a computer program is stored. When the computer program is executed by a processor, the following method steps are implemented:

[0157] Obtain a project three-dimensional model, and determine an outer bounding box for wrapping a preset component in the project three-dimensional model;

[0158] Determine a plurality of high-altitude shooting positions for shooting the project three-dimensional model according to the position information of the four sides of the top surface of the outer bounding box, and set the shooting angle at each high-altitude shooting position to face the center point of the outer bounding box;

[0159] Traverse each high-altitude shooting position in sequence, and at the currently traversed target high-altitude shooting position, obtain the high-altitude shooting image of the project three-dimensional model according to the shooting angle at the target high-altitude shooting position;

[0160] Send the rendered picture formed according to all high-altitude shooting images to a preset terminal as the rendering result, or send the rendered animation formed according to all high-altitude shooting images to the preset terminal.

[0161] For the specific implementation process of the above method steps, refer to Embodiment 1, and this embodiment will not be repeated here.

[0162] It should be noted that in this text, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, such that a process, method, article or apparatus comprising a series of elements not only includes those elements but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or apparatus. Without further limitation, an element defined by the statement "comprising one..." does not exclude the presence of additional identical elements in the process, method, article or apparatus comprising such element.

[0163] The serial numbers of the above embodiments of the present invention are only for description and do not represent the superiority or inferiority of the embodiments.

[0164] From the description of the above embodiments, those skilled in the art can clearly understand that the above embodiment methods can be implemented by means of software plus a necessary general hardware platform. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.

[0165] The above are only the preferred embodiments of the present invention, and do not limit the patent scope of the present invention accordingly. Any equivalent structure or equivalent process transformation made by using the content of the specification and drawings of the present invention, or directly or indirectly applied in other related technical fields, shall be equally included in the patent protection scope of the present invention.

Claims

1. A method for multi - perspective display of a project model, characterized in that, the method includes: Obtain a three - dimensional model of the project and determine an outer bounding box for wrapping preset components in the three - dimensional model of the project; Determine a plurality of high - altitude shooting positions for shooting the three - dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box, and set the shooting angle at each high - altitude shooting position to face the center point of the outer bounding box; Traverse each high - altitude shooting position in sequence, and at the currently traversed target high - altitude shooting position, obtain a high - altitude shooting picture of the three - dimensional model of the project according to the shooting angle at the target high - altitude shooting position; Send the rendering picture formed according to all high - altitude shooting pictures to a preset terminal as a rendering result, or send the rendering animation formed according to all high - altitude shooting pictures to the preset terminal as a rendering result; Before determining the plurality of high - altitude shooting positions for shooting the three - dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box, the method further includes: Determine a concentrated area of large components within the outer bounding box, and expand the four sides of the top surface of the outer bounding box to form a closed virtual frame; wherein, the top surface of the outer bounding box is coplanar with the virtual frame; Calculate the distance values from the center point of the concentrated area of large components to each side of the virtual frame respectively; In the virtual frame, set the side corresponding to the minimum distance value as the first side, the side corresponding to the second - minimum distance value as the second side, the opposite side of the first side as the third side, and the opposite side of the second side as the fourth side; The step of determining a plurality of high - altitude shooting positions for shooting the three - dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box includes: When the rendering result is a rendering picture, set the mid - point positions of the second side, the third side, and the fourth side as high - altitude shooting positions, and set the two end - point positions of the third side as high - altitude shooting positions.

2. The method for multi - perspective display of a project model according to claim 1, characterized in that, Before determining the plurality of high - altitude shooting positions for shooting the three - dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box, the method further includes: Obtain the morphological parameters of each preset component within the outer bounding box, and set the preset components whose morphological parameters meet the preset parameter conditions as large components; Determine a concentrated area of large components within the outer bounding box according to the distribution of all large components.

3. The method for multi - perspective display of a project model according to claim 1, characterized in that, The step of determining a plurality of high - altitude shooting positions for shooting the three - dimensional model of the project according to the position information of the four sides of the top surface of the outer bounding box includes: When the rendering result is a rendering animation, use the intersection point of the second side and the third side as both the second high - altitude shooting position and the sixth high - altitude shooting position; Determine a first high-altitude shooting position on the line connecting the center point of the top surface of the outer enclosure box and the second high-altitude shooting position; wherein, the first high-altitude shooting position is located outside the virtual frame, and the first high-altitude shooting position is at a preset distance value from the second high-altitude shooting position; Take the intersection point of the third side and the fourth side as the third high-altitude shooting position, the intersection point of the fourth side and the first side as the fourth high-altitude shooting position, and the intersection point of the first side and the second side as the fifth high-altitude shooting position.

4. The method for multi-view displaying a project model according to claim 1, characterized in that, After setting the shooting angle at each high-altitude shooting position to face the center point of the outer enclosure box, the method further includes: When the rendering result is a rendered picture, determine a preset business component from the project three-dimensional model; Set a detailed shooting position in front of the preset business component; wherein, the height of the detailed shooting position is lower than the height of the high-altitude shooting position; Traverse each detailed shooting position in sequence, and set the shooting angle of the currently traversed detailed shooting position to face the next detailed shooting position.

5. The method for multi-view displaying a project model according to claim 3, characterized in that, After setting the shooting angle at each high-altitude shooting position to face the center point of the outer enclosure box, the method further includes: When the rendering result is a rendered animation, determine the gate closest to the first high-altitude shooting position from the project three-dimensional model, and determine the longest path starting from the gate from the project three-dimensional model; Sequentially select a set number of detailed shooting positions on the longest path starting from the gate, and set the height of each detailed shooting position to a preset height value lower than the height of the high-altitude shooting position; Traverse each detailed shooting position in sequence, and set the shooting angle of the currently traversed detailed shooting position to face the next detailed shooting position.

6. The method for multi-view displaying a project model according to claim 4 or 5, characterized in that, After traversing each high-altitude shooting position in sequence, and obtaining the high-altitude shooting picture of the project three-dimensional model at the currently traversed target high-altitude shooting position according to the shooting angle at the target high-altitude shooting position, the method further includes: Traverse each detailed shooting position in sequence, and obtain the detailed shooting picture of the project three-dimensional model at the currently traversed target detailed shooting position according to the shooting angle at the target detailed shooting position.

7. The method for multi-view displaying a project model according to claim 6, characterized in that, Sending the rendered animation formed by all high-altitude shooting pictures as the rendering result to the preset terminal includes: When the rendering result is a rendered animation, sort all high-altitude shooting pictures in the order of the high-altitude shooting positions, and set the transition duration between the sorted high-altitude shooting pictures to a first duration to obtain a high-altitude animation; Sort all the detailed shooting images in the order of the shooting positions of the details, and set the transition duration between the sorted detailed shooting images as the second duration to obtain a detailed animation; wherein, the first duration is less than the second duration. Input the high-altitude animation and the detailed animation into a rendering engine to obtain a rendered animation.

8. A computer device, the computer device comprises: a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein when the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

9. A computer-readable storage medium, on which a computer program is stored, wherein, when the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • BIM-based project inspection system and method

    CN111626378A

  • Method and device for determining position and posture of panoramic image in three-dimensional model

    CN112184815A

  • Method and terminal for automatically rendering object

    CN112750188A

  • Generation method for exterior-appearance display image of same feature with different detail level, and device therefor

    JP2012108632A