Three-dimensional modeling method and apparatus based on public cloud technology

By using a 3D modeling method based on public cloud technology to segment and implicitly model the model, the shortcomings of implicit modeling methods in expressing sharp features are solved, achieving higher modeling clarity and accuracy, and improving modeling efficiency.

WO2026066379A1PCT designated stage Publication Date: 2026-04-02HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-06-27
Publication Date
2026-04-02

AI Technical Summary

Technical Problem

Existing implicit modeling methods suffer from problems such as loss of geometric details, topological errors, insufficient surface smoothness, and low reconstruction efficiency in representing sharp features of the model, resulting in insufficient modeling clarity.

Method used

A 3D modeling method based on public cloud technology is adopted. The model is segmented by acquiring the 3D data input by the user to obtain multiple model parts. Each part is implicitly modeled separately. The final model is generated by merging multiple implicit expressions, which improves the clarity and accuracy of the model.

Benefits of technology

It improves the clarity and accuracy of 3D modeling results, reduces modeling complexity, and increases modeling efficiency, especially for complex models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025104924_02042026_PF_FP_ABST
    Figure CN2025104924_02042026_PF_FP_ABST
Patent Text Reader

Abstract

The present application belongs to the field of public cloud technology. Disclosed are a three-dimensional modeling method and apparatus based on public cloud technology. The method is applied to a cloud platform. The method comprises: acquiring three-dimensional data of a first model input by a user, wherein the three-dimensional data is an explicit expression of the first model; on the basis of the three-dimensional data, performing model segmentation on the first model, so as to obtain a second model comprising a plurality of model portions, wherein each of one or more model portions of the second model has one or more sharp features, and the sharpness of each sharp feature is greater than a specified threshold value; respectively performing implicit modeling on the plurality of model portions, so as to obtain implicit expressions of the plurality of model portions; and on the basis of the implicit expressions of the plurality of model portions, performing merging to obtain a third model, and performing model rendering on the third model, so as to obtain a rendering result of the third model and display same to a user. The present application improves the modeling quality of a three-dimensional modeling result.
Need to check novelty before this filing date? Find Prior Art

Description

Three-dimensional modeling method and device based on public cloud technology

[0001] The present application claims priority to the Chinese patent application No. 202411336329.5, filed on September 24, 2024, and entitled "Three-dimensional modeling method and device based on public cloud technology", the entire contents of which are incorporated herein by reference. TECHNICAL FIELD

[0002] The present application relates to the field of public cloud technology, and in particular, to a three-dimensional modeling method and device based on public cloud technology. BACKGROUND

[0003] With the development of image processing technology, three-dimensional (3D) modeling is increasingly widely used in various industries.

[0004] Currently, an explicit modeling method is usually used to model a three-dimensional model. Explicit modeling uses coordinates to represent the positions of all three-dimensional points in a three-dimensional model. However, explicit modeling has some problems. Therefore, the industry currently also uses an implicit modeling method to model a three-dimensional model. Implicit modeling uses a continuous function to represent the relationship that all three-dimensional points in a three-dimensional model satisfy, which can solve the discrete problem of explicit modeling, and can achieve fine modeling details, automatic interference elimination, gradual material properties, and displacement mapping textures, etc. For example, typical implicit modeling methods include: a signed distance function (SDF) based modeling method, an algebraic surface based modeling method, a constructive solid geometry based modeling method, a level set based modeling method, and a fractals based modeling method, etc.

[0005] However, the clarity of modeling using these implicit modeling methods needs to be improved. SUMMARY

[0006] The present application provides a three-dimensional modeling method and device based on public cloud technology. The present application can effectively improve the clarity and accuracy of three-dimensional modeling results, and thus improve the modeling quality of three-dimensional modeling results. The technical solutions provided by the present application are as follows.

[0007] In a first aspect, the present application provides a three-dimensional modeling method based on public cloud technology. The method is applied to a cloud platform. The method comprises: obtaining three-dimensional data of a first model input by a user, the three-dimensional data being an explicit representation of the first model, the explicit representation being used to indicate positions of all three-dimensional points in the first model; performing model segmentation on the first model based on the three-dimensional data to obtain a second model comprising a plurality of model parts, each of one or more model parts of the second model having one or more sharp features, the sharpness of the sharp features being greater than a specified threshold; performing implicit modeling on the plurality of model parts respectively to obtain implicit representations of the plurality of model parts, the implicit representation of any model part being used to indicate a relationship satisfied by all three-dimensional points in the any model part; merging the implicit representations of the plurality of model parts to obtain a third model, and performing model rendering on the third model to obtain and display a rendering result of the third model to the user.

[0008] Since the second model comprises a plurality of model parts, and each of one or more model parts of the second model has one or more sharp features, it is equivalent to that the computing device performs segmentation on the first model based on the sharp features. The computing device performs implicit modeling on the plurality of model parts respectively, which is equivalent to performing implicit modeling on different sharp features respectively to obtain a plurality of implicit representations respectively representing the plurality of model parts. Since different implicit representations have different characteristics, using the plurality of implicit representations to represent the plurality of model parts respectively, compared with using one implicit representation to represent the entire first model, not only are the plurality of implicit representations all continuous and differentiable, which can inherit the advantages of implicit modeling, but also since any implicit representation can describe the characteristics of the model part it represents, any implicit representation can describe the model part it represents in more detail, and can describe the details of the model part it represents more clearly and accurately. Therefore, by using the three-dimensional modeling method based on public cloud technology provided by the present application to perform three-dimensional modeling, the clarity and accuracy of the three-dimensional modeling result can be effectively improved, and the modeling quality of the three-dimensional modeling result is improved.

[0009] Moreover, since the modeling complexity of a single model part is lower than that of the entire first model, by segmenting the first model into a plurality of model parts and modeling the plurality of model parts respectively, compared with modeling the entire first model, the complexity of modeling the first model is reduced, the modeling efficiency of modeling the first model is improved, and this effect is particularly obvious for complex models.

[0010] In a possible implementation, the method further includes: receiving a modification instruction of the rendering result of the third model by the user, the modification instruction being used to indicate modification of the rendering result of the third model; modifying the rendering result of the third model based on the modification instruction, and displaying the modified rendering result of the third model to the user. In this way, the application can provide the user with the function of adjusting the rendering result of the third model, so that the user can adjust the rendering result of the third model according to the needs, so as to obtain a modeling result that the user needs more, thereby improving the modeling experience of the user.

[0011] In a possible implementation, the plurality of model parts can be obtained based on one or more sharp features of the first model. The model segmentation of the first model based on the three-dimensional data to obtain the second model including the plurality of model parts includes: obtaining the one or more sharp features of the first model based on the three-dimensional data; and performing model segmentation on the first model based on the one or more sharp features to obtain the second model.

[0012] Since the current modeling methods (such as the modeling method based on the signed distance function of coordinates) all have the problem of being unable to accurately express the sharp features of the first model, the application can perform model division based on the sharp features of the first model, and perform implicit modeling based on the plurality of model parts obtained by division, so as to perform implicit modeling for different sharp features respectively, thereby effectively improving the modeling quality of the three-dimensional modeling result.

[0013] In a possible implementation, the application can perform model segmentation of the first model by using a mask image. The model segmentation of the first model based on the one or more sharp features to obtain the second model includes: obtaining a plurality of two-dimensional projection images of the first model based on the three-dimensional data, the plurality of two-dimensional projection images being obtained from a plurality of perspectives; performing mask processing on the plurality of two-dimensional projection images based on the one or more sharp features to obtain a plurality of two-dimensional mask images, one of the mask part and the non-mask part in the two-dimensional mask image representing an image part with sharp features, and the other representing an image part without sharp features; and performing three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data to obtain the second model.

[0014] In a possible implementation, when the application performs three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data of the first model, the three-dimensional mask image of the first model can be obtained based on the plurality of two-dimensional mask images, and then the three-dimensional structure represented by the three-dimensional data is segmented based on the three-dimensional mask image, so as to obtain the second model. The three-dimensional segmentation of the first model based on the plurality of two-dimensional mask images and the three-dimensional data to obtain the second model includes: obtaining the three-dimensional mask image of the first model based on the plurality of two-dimensional mask images; and performing three-dimensional segmentation on the first model based on the three-dimensional mask image and the three-dimensional data to obtain the second model.

[0015] In another possible implementation, the three-dimensional segmentation is performed on the first model based on the plurality of two-dimensional mask maps and the three-dimensional data to obtain a second model, including: inputting the plurality of two-dimensional mask maps and the three-dimensional data into a segmentation model of a three-dimensional model to obtain the second model. By using the segmentation model of the three-dimensional model to segment the first model, better segmentation of the first model can be performed.

[0016] In a possible implementation, the third model is obtained by merging the implicit representations of the plurality of model parts, including: merging the plurality of model parts and the topological relationship and the positional relationship between different model parts to obtain the third model, and the topological relationship of any model part being used to indicate the mutual relationship of the components in the any model part, and the topological relationship between any two model parts being used to indicate the mutual relationship of the components in the any two model parts.

[0017] In a possible implementation, the topological relationship and the positional relationship between the plurality of model parts and different model parts included in the second model are represented by graph data. For example, represented by a directed acyclic graph. Since the representation of the directed acyclic graph is relatively simple, by representing the topological relationship and the positional relationship between the plurality of model parts and different model parts by the directed acyclic graph, the representation difficulty of the topological relationship and the positional relationship can be simplified.

[0018] In a second aspect, the present application provides a three-dimensional modeling device based on public cloud technology. The device is applied to a cloud platform. The device includes: an interaction unit configured to obtain three-dimensional data of a first model input by a user, the three-dimensional data being an explicit representation of the first model, and the explicit representation being used to indicate the positions of all three-dimensional points in the first model; a segmentation unit configured to perform model segmentation on the first model based on the three-dimensional data to obtain a second model including a plurality of model parts, each model part in one or more model parts of the second model having one or more sharp features, and the sharpness of the sharp features being greater than a specified threshold; a modeling unit configured to perform implicit modeling on the plurality of model parts respectively to obtain implicit representations of the plurality of model parts, and the implicit representation of any model part being used to indicate a relationship satisfied by all three-dimensional points in the any model part; and a rendering unit configured to merge a third model based on the implicit representations of the plurality of model parts, perform model rendering on the third model, and obtain a rendering result of the third model; and the interaction unit is further configured to display the rendering result of the third model to the user.

[0019] In a possible implementation, the interaction unit is further configured to receive a modification instruction of the user for the rendering result of the third model, the modification instruction being used to indicate modification of the rendering result of the third model; the rendering unit is further configured to modify the rendering result of the third model based on the modification instruction; and the interaction unit is further configured to display the modified rendering result of the third model to the user.

[0020] In a possible implementation, the segmentation unit is specifically configured to: acquire one or more sharp features of the first model based on the three-dimensional data; and perform model segmentation on the first model based on the one or more sharp features to obtain the second model.

[0021] In a possible implementation, the segmentation unit is specifically configured to: acquire two-dimensional projections of the first model at multiple viewing angles based on the three-dimensional data to obtain multiple two-dimensional projection images of the first model; perform mask processing on the multiple two-dimensional projection images based on the one or more sharp features to obtain multiple two-dimensional mask images, one of a mask portion and a non-mask portion in the two-dimensional mask image representing an image portion with a sharp feature, and the other representing an image portion without a sharp feature; and perform three-dimensional segmentation on the first model based on the multiple two-dimensional mask images and the three-dimensional data to obtain the second model.

[0022] In a possible implementation, the segmentation unit is specifically configured to: acquire a three-dimensional mask image of the first model based on the multiple two-dimensional mask images; and perform three-dimensional segmentation on the first model based on the three-dimensional mask image and the three-dimensional data to obtain the second model.

[0023] In a possible implementation, the segmentation unit is specifically configured to: input the multiple two-dimensional mask images and the three-dimensional data into a segmentation model of a three-dimensional model to obtain the second model.

[0024] In a possible implementation, the rendering unit is specifically configured to: merge to obtain the third model based on the multiple model portions and the topological relationship and the positional relationship between different model portions, the topological relationship of any model portion being used to indicate the mutual relationship of components in the any model portion, and the topological relationship between any two model portions being used to indicate the mutual relationship of components in the any two model portions.

[0025] In a possible implementation, the second model includes the multiple model portions and the topological relationship and the positional relationship between different model portions are represented by graph data.

[0026] In a third aspect, the present application provides a computing device, including a memory and a processor, the memory storing program instructions, and the processor executing the program instructions to perform the method provided in the first aspect of the present application and any possible implementation thereof.

[0027] In a fourth aspect, the present application provides a computing device cluster, including multiple computing devices, the multiple computing devices including multiple processors and multiple memories, the multiple memories storing program instructions, and the multiple processors executing the program instructions to enable the computing device cluster to perform the method provided in the first aspect of the present application and any possible implementation thereof.

[0028] In a fifth aspect, the present application provides a computer readable storage medium, which is a non-volatile computer readable storage medium, and which includes program instructions that, when executed on a computing device, cause the computing device to perform the method provided in the first aspect of the present application and any possible implementation manner thereof.

[0029] In a sixth aspect, the present application provides a computer program product including instructions that, when executed on a computer, cause the computer to perform the method provided in the first aspect of the present application and any possible implementation manner thereof.

[0030] It should be understood that the device mentioned in the above second aspect can be the device mentioned in the third aspect, the device cluster mentioned in the fourth aspect, or a chip. The beneficial effects achieved by the technical solutions of the second aspect to the sixth aspect of the present application and the corresponding possible implementation manners can be referred to the technical effects of the first aspect and the corresponding possible implementation manners described above, and will not be described here. BRIEF DESCRIPTION OF DRAWINGS

[0031] FIG. 1 is a structural schematic diagram of an implementation scenario involved in a three-dimensional modeling method based on public cloud technology according to an embodiment of the present application;

[0032] FIG. 2 is a structural schematic diagram of an implementation scenario involved in another three-dimensional modeling method based on public cloud technology according to an embodiment of the present application;

[0033] FIG. 3 is a deployment schematic diagram of basic resources in a data center according to an embodiment of the present application;

[0034] FIG. 4 is a flowchart of a three-dimensional modeling method based on public cloud technology according to an embodiment of the present application;

[0035] FIG. 5 is a schematic diagram of functional modules for implementing a three-dimensional modeling method based on public cloud technology according to an embodiment of the present application;

[0036] FIG. 6 is an implementation process schematic diagram of a three-dimensional modeling method based on public cloud technology according to an embodiment of the present application;

[0037] FIG. 7 is a flowchart of a process of performing model segmentation on a first model based on three-dimensional data to obtain a second model including multiple model parts according to an embodiment of the present application;

[0038] FIG. 8 is a flowchart of a process of performing model segmentation on a first model based on one or more sharp features to obtain a second model according to an embodiment of the present application;

[0039] FIG. 9 is a flowchart of a process of performing three-dimensional segmentation on a first model based on multiple two-dimensional mask graphs and three-dimensional data to obtain a second model according to an embodiment of the present application;

[0040] FIG. 10 is a flowchart of a method for obtaining a third model by merging implicit representations of multiple model parts, rendering the third model, and displaying the rendering result of the third model to a user according to an embodiment of the present application;

[0041] FIG. 11 is a structural diagram of a three-dimensional modeling device based on public cloud technology according to an embodiment of the present application;

[0042] FIG. 12 is a structural diagram of a computing device according to an embodiment of the present application;

[0043] FIG. 13 is a structural diagram of a computing device cluster according to an embodiment of the present application;

[0044] FIG. 14 is a structural diagram of another computing device cluster according to an embodiment of the present application. DETAILED DESCRIPTION

[0045] In order to make the objectives, technical solutions, and advantages of the present application clearer, the embodiments of the present application will be described in further detail below with reference to the accompanying drawings.

[0046] With the development of image processing technology, three-dimensional modeling is increasingly widely used in various industries. Currently, an explicit modeling method is usually used to model a three-dimensional model. Explicit modeling uses coordinates to represent the positions of all three-dimensional points in a three-dimensional model. However, explicit modeling has some problems. Therefore, the industry currently also uses an implicit modeling method to model a three-dimensional model. Implicit modeling uses a continuous function to represent the relationship satisfied by all three-dimensional points in a three-dimensional model, can solve the discrete problem of explicit modeling, and can achieve fine modeling details, automatic interference elimination, gradual material properties, and displacement mapping textures. For example, typical implicit modeling methods include a modeling method based on a coordinate-based signed distance function, a modeling method based on an algebraic surface, a modeling method based on constructed solid geometry, a modeling method based on a level set, and a modeling method based on fractal geometry.

[0047] However, the current implicit modeling method generally has problems such as loss of geometric details, topological errors, insufficient surface smoothness, and low reconstruction efficiency in model sharp feature representation. For example, the modeling method based on a coordinate-based signed distance function is a representation method that encodes the shortest distance from each point in a 3D space to a target surface. After encoding by this modeling method, the encoding value of a point inside the model is negative, the encoding value of a point on the surface of the model is zero, and the encoding value of a point outside the model is positive. The surface generated by this method is often smooth and difficult to capture very sharp edges and details.

[0048] Therefore, the clarity of modeling using these implicit modeling methods needs to be improved.

[0049] In view of this, the embodiment of the present application provides a three-dimensional modeling method based on public cloud technology. The method is applied to a cloud platform. For example, the method is applied to a computing device of the cloud platform. In the three-dimensional modeling method, after the computing device obtains three-dimensional data of a first model input by a user, the computing device can perform model segmentation on the first model based on the three-dimensional data to obtain a second model including a plurality of model parts. The three-dimensional data is an explicit representation of the first model. The explicit representation is used to indicate the positions of all three-dimensional points in the first model. For example, the three-dimensional data is the coordinates of all three-dimensional points in the first model. Each of one or more model parts of the second model has one or more sharp features. The sharpness of the sharp feature is greater than a specified threshold. Then, the computing device performs implicit modeling on the plurality of model parts respectively to obtain implicit representations of the plurality of model parts, and merges the third model based on the implicit representations of the plurality of model parts to obtain a third model. Then, the computing device performs model rendering on the third model to obtain a rendering result of the third model and displays the rendering result to the user. The implicit representation of any model part is used to indicate a relationship satisfied by all three-dimensional points in the model part. For example, the implicit representation of the model part is a functional relationship indicating that all three-dimensional points in the model part satisfy the functional relationship.

[0050] Since the second model includes a plurality of model parts, and each of one or more model parts of the second model has one or more sharp features, it is equivalent to that the computing device performs segmentation on the first model based on the sharp features. The computing device performs implicit modeling on the plurality of model parts respectively, which is equivalent to performing implicit modeling on different sharp features respectively to obtain a plurality of implicit representations respectively representing the plurality of model parts. Since different implicit representations have different characteristics, using a plurality of implicit representations to represent a plurality of model parts, compared with using one implicit representation to represent the entire first model, not only are the plurality of implicit representations all continuous and differentiable, which can inherit the advantages of implicit modeling, but also since any implicit representation can describe the characteristics of the model part it represents, so that any implicit representation can describe the model part it represents more meticulously and can describe the details of the model part it represents more clearly and accurately. Therefore, by using the three-dimensional modeling method based on public cloud technology provided by the present application to perform three-dimensional modeling, the clarity and accuracy of the three-dimensional modeling result can be effectively improved, and the modeling quality of the three-dimensional modeling result can be improved.

[0051] And, since the modeling complexity of the single model part is reduced compared to the modeling complexity of the whole first model, the computing device reduces the modeling complexity of modeling the first model and improves the modeling efficiency of modeling the first model by dividing the first model into multiple model parts and modeling the multiple model parts respectively, and the effect is particularly obvious for complex models.

[0052] The technical solutions of the present application are described in detail from the aspects of implementation scenarios, method flows, hardware devices, software devices, etc.

[0053] The implementation scenarios of the embodiments of the present application are described below.

[0054] FIG. 1 is a structural schematic diagram of an implementation scenario involved in a three-dimensional modeling method based on public cloud technology provided by an embodiment of the present application. As shown in FIG. 1, the implementation scenario includes one or more computing devices 10 and a client 20. The one or more computing devices 10 are used to implement the three-dimensional modeling method based on public cloud technology provided by the embodiments of the present application. The client 20 can establish a communication connection with the one or more computing devices 10. For example, the client 20 and the one or more computing devices 10 can establish a communication connection through a network. Optionally, the network can be a local area network, the Internet, or other networks, which are not limited by the embodiments of the present application.

[0055] The client 20 is used for a user to interact with the one or more computing devices 10. In an implementation manner, the client 20 is used to send a three-dimensional modeling request to the computing device 10 according to the user's indication, and the three-dimensional modeling request carries three-dimensional data of a first model to instruct the computing device 10 to perform implicit modeling and model rendering on the first model based on the three-dimensional data. The one or more computing devices 10 are used to perform implicit modeling and model rendering on the first model according to the three-dimensional modeling method based on public cloud technology provided by the embodiments of the present application based on the three-dimensional modeling request, and feed back a three-dimensional modeling result to the client 20.

[0056] In an implementation manner, the client 20 can be a desktop computer, a laptop computer, a mobile phone, a smart phone, a tablet computer, a multimedia player, a smart home appliance, an artificial intelligence device, a smart wearable device, an e-book reader, a smart vehicle device, or an Internet of Things device, etc. The computing device 10 can be a server (e.g., a cloud server). When the implementation scenario includes a plurality of computing devices 10, the plurality of computing devices 10 can be referred to as a computing device cluster. At this time, the computing device cluster is a server cluster composed of several servers, or is implemented in a cloud computing service center. In the cloud computing service center, a large number of basic resources owned by a cloud service provider are deployed. For example, computing resources, storage resources, and network resources are deployed in the cloud computing service center. The cloud computing service center can use the large number of basic resources to implement the three-dimensional modeling method based on public cloud technology provided in the embodiments of the present application.

[0057] When the computing device cluster is implemented through the cloud computing service center, the function of the three-dimensional modeling implemented by the computing device cluster can be abstracted by the cloud service provider into a three-dimensional modeling cloud service on the cloud platform. At this time, the user can access the cloud management platform through the client 20, and after purchasing the three-dimensional modeling cloud service on the cloud management platform, the user can use the three-dimensional modeling cloud service provided by the computing device cluster to perform a three-dimensional modeling operation based on the three-dimensional data set indicated by the user. Alternatively, the cloud management platform can be a cloud management platform of a central cloud, a cloud management platform of an edge cloud, or a cloud management platform including a central cloud and an edge cloud, which is not limited in the embodiments of the present application. In addition, the three-dimensional modeling cloud service can be provided as a separate cloud service by the cloud management platform. Alternatively, the three-dimensional modeling cloud service is provided as an additional cloud service of other cloud services, which is not limited in the embodiments of the present application.

[0058] When the computing device cluster is implemented through the cloud computing service center, as shown in FIG. 2, the implementation scenario involved in the three-dimensional modeling method based on public cloud technology provided in the embodiments of the present application includes a data center 1 and a client 20. The data center 1 and the client 20 can establish a communication connection through a network. Alternatively, the network can be the Internet, or other networks, which are not limited in the embodiments of the present application. The tenant can interact with the data center 1 through the client 20. For example, the tenant can send three-dimensional modeling request information to the data center 1 through the client 20. The data center 1 is configured to respond based on the information sent by the client 20.

[0059] A large amount of infrastructure owned by a cloud service provider, such as computing resources, storage resources, and network resources, is deployed in the data center 1. For example, the computing resources can be computing devices (such as servers and the like) capable of providing computing capabilities. At this time, the computing device 10 is deployed in the data center 1. As shown in FIG. 2, the data center 1 includes a cloud management platform and infrastructure (not shown in FIG. 2). The cloud management platform and the infrastructure are connected through an intra-data-center network. The cloud management platform is used to manage the infrastructure. The infrastructure is used to provide public cloud services, such as providing a three-dimensional modeling cloud service. The infrastructure includes a plurality of servers. The cloud service can be optionally deployed in the server. The cloud service is implemented by running a virtual instance, and therefore is also referred to as a virtual instance used to implement a tenant business and deployed in the server. The tenant can send a cloud service request and related information to the server through a client 20 used by the tenant, the server can process the cloud service request and related information, and provide the cloud service to the tenant based on the processed cloud service request and related information. For example, the server can implement three-dimensional modeling of a first model by using a three-dimensional modeling method based on a public cloud technology provided in the embodiments of the present application.

[0060] The cloud management platform can be logically divided into a tenant console, a computing management service, a network management service, a storage management service, an authentication service, and an image management service. The tenant console provides an interface or an application program interface (API) to interact with the tenant. The computing management service is used to manage servers running virtual instances and bare-metal servers. The network management service is used to manage network services (such as gateways, firewalls, and the like). The storage management service is used to manage storage services (such as data bucket services). The authentication service is used to manage the account and password of the tenant. The image management service is used to manage the image of the virtual instance.

[0061] In the implementation scenario shown in FIG. 2, a plurality of servers are provided in one data center. The server includes a hardware layer and a software layer. The hardware layer is a conventional configuration of the server. The hardware layer is deployed with hardware devices such as a processor, a memory, a network card, a disk, and a bus. The software layer includes an operating system installed and running on the server. The operating system of the virtual machine can be referred to as a host operating system. The host operating system runs a virtual machine manager (also referred to as a Hypervisor). The function of the virtual machine manager is to implement computing virtualization, network virtualization, and storage virtualization of the virtual machine, and to manage the virtual machine.

[0062] The cloud management platform client can receive the control plane command sent by the cloud management platform, create a virtual instance on the server according to the control plane control command, and perform full life cycle management on the virtual instance. For example, the cloud management platform client can detect the use of hardware resources of the server in real time and report to the cloud management platform. When the cloud management platform confirms to create a virtual instance on a server, it will send a virtual instance creation command to the cloud management platform client on the server, and the cloud management platform client will create a virtual instance on the server after receiving the command. In this way, tenants can create, manage, log in and operate virtual instances in the data center through the cloud management platform.

[0063] The server can be used to run virtual machines of different specifications. Virtual machine specifications include general computing, memory optimization, and super memory, etc. Each type has specific specifications. After the tenant selects a virtual machine specification, the cloud management platform selects a server in the data center that supports the specification and determines that the server has sufficient idle hardware resources, and then creates a virtual machine with the specification on the server. By configuring the server through the cloud management platform, the analysis and planning of the server hardware resources can be realized, and the corresponding computing products of the physical hardware can be planned according to the hardware performance of the server, such as planning virtual machines of different specifications to meet the differentiated demands of different tenants. Moreover, according to the performance difference of virtual machines of different specifications, a differentiated pricing strategy can be implemented. For example, virtual instances of high-performance specifications are sold at a higher price, and virtual instances of ordinary performance specifications are sold at a lower price, so that tenants can purchase virtual instances on demand.

[0064] In an implementation, as shown in FIG. 3, the location of the underlying resources in the data center can be described by cloud resource deployment regions and availability zones (AZs). A tenant can choose to deploy a cloud service based on resources in a specific region and AZ. A region is divided from the dimensions of geographical location and network latency. The same resource pool is used within the same region, which can be understood as sharing public services such as elastic computing, block storage, object storage, virtual private cloud (VPC) network, elastic internet protocol (EIP) address, and image. A region is divided into general regions and dedicated regions. A general region refers to a region that provides general cloud services to public tenants. A dedicated region refers to a region that carries the same type of business or provides business services to specific tenants. A region usually includes multiple AZs. Multiple AZs in a region are connected by high-speed optical fibers to meet the needs of tenants to build high-availability systems across AZs. An AZ is a collection of one or more data centers shown in FIG. 3. The resources such as computing, network, and storage within an AZ are logically divided into multiple clusters.

[0065] A tenant can send instructions to the cloud management platform through a client 20 used by the tenant to create, manage, log in, and operate virtual instances in a server, and use cloud services provided by the virtual instances. For example, the cloud management platform can provide an access interface. The access interface can be provided in the form of an interface or an API. A tenant can remotely access the access interface with a client to register a cloud account and a password with the cloud management platform and log in to the cloud management platform using the cloud account and the password. The cloud management platform can also authenticate the cloud account and the password. After successful authentication, the tenant can further select and pay for a virtual instance of a specific specification (processor, memory, disk) in the cloud management platform. After the tenant successfully pays for the virtual instance, the cloud management platform provides the tenant with a remote login account and a password for the purchased virtual instance. The tenant can use the remote login account and the password to remotely log in to the virtual instance, install and run the tenant's application in the virtual instance, and implement the tenant's business through the application.

[0066] In an implementation manner, the method for three-dimensional modeling based on public cloud technology provided in the embodiments of the present application can be implemented by running an executable program by one or more computing devices 10. For example, the executable program of the method for three-dimensional modeling based on public cloud technology can be presented in the form of an application installation package, and after the application installation package is installed in the one or more computing devices 10, the method for three-dimensional modeling based on public cloud technology can be implemented by running the executable program. When the computing device cluster is implemented by a cloud computing service center, the method for three-dimensional modeling based on public cloud technology provided in the embodiments of the present application can be implemented by running an executable program by a computing device in the data center 1.

[0067] It should be understood that the above is an exemplary description of the implementation scenario of the method for three-dimensional modeling based on public cloud technology provided in the embodiments of the present application, and does not constitute a limitation on the implementation scenario of the method for three-dimensional modeling based on public cloud technology. It can be known by those skilled in the art that the implementation scenario can be adjusted according to application requirements as the business requirements change, and the embodiments of the present application do not make a specific limitation. Moreover, when the method for three-dimensional modeling based on public cloud technology provided in the embodiments of the present application is applied to other scenarios, the executable program of the method can also be presented in the form of an application installation package or in other ways, and the embodiments of the present application do not make a one-by-one enumeration.

[0068] The implementation process of the method will be described below by taking the computing device in the cloud platform as an example. FIG. 4 is a flowchart of a method for three-dimensional modeling based on public cloud technology provided in the embodiments of the present application. As shown in FIG. 4, the method for three-dimensional modeling based on public cloud technology includes the following steps:

[0069] Step 401: Obtain three-dimensional data of a first model input by a user, the three-dimensional data being an explicit expression of the first model, and the explicit expression being used to indicate the positions of all three-dimensional points in the first model.

[0070] When the user needs to use the three-dimensional modeling method based on the public cloud technology provided in the present application to perform three-dimensional modeling on the first model owned by the user, the user can perform a specified operation on the client used by the user to trigger a three-dimensional modeling request, so that the computing device performs three-dimensional modeling on the first model owned by the user based on the three-dimensional modeling request. The three-dimensional modeling request carries three-dimensional data of the first model, and the three-dimensional data is an explicit expression of the first model. The explicit expression is used to indicate the positions of all three-dimensional points in the first model. For example, the three-dimensional data is point cloud data, mesh data or voxel data of the first model, etc. The point cloud is a set of three-dimensional points in the first model. The point cloud data is used to indicate the coordinates, colors and normals of the three-dimensional points in the first model, etc. The mesh is a set of triangular facets used to represent the first model. The mesh data is used to indicate the colors and texture coordinates of the vertices representing the first model, the normals of the vertices and triangular facets, etc. The voxel is a data structure of a volume unit of the first model in a three-dimensional space. The voxel data is used to indicate the coordinates, colors and normals of the volume unit of the first model in the three-dimensional space, etc. Here, although the user provides the three-dimensional data of the first model, since the three-dimensional data provided by the user is the explicit representation of the first model, it lacks a lot of detailed information of the first model, and the expression of the first model is poor in fine degree, so the user needs to use the three-dimensional modeling method based on the public cloud technology provided in the present application to perform implicit modeling and rendering on the first model, so as to obtain a three-dimensional model containing more detailed information and expressing more finely.

[0071] In a possible implementation, the computing device can provide an interactive interface to the user, and the user can trigger the three-dimensional modeling request based on the interactive interface. After the user triggers the three-dimensional modeling request, the computing device can obtain the three-dimensional modeling request and the three-dimensional data carried thereby through the interactive interface. Optionally, the interactive interface includes one or more of the following implementation modes: an application programming interface (API) and a user interface (UI). When the interactive interface is implemented through the user interface, the user can operate in the user interface to indicate the function that the user needs to implement. The computing device can obtain the function that the user needs to implement from the user interface.

[0072] In an implementation, the three-dimensional modeling method based on the public cloud technology provided in the present application can be implemented by a plurality of functional modules. For example, as shown in FIG. 5, the three-dimensional modeling method based on the public cloud technology can be implemented by the following plurality of functional modules: an interaction module, a segmentation module, an implicit modeling module, and a model rendering module. The interaction module is configured to obtain three-dimensional data of a first model input by a user. The segmentation module is configured to perform model segmentation on the first model based on the three-dimensional data to obtain a second model including a plurality of model parts. The implicit modeling module is configured to perform implicit modeling on the plurality of model parts respectively to obtain implicit representations of the plurality of model parts. The model rendering module is configured to perform model rendering based on the implicit representations of the plurality of model parts to obtain a rendering result of a third model. The interaction module is further configured to display the rendering result of the third model to the user to present the three-dimensional modeling result of the third model to the user. At this time, the step 401 can be implemented by the interaction module. As shown in FIG. 6, after the user provides the three-dimensional data of the first model to the computing device through a client used by the user, the interaction module is configured to obtain the three-dimensional data of the first model input by the user.

[0073] It should be noted that the user can also provide two-dimensional data of the first model to the computing device and provide a mapping manner of mapping the two-dimensional data to a three-dimensional space. In this way, after the computing device obtains the two-dimensional data of the first model and the mapping manner, the computing device needs to first convert the two-dimensional data into three-dimensional data according to the mapping manner, and then perform three-dimensional modeling on the first model based on the three-dimensional data. For example, the user can also provide a two-dimensional image or a texture map of the first model. The two-dimensional image and the texture map are two-dimensional data of the first model. After the computing device obtains the two-dimensional data of the first model, the computing device first maps the two-dimensional data into three-dimensional data, and then performs three-dimensional modeling on the first model based on the three-dimensional data.

[0074] The step 402 is to perform model segmentation on the first model based on the three-dimensional data to obtain a second model including a plurality of model parts, and each of one or more model parts of the second model has one or more sharp features with a sharpness greater than a specified threshold.

[0075] Optionally, before performing model segmentation on the first model, the computing device can first preprocess the three-dimensional data of the first model to improve the quality and consistency of the three-dimensional data. For example, denoising the three-dimensional data to improve the quality of the three-dimensional data. Performing alignment processing on the three-dimensional data to ensure the consistency of the three-dimensional data. The alignment processing on the three-dimensional data means that when the three-dimensional data provided by the user does not include information of a three-dimensional element of the first model at a specified position, the computing device obtains the information of the three-dimensional element of the first model at the specified position based on the three-dimensional data provided by the user. For example, the three-dimensional element of the first model can be a three-dimensional space point in the first model, a triangular facet representing the first model, or a pixel of the first model in the three-dimensional space.

[0076] When the three-dimensional modeling method based on public cloud technology provided in the present application is implemented through multiple functional modules, the operation of pre-processing the three-dimensional data of the first model can be performed by the segmentation module. Alternatively, the operation of pre-processing the three-dimensional data of the first model can also be performed by the interaction module, which can be adjusted according to application requirements, and embodiments of the present application do not make specific limitations thereto. As shown in FIG. 6, after the interaction module receives the three-dimensional data of the first model provided by the user, the three-dimensional data is pre-processed first, and then the pre-processed three-dimensional data is provided to the segmentation module, so that the segmentation module performs model segmentation on the first model based on the pre-processed three-dimensional data.

[0077] In a possible implementation, the multiple model parts can be divided based on one or more sharp features of the first model. Since the current modeling methods (such as the modeling method based on the signed distance function of coordinates) all have the problem of being unable to accurately express the sharp features of the first model, the present application divides the model based on the sharp features of the first model, and respectively performs implicit modeling based on the multiple model parts obtained by the division, so as to respectively perform implicit modeling for different sharp features, thereby effectively improving the modeling quality of the three-dimensional modeling result. As shown in FIG. 7, the implementation process of performing model segmentation on the first model based on the three-dimensional data to obtain the second model including multiple model parts includes:

[0078] Step 4021, based on the three-dimensional data, obtaining one or more sharp features of the first model.

[0079] The computing device can perform sharp feature detection on the first model based on the three-dimensional data of the first model. For example, the computing device can optionally perform sharp feature detection on the first model through curvature analysis, edge detection, normal analysis, field analysis, geometric feature extraction, and texture analysis, etc., to obtain the sharp features of the first model.

[0080] In a possible implementation, when the computing device obtains one or more sharp features of the first model, based on the three-dimensional data of the first model, the contour line of the first model can be obtained, and any point p i (x(i),y(i)) on the contour line is selected as the center, and points p i (x(i-k),y(i-k)) and p i (x(i+k),y(i+k)) are selected on both sides of the contour line, which are respectively k away from the point p i-k (x(i),y(i)). The distance between the point p i+k (x(i),y(i)) and the point p i (x(i-k),y(i-k)) and the distance between the point p i- k (x(i+k),y(i+k)) can be obtained.i (x(i),y(i)) to point p i+k (x(i+k),y(i+k)) are equal, i.e., |p i p i-k | = |p i p i+k |. Then, the size of the support angle α formed by the point p i (x(i),y(i)), the point p i-k (x(i-k),y(i-k)), and the point p i+k (x(i+k),y(i+k)) can be expressed as follows. Wherein, p i represents the point p i (x(i),y(i)), p i-k represents the point p i-k (x(i-k),y(i-k)), p i+k represents the point p i+k (x(i+k),y(i+k)), |p i-k p i+k | represents the distance from the point p i-k (x(i-k),y(i-k)) to the point p i+k (x(i+k),y(i+k)).

[0081] It can be obtained that sin(α / 2) ∈ [0,1], and the sharpness sharp = 1-|p i-k p i+k | / (|p i p i-k |+|p i p i+k |) of the circular arc of the contour on which the three points are located is defined. The greater the value of the sharpness sharp, the more acute the support angle α formed by the three points. When the value of the sharpness sharp is greater than a specified threshold T, the image represented by the contour on which the three points are located is determined as a sharp feature of the first model. Wherein, the distance k and the specified threshold T are determined based on application requirements, and embodiments of the present application do not make specific limitations thereto.

[0082] Step 4022, model segmentation is performed on the first model based on one or more sharp features, to obtain a second model.

[0083] In one possible implementation, the computing device can perform model segmentation on the first model by using a mask image. As shown in FIG. 8, the implementation process of step 4022 includes:

[0084] Step 4022a, based on the three-dimensional data, obtaining two-dimensional projections of the first model at multiple viewing angles, to obtain multiple two-dimensional projection images of the first model.

[0085] In the process of implementing the model segmentation of the first model by the computing device using the mask map, the two-dimensional mask map of the first model needs to be obtained first, and then the three-dimensional segmentation of the first model is performed based on the two-dimensional mask map. The two-dimensional mask map of the first model can be obtained by processing the two-dimensional projection map of the first model based on the sharp features of the first model. Therefore, the computing device needs to obtain the two-dimensional projection images of the first model at multiple viewing angles first. In a possible implementation, the two-dimensional projection images of the first model at multiple viewing angles can be obtained by performing orthogonal projection on the first model at multiple viewing angles respectively. For example, the two-dimensional projection images of the first model at multiple viewing angles are the orthogonal projection results obtained by performing orthogonal projection on the first model at multiple viewing angles.

[0086] The multiple viewing angles at which the orthogonal projection is performed on the first model can be selected based on application requirements. For example, in some implementation scenarios, the multiple viewing angles can be the front view angle, the side view angle, and the top view angle of the first model. Correspondingly, the two-dimensional projections of the first model at the multiple viewing angles are the front view, the side view, and the top view of the first model. In other implementation scenarios, the multiple viewing angles can include the viewing angles of the first model at other angles in addition to the front view angle, the side view angle, and the top view angle of the first model. For example, the viewing angles at the other angles are the viewing angles that can observe more details of the first model. For example, the viewing angles at the other angles include a viewing angle in which the front view angle of the first model is deviated from the side view angle by 30 degrees, and a viewing angle in which the side view angle of the first model is deviated from the top view angle by 45 degrees. The viewing angles at the other angles can be selected according to application requirements, and here they are not exemplified one by one.

[0087] Step 4022b, performing mask processing on the multiple two-dimensional projection images based on the one or more sharp features to obtain multiple two-dimensional mask maps, one of the mask part and the non-mask part in the two-dimensional mask map represents the image part with the sharp feature, and the other represents the image part without the sharp feature.

[0088] After obtaining the plurality of two-dimensional projection images of the first model, the computing device needs to mask the plurality of two-dimensional projection images based on one or more sharp features to obtain a plurality of two-dimensional mask images. In a possible implementation, the computing device masks the two-dimensional projection images based on the sharp features by setting one of the image part without the sharp feature and the image part with the sharp feature in the two-dimensional projection image as a mask, and setting the other as a non-mask. In this way, the two-dimensional mask image obtained after the masking includes a mask part and a non-mask part, and one of the mask part and the non-mask part represents the image part with the sharp feature, and the other represents the image part without the sharp feature. For example, after the computing device sets the image part without the sharp feature in the two-dimensional projection image as a mask and sets the image part with the sharp feature as a non-mask, the mask part of the two-dimensional mask image represents the image part without the sharp feature, and the non-mask part of the two-dimensional mask image represents the image part with the sharp feature. The mask part and the non-mask part in the two-dimensional mask image can be represented by different colors. For example, when the two-dimensional mask image is a black-and-white image, the mask part is represented by black, and the non-mask part is represented by white.

[0089] Step 4022c: performing three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data to obtain a second model.

[0090] After obtaining the plurality of two-dimensional mask images of the first model, the computing device can perform three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data of the first model.

[0091] In a possible implementation of step 4022c, when the computing device performs three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data of the first model, the computing device can first obtain a three-dimensional mask image of the first model based on the plurality of two-dimensional mask images, and then perform three-dimensional segmentation on the three-dimensional structure represented by the three-dimensional data by using the three-dimensional mask image, to obtain the second model. As shown in FIG. 9, the implementation process includes the following steps.

[0092] Step c1: obtaining a three-dimensional mask image of the first model based on the plurality of two-dimensional mask images.

[0093] In a possible implementation, the computing device can perform three-dimensional mapping based on the plurality of two-dimensional mask images to obtain a three-dimensional mask image of the first model. When performing three-dimensional mapping based on the two-dimensional mask images, the computing device needs to perform three-dimensional mapping based on the plurality of two-dimensional mask images representing the same sharp feature to obtain a three-dimensional mask image corresponding to the sharp feature. When the first model has one or more sharp features, one or more three-dimensional mask images corresponding to the one or more sharp features can be obtained, and any three-dimensional mask image is used to represent a three-dimensional image of the sharp feature corresponding to the three-dimensional mask image. The three-dimensional mask image corresponding to any sharp feature includes a mask portion and a non-mask portion, one of the mask portion and the non-mask portion represents a three-dimensional image of the corresponding sharp feature, and the other represents a three-dimensional image of an image portion other than the sharp feature. For example, in the case where the mask portion of the two-dimensional mask image represents an image portion without a sharp feature, and the non-mask portion of the two-dimensional mask image represents an image portion with a sharp feature, the mask portion of the three-dimensional mask image represents a three-dimensional image of the image portion without the sharp feature, and the non-mask portion of the three-dimensional mask image represents a three-dimensional image of the image portion with the sharp feature. The mask portion and the non-mask portion in the three-dimensional mask image can be represented by different colors. For example, when the three-dimensional mask image is a black-and-white image, the mask portion is represented by black, and the non-mask portion is represented by white.

[0094] Step c2, performing three-dimensional segmentation on the first model based on the three-dimensional mask image and the three-dimensional data to obtain a second model.

[0095] After obtaining the one or more three-dimensional mask maps of the first model, the computing device can perform three-dimensional segmentation on the three-dimensional image presented by the three-dimensional data using the one or more three-dimensional mask maps. When the first model has one or more sharp features, the computing device performs three-dimensional segmentation on the three-dimensional image presented by the three-dimensional data using the three-dimensional mask map corresponding to each sharp feature one by one. In one possible implementation, when the computing device performs three-dimensional segmentation on the three-dimensional image presented by the three-dimensional data using the three-dimensional mask map corresponding to a sharp feature, the computing device retains the three-dimensional image of the sharp feature in the three-dimensional image and discards the three-dimensional image of the part of the three-dimensional image other than the sharp feature, so as to obtain the three-dimensional image of the sharp feature segmented from the three-dimensional image presented by the three-dimensional data. After performing three-dimensional segmentation on the three-dimensional image presented by the three-dimensional data using the three-dimensional mask maps corresponding to all the sharp features, the computing device performs three-dimensional segmentation on the three-dimensional image presented by the three-dimensional data using the three-dimensional images of all the sharp features segmented from the three-dimensional image, and discards the three-dimensional images of all the sharp features in the three-dimensional image, so as to obtain the three-dimensional image of the part of the first model that does not have a sharp feature. In this way, the second model of the initial image can be obtained, where the second model includes a plurality of model parts, and the plurality of model parts are respectively: the three-dimensional images of the one or more sharp features and the three-dimensional image of the part of the first model that does not have a sharp feature. The retention of part of the three-dimensional image can be implemented by maintaining the three-dimensional data of the part of the three-dimensional image unchanged, and the discarding of part of the three-dimensional image can be implemented by initializing the three-dimensional data of the part of the three-dimensional image. For example, the discarding of part of the three-dimensional image can be implemented by setting the three-dimensional data of the part of the three-dimensional image to 0.

[0096] In another possible implementation of step 4022c, the implementation process includes: inputting the plurality of two-dimensional mask maps and the three-dimensional data into a segmentation model of the three-dimensional model to obtain the second model. For example, the segmentation model of the three-dimensional model can be a pre-trained SAGA model. By using the segmentation model of the three-dimensional model to segment the first model, the first model can be segmented better.

[0097] When the three-dimensional modeling method based on public cloud technology provided in the application is implemented through multiple function modules, the step 4021 and the step 4022 can be optionally performed by a segmentation module. As shown in FIG. 6, after the segmentation module obtains the three-dimensional data of the first model, one or more sharp features of the first model are obtained based on the three-dimensional data, and multiple two-dimensional projection images of the first model are obtained based on the three-dimensional data. Then, the multiple two-dimensional projection images are subjected to mask processing based on the one or more sharp features, to obtain multiple two-dimensional mask images. Then, the first model is subjected to three-dimensional segmentation based on the multiple two-dimensional mask images and the three-dimensional data, to obtain a second model.

[0098] The step 403 is to respectively perform implicit modeling on the multiple model parts to obtain implicit representations of the multiple model parts, and the implicit representation of any model part is used to indicate a relationship satisfied by all three-dimensional points in the any model part.

[0099] After the computing device segments the first model to obtain the multiple model parts, the computing device can perform implicit modeling on the multiple model parts respectively to obtain implicit representations of the multiple model parts. The implicit representation of any model part is used to indicate a relationship satisfied by all three-dimensional points in the any model part. The computing device can optionally select an implicit function according to application requirements, and instantiate coefficients in the selected implicit function according to three-dimensional data of a model part that needs to be represented, to implement implicit modeling on the model part. For example, the computing device selects a function based on a neural ray-surface distance field (RayDF) to perform implicit modeling on the model part.

[0100] Since the parameters in the implicit representation generated according to the ray-based neural ray-surface distance field can be edited, when the model parts are implicitly modeled using the function of the ray-based neural ray-surface distance field, the three-dimensional modeling method based on the public cloud technology provided in the present application further includes: providing the user with the implicit representations of the plurality of model parts, and receiving feedback of the user on the implicit representations of the plurality of model parts, in the case where the feedback of the user on the implicit representations of the plurality of model parts includes an instruction indicating modification of the implicit representation of a specified model part, modifying the implicit representation of the specified model part based on the instruction. Wherein, the feedback of the user on the implicit representations of the plurality of model parts includes: indicating consent to use the implicit representation for model rendering, or indicating modification of the implicit representation of the specified model part. Optionally, the computing device provides the user with the implicit representations of the plurality of model parts, and receives the feedback of the user on the implicit representations of the plurality of model parts, both of which can be implemented through an interactive interface, and the implementation thereof will be described in the foregoing relevant description, which will not be described here. In this way, the computing device is equivalent to providing the user with the function of parameterized editing of the implicit representations of the plurality of model parts, which can facilitate the user to modify the implicit representations according to the needs to obtain the modeling results that the user needs more, thereby improving the modeling experience of the user.

[0101] When the three-dimensional modeling method based on the public cloud technology provided in the present application is implemented through a plurality of functional modules, the above-mentioned step 403 can be optionally executed by an implicit modeling module. As shown in FIG. 6, after the implicit modeling module obtains the second model including a plurality of model parts, the implicit modeling module implicitly models the plurality of model parts respectively to obtain the implicit representations of the plurality of model parts.

[0102] Step 404, based on the implicit representations of the plurality of model parts, the third model is obtained by merging, the third model is modeled, and the rendering result of the third model is obtained and displayed to the user.

[0103] After the computing device obtains the implicit representation of each model part in the second model, the computing device can merge the plurality of model parts based on the implicit representations of the plurality of model parts to obtain a third model that presents as a whole model. Then the third model is modeled, and the rendering result of the third model is obtained and displayed to the user. Wherein, the computing device displaying the rendering result of the third model to the user can optionally include: outputting an image of the rendering result of the third model, and / or outputting a text for indicating the rendering result of the third model. The type of the text for indicating the rendering result of the third model can be selected according to the application requirements. For example, the type of the text for indicating the rendering result of the third model can be a binary file, which can indicate that the third model includes a plurality of model parts, each model part is represented by an implicit representation, and each implicit representation of the model part is continuous and differentiable.

[0104] In a possible implementation, the computing device can combine the plurality of model parts and the topological and positional relationships between different model parts to obtain the third model. The topological relationship of any model part is used to indicate the mutual relationship of the components in the model part that satisfy the topological geometry principle. For example, the topological relationship of a model part is used to indicate the adjacency, association, inclusion and connectivity relationship between the entities represented by the three-dimensional points, arcs and polygons in the model part. The topological relationship between any two model parts is used to indicate the mutual relationship of the components in the two model parts that satisfy the topological geometry principle. For example, the topological relationship between two model parts is used to indicate the adjacency, association, inclusion and connectivity relationship between the entities represented by the three-dimensional points, arcs and polygons in the two model parts. The positional relationship of any model part is used to indicate the relative position between the spatial data in the model part that satisfy the positional geometry principle. For example, the positional relationship of a model part is used to indicate the relative position between the entities represented by the three-dimensional points, arcs and polygons in the model part. The positional relationship between different model parts is used to indicate the relative position between the spatial data in the different model parts that satisfy the positional geometry principle. For example, the positional relationship between two model parts is used to indicate the relative position between the entities represented by the three-dimensional points, arcs and polygons in the two model parts.

[0105] In the combining of the third model based on the plurality of model parts and the topological relationship and the positional relationship between different model parts, the computing device can optionally obtain model parts in an adjacent position with any model part in the second model according to the topological relationship and the positional relationship, determine the mutual influence between the boundary regions of the two model parts in the adjacent position according to the implicit representation of the model parts in the adjacent position, and then update the implicit representation of the boundary regions of the two model parts in the adjacent position according to the mutual influence. After processing all the model parts in the second model according to the logic, the implicit representation of the third model that presents as an integral model can be obtained. The implicit representation of the third model can be regarded as a three-dimensional model represented by a plurality of piecewise functions. For example, the mutual influence between the boundary regions of the two model parts includes nesting between the model parts. Then, updating the implicit representation of the boundary regions of the two model parts in the adjacent position according to the mutual influence includes: according to the nesting between the model parts, retaining the implicit representation of the three-dimensional points in the two model parts that are visible from the outside of the model, modifying the depth information of the three-dimensional points in the two model parts whose depth in the model changes due to the nesting, and deleting the implicit representation of the three-dimensional points in the two model parts that are invisible from the outside of the model. The boundary region of a model part is the region of the three-dimensional points in the model part that are affected by the model part in the adjacent position. In determining the mutual influence between the boundary regions of the model part a and the model part b in the adjacent position, the three-dimensional points in the model part a can be traversed from the three-dimensional points in the model part a closest to the model part b in a direction away from the model part b, so as to obtain all the three-dimensional points in the model part a that are affected by the model part b. The region of all the three-dimensional points in the model part a that are affected by the model part b is the boundary region of the model part a. It should be noted that the mutual influence between the boundary regions of the two model parts can also have other influence modes, and correspondingly, updating the implicit representation of the boundary regions of the two model parts in the adjacent position according to the mutual influence can also have other implementation modes, which will not be exemplified one by one here.

[0106] Optionally, the plurality of model parts and the topological relationship and position relationship between different model parts included in the second model can be represented by graph data. For example, represented by a directed acyclic graph (DAG). The directed acyclic graph can present the topological relationship between layers and the spatial position information. After obtaining the plurality of model parts and the topological relationship and position relationship between different model parts included in the second model, the topological relationship and position relationship can be serialized, and then encoded in the directed acyclic graph according to the order indicated by the topological relationship and position relationship, and the topological relationship and position relationship are recorded in the directed acyclic graph. Among them, when encoding in the directed acyclic graph according to the order indicated by the topological relationship and position relationship, the information capable of representing the graph structure, that is, the topological relationship, is encoded by a graph encoding method, and the position relationship is encoded by a position encoding method, and then the two are jointly encoded in the directed acyclic graph through a space attention mechanism. Since the representation of the directed acyclic graph is relatively simple, the representation of the topological relationship and position relationship between the plurality of model parts and different model parts can be simplified by representing the topological relationship and position relationship between the plurality of model parts and different model parts by the directed acyclic graph.

[0107] In another possible implementation, as shown in FIG. 10, the implementation process of step 404 includes:

[0108] Step 4041, performing model rendering based on the implicit representation of the plurality of model parts to obtain the rendering result of the plurality of model parts.

[0109] After the computing device obtains the implicit representation of the plurality of model parts included in the first model, the computing device can perform model rendering based on the implicit representation of the plurality of model parts to obtain the rendering result of the plurality of model parts.

[0110] Step 4042, integrating the rendering results of the plurality of model parts based on the topological relationship and position relationship between the plurality of model parts and different model parts to obtain and display the rendering result of the third model to the user.

[0111] After the computing device obtains the rendering result of the plurality of model parts, the computing device integrates the rendering results of the plurality of model parts to integrate the plurality of model parts into the third model presenting as a whole model. When the computing device integrates the rendering results of the plurality of model parts, the computing device can perform the integration based on the topological relationship and position relationship between the plurality of model parts and different model parts.

[0112] In a possible implementation, the computing device obtains model parts that are in an adjacent position with any model part in the second model based on the plurality of model parts and the topological relationship and the positional relationship between different model parts, determines the mutual influence between the boundary areas of the two model parts in the adjacent position according to the rendering result and the implicit representation of the model parts in the adjacent position, and updates the rendering result of the boundary areas of the two model parts in the adjacent position according to the mutual influence. After the rendering result of all the model parts in the second model is processed according to the logic, the rendering result of the third model that presents as an integral model is obtained. For example, the mutual influence between the boundary areas of the two model parts includes nesting between the model parts. Then, updating the rendering result of the boundary areas of the two model parts in the adjacent position according to the mutual influence includes: according to the nesting between the model parts, retaining the rendering result of the three-dimensional points in the two model parts that are visible from outside the model, modifying the rendering effect of the three-dimensional points in the two model parts that change in depth in the model due to the nesting in the depth, and deleting the rendering result of the three-dimensional points in the two model parts that are invisible from outside the model. It should be noted that the mutual influence between the boundary areas of the two model parts can also have other influence modes, and accordingly, updating the rendering result of the boundary areas of the two model parts in the adjacent position according to the mutual influence can also have other implementation modes, which are not exemplified one by one here.

[0113] When the three-dimensional modeling method based on the public cloud technology provided in the present application is implemented by a plurality of functional modules, the above step 404 can be executed by a model rendering module and an interaction module. As shown in FIG. 6, the model rendering module obtains a third model based on the implicit representation of the plurality of model parts, performs model rendering on the third model, and obtains the rendering result of the third model. The interaction module displays the rendering result of the third model to the user.

[0114] Step 405, receiving a modification instruction of the user for the rendering result of the third model, the modification instruction being used to indicate modifying the rendering result of the third model.

[0115] After the computing device displays the rendering result of the third model to the user, the user can determine whether the rendering result of the third model is the rendering result expected by the user, and feed back the determination result to the computing device. For example, when the determination result of the user is that the rendering result of the third model meets the expectation of the user, the user sends an instruction indicating that the rendering result is received to the computing device through the client used by the user. When the determination result of the user is that the rendering result of the third model does not meet the expectation of the user, the user sends a modification instruction indicating that the rendering result of the third model is modified to the computing device through the client used by the user. The modification indicated by the modification instruction can include, but is not limited to, magnifying or reducing the local details of a specified region in the rendering result, adjusting the sharpness of a sharp feature presented in the rendering result, adjusting the color, brightness and texture of a specified region in the rendering result. It should be noted that the modification herein is only an example, and the user can also indicate other aspects of the rendering result for modification, which will not be exemplified one by one in this application.

[0116] At step 406, the rendering result of the third model is modified based on the modification instruction, and the user is displayed the rendering result of the third model after the modification.

[0117] After the computing device receives the modification instruction sent by the user, the rendering result of the third model is modified according to the modification instruction, and the user is displayed the rendering result of the third model after the modification. In this way, the computing device provides the user with the function of adjusting the rendering result of the third model, which can facilitate the user to adjust the rendering result of the third model according to the needs to obtain a modeling result that the user needs more, thereby improving the user's modeling experience.

[0118] In summary, in this application, since the second model includes a plurality of model parts, and each of the one or more model parts of the second model has one or more sharp features, the computing device is equivalent to segmenting the first model based on the sharp features. The computing device respectively performs implicit modeling on the plurality of model parts, which is equivalent to performing implicit modeling for different sharp features respectively, and obtains a plurality of implicit representations respectively representing the plurality of model parts. Since different implicit representations have different characteristics, using a plurality of implicit representations to represent a plurality of model parts, compared with using one implicit representation to represent the entire first model, not only the plurality of implicit representations are all continuous and differentiable, which can inherit the advantages of implicit modeling, but also since any implicit representation can describe the characteristics of the model part it represents, so that any implicit representation can describe the model part it represents more meticulously, and can describe the details of the model part it represents more clearly and accurately. Therefore, by using the three-dimensional modeling method based on the public cloud technology provided in this application to perform three-dimensional modeling, the clarity and accuracy of the three-dimensional modeling result can be effectively improved, and the modeling quality of the three-dimensional modeling result can be improved.

[0119] And, since the modeling complexity of the individual model parts is reduced compared to the modeling complexity of the entire first model, the computing device reduces the complexity of modeling the first model and improves the modeling efficiency of modeling the first model by segmenting the first model into the plurality of model parts and modeling the plurality of model parts respectively, and the effect is particularly obvious for complex models.

[0120] It should be noted that the order of the steps of the three-dimensional modeling method based on the public cloud technology provided in the embodiments of the present application can be adjusted appropriately, and the steps can be increased or decreased as appropriate. Any person skilled in the art can easily think of changes within the scope of the technology disclosed in the present application, which should be covered within the protection scope of the present application, and therefore will not be described again.

[0121] The virtual device of the embodiments of the present application is illustrated below.

[0122] The three-dimensional modeling method based on the public cloud technology of the embodiments of the present application is introduced above. Corresponding to the above method, the three-dimensional modeling device based on the public cloud technology is also provided in the embodiments of the present application. FIG. 11 is a structural schematic diagram of a three-dimensional modeling device based on the public cloud technology according to an embodiment of the present application. Based on the following plurality of components shown in FIG. 11, the three-dimensional modeling device based on the public cloud technology shown in FIG. 11 can perform all or part of the operations shown in FIG. 4. It should be understood that the device can include more additional components than the components shown or omit part of the components shown, and the embodiments of the present application do not limit this. Optionally, the three-dimensional modeling device based on the public cloud technology can be applied to a cloud platform. As shown in FIG. 11, the three-dimensional modeling device based on the public cloud technology 110 can include:

[0123] The interaction unit 1101 is configured to obtain three-dimensional data of a first model input by a user, the three-dimensional data being an explicit representation of the first model, and the explicit representation being used to indicate positions of all three-dimensional points in the first model.

[0124] The segmentation unit 1102 is configured to perform model segmentation on the first model based on the three-dimensional data to obtain a second model including a plurality of model parts, each of one or more model parts of the second model having one or more sharp features, and a sharpness of the sharp feature being greater than a specified threshold.

[0125] The modeling unit 1103 is configured to perform implicit modeling on the plurality of model parts respectively to obtain implicit representations of the plurality of model parts, and the implicit representation of any model part being used to indicate a relationship satisfied by all three-dimensional points in the any model part.

[0126] The rendering unit 1104 is configured to combine the implicit representations of the plurality of model parts to obtain a third model, perform model rendering on the third model, and obtain a rendering result of the third model.

[0127] The interaction unit 1101 is further configured to display the rendering result of the third model to the user.

[0128] In a possible implementation, the interaction unit 1101 is further configured to receive a modification instruction of the user for the rendering result of the third model, where the modification instruction is used to instruct modification of the rendering result of the third model; the rendering unit 1104 is further configured to modify the rendering result of the third model based on the modification instruction; and the interaction unit 1101 is further configured to display the modified rendering result of the third model to the user.

[0129] In a possible implementation, the segmentation unit 1102 is specifically configured to: obtain one or more sharp features of the first model based on the three-dimensional data; and perform model segmentation on the first model based on the one or more sharp features to obtain the second model.

[0130] In a possible implementation, the segmentation unit 1102 is specifically configured to: obtain a plurality of two-dimensional projection images of the first model based on the three-dimensional data, where the plurality of two-dimensional projection images are obtained in a plurality of perspectives; perform mask processing on the plurality of two-dimensional projection images based on the one or more sharp features to obtain a plurality of two-dimensional mask images, where one of a mask part and a non-mask part in the two-dimensional mask image represents an image part with a sharp feature, and the other represents an image part without a sharp feature; and perform three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data to obtain the second model.

[0131] In a possible implementation, the segmentation unit 1102 is specifically configured to: obtain a three-dimensional mask image of the first model based on the plurality of two-dimensional mask images; and perform three-dimensional segmentation on the first model based on the three-dimensional mask image and the three-dimensional data to obtain the second model.

[0132] In a possible implementation, the segmentation unit 1102 is specifically configured to: input the plurality of two-dimensional mask images and the three-dimensional data into a segmentation model of a three-dimensional model to obtain the second model.

[0133] In a possible implementation, the rendering unit 1104 is specifically configured to: combine the plurality of model parts and the topological relationship and the positional relationship between different model parts to obtain the third model, where the topological relationship of any model part is used to indicate the mutual relationship of constituent parts in the any model part, and the topological relationship between any two model parts is used to indicate the mutual relationship of constituent parts in the any two model parts.

[0134] In a possible implementation, the second model includes a plurality of model parts and a topology relationship and a position relationship between different model parts are represented by graph data.

[0135] Here, the detailed working processes of the interaction unit 1101, the segmentation unit 1102, the modeling unit 1103, and the rendering unit 1104 can refer to the descriptions in the foregoing method embodiments. For example, the interaction unit 1101 acquires the three-dimensional data of the first model input by the user by using the foregoing step 401. The segmentation unit 1102 performs model segmentation on the first model based on the three-dimensional data to obtain the second model including a plurality of model parts by using the foregoing step 402. The modeling unit 1103 performs implicit modeling on the plurality of model parts respectively to obtain the implicit representations of the plurality of model parts by using the foregoing step 403. The rendering unit 1104 merges the third model based on the implicit representations of the plurality of model parts to obtain the third model, and performs model rendering on the third model to obtain the rendering result of the third model by using the foregoing step 404.

[0136] The interaction unit 1101, the segmentation unit 1102, the modeling unit 1103, and the rendering unit 1104 can be implemented by software or can be implemented by hardware. For example, the implementation of the interaction unit 1101 is described below. Similarly, the implementation of the segmentation unit 1102, the modeling unit 1103, and the rendering unit 1104 can refer to the implementation of the interaction unit 1101.

[0137] As an example of a software function unit, the interaction unit 1101 can include code running on a computing instance. The computing instance can include at least one of a physical host (computing device), a virtual machine, and a container. Further, the computing instance can be one or more. For example, the interaction unit 1101 can include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code can be distributed in the same region (region) or in different regions. Further, the multiple hosts / virtual machines / containers used to run the code can be distributed in the same availability zone (AZ) or in different AZs, and each AZ includes one cloud data center or multiple cloud data centers with similar geographical locations. Generally, one region can include multiple AZs.

[0138] Likewise, the multiple hosts / virtual machines / containers for running the code can be distributed in the same virtual private cloud (VPC) or in multiple VPCs. Among them, usually one VPC is set in one region, and a communication gateway needs to be set in each VPC for cross-region communication between two VPCs in the same region and between VPCs in different regions, and the interconnection between VPCs is realized through the communication gateway.

[0139] As an example of a hardware functional unit, the interaction unit 1101 can include at least one computing device, such as a server, etc. Alternatively, the interaction unit 1101 can also be a device implemented by an application-specific integrated circuit (ASIC) or a programmable logic device (PLD), etc. Among them, the above-mentioned PLD can be implemented by a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.

[0140] The multiple computing devices included in the interaction unit 1101 can be distributed in the same region or in different regions. The multiple computing devices included in the interaction unit 1101 can be distributed in the same AZ or in different AZs. Likewise, the multiple computing devices included in the interaction unit 1101 can be distributed in the same VPC or in multiple VPCs. Among them, the multiple computing devices can be any combination of servers, ASICs, PLDs, CPLDs, FPGAs, and GALs, etc.

[0141] It should be noted that in other embodiments, any one of the interaction unit 1101, the segmentation unit 1102, the modeling unit 1103, and the rendering unit 1104 can be used to perform any step in the three-dimensional modeling method based on public cloud technology. The steps responsible for the implementation of the interaction unit 1101, the segmentation unit 1102, the modeling unit 1103, and the rendering unit 1104 can be specified as needed, and the overall function of the three-dimensional modeling device based on public cloud technology is realized by the interaction unit 1101, the segmentation unit 1102, the modeling unit 1103, and the rendering unit 1104 respectively implementing different steps in the three-dimensional modeling method based on public cloud technology.

[0142] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of each component described above can refer to the corresponding content in the foregoing method embodiments, and will not be repeated here.

[0143] The basic hardware structure related to the embodiments of the present application is illustrated below.

[0144] The present application also provides a computing device 1200. As shown in FIG. 12, the computing device 1200 includes a bus 1202, a processor 1204, a memory 1206, and a communication interface 1208. The processor 1204, the memory 1206, and the communication interface 1208 communicate through the bus 1202. The computing device 1200 can be a server or a terminal device. It should be understood that the present application does not limit the number of processors and memories in the computing device 1200.

[0145] The bus 1202 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For the convenience of representation, only one line is shown in FIG. 12, but it does not mean that there is only one bus or only one type of bus. The bus 1202 can include a path for transmitting information between various components (e.g., the memory 1206, the processor 1204, the communication interface 1208) of the computing device 1200.

[0146] The processor 1204 can include any one or more of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP), etc.

[0147] The memory 1206 can include a volatile memory, such as a random access memory (RAM). The processor 1204 can also include a non-volatile memory, such as a read-only memory (ROM), a flash memory, a mechanical hard disk drive (HDD), or a solid state drive (SSD).

[0148] The memory 1206 stores executable program code, and the processor 1204 executes the executable program code to respectively implement the functions of the aforementioned interaction unit 1101, the segmentation unit 1102, the modeling unit 1103, and the rendering unit 1104, so as to implement the three-dimensional modeling method based on public cloud technology. That is, the memory 1206 stores instructions for executing the three-dimensional modeling method based on public cloud technology.

[0149] The communication interface 1208 uses a transceiving module such as but not limited to a network interface card and a transceiver to implement communication between the computing device 1200 and other devices or communication networks.

[0150] The embodiments of the present application also provide a computing device cluster. The computing device cluster includes at least one computing device. The computing device can be a server, for example, a central server, an edge server, or a local server in a local data center. In some embodiments, the computing device can also be a terminal device such as a desktop computer, a notebook computer, or a smart phone.

[0151] As shown in FIG. 13, the computing device cluster includes at least one computing device 1200. The memory 1206 in one or more computing devices 1200 in the computing device cluster can store the same instructions for executing the three-dimensional modeling method based on public cloud technology.

[0152] In some possible implementations, the memory 1206 of one or more computing devices 1200 in the computing device cluster can also respectively store partial instructions for executing the three-dimensional modeling method based on public cloud technology. In other words, the combination of one or more computing devices 1200 can collectively execute the instructions for executing the three-dimensional modeling method based on public cloud technology.

[0153] It should be noted that the memories 1206 in different computing devices 1200 in the computing device cluster can store different instructions, respectively used to execute partial functions of the three-dimensional modeling device based on public cloud technology. That is, the instructions stored in the memories 1206 in different computing devices 1200 can implement the functions of one or more modules of the interaction unit 1101, the segmentation unit 1102, the modeling unit 1103, and the rendering unit 1104.

[0154] In some possible implementation manners, one or more of the computing devices in the computing device cluster can be connected through a network. The network can be a wide area network or a local area network, etc. FIG. 14 shows one possible implementation manner. As shown in FIG. 14, two computing devices 1200A and 1200B are connected through a network. Specifically, the computing devices are connected to the network through communication interfaces in the computing devices. In this kind of possible implementation manner, the memory 1206 in the computing device 1200A stores instructions for performing the functions of the interaction unit 1101 and the segmentation unit 1102. Meanwhile, the memory 1206 in the computing device 1200B stores instructions for performing the functions of the modeling unit 1103 and the rendering unit 1104.

[0155] The connection manner between the computing device cluster shown in FIG. 14 can be that, considering that the three-dimensional modeling method based on the public cloud technology provided in the present application needs to store a large amount of data, it is considered to perform the functions implemented by the modeling unit 1103 and the rendering unit 1104 by the computing device 1200B.

[0156] It should be understood that the functions of the computing device 1200A shown in FIG. 14 can also be completed by multiple computing devices 1200. Similarly, the functions of the computing device 1200B can also be completed by multiple computing devices 1200.

[0157] The present application also provides another computing device cluster. The connection relationship between the computing devices in the computing device cluster can be similar to the connection manners of the computing device clusters shown in FIG. 13 and FIG. 14. The difference is that the memory 1206 in one or more of the computing devices 1200 in the computing device cluster can store the same instructions for performing the three-dimensional modeling method based on the public cloud technology.

[0158] In some possible implementation manners, the memory 1206 of one or more of the computing devices 1200 in the computing device cluster can also respectively store part of the instructions for performing the three-dimensional modeling method based on the public cloud technology. In other words, the combination of one or more of the computing devices 1200 can collectively execute the instructions for performing the three-dimensional modeling method based on the public cloud technology.

[0159] The present application also provides a computer program product containing instructions. The computer program product can be a software or program product containing instructions, which can be run on a computing device or stored in any available medium. When the computer program product is run on at least one computing device, the at least one computing device is caused to perform the three-dimensional modeling method based on the public cloud technology.

[0160] The embodiments of the present application further provide a computer readable storage medium. The computer readable storage medium can be any available medium or data storage device that can be accessed by a computing device including one or more available media. The available media can be a magnetic medium (e.g., a floppy diskette, a hard disk drive, a magnetic tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid state hard drive), etc. The computer readable storage medium includes instructions that instruct the computing device to perform the method for three-dimensional modeling based on public cloud technology, or instruct the computing device to perform the method for three-dimensional modeling based on public cloud technology.

[0161] Those skilled in the art can understand that all or part of the steps of the above-mentioned embodiments can be completed by hardware, or by programs instructing relevant hardware, and the programs can be stored in a computer readable storage medium. The storage medium mentioned above can be a read-only memory, a disk or an optical disk, etc.

[0162] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data for analysis, stored data, displayed data, etc.) and signals involved in the present application are all authorized by the user or fully authorized by all parties, and the collection, use and processing of related data need to comply with relevant laws, regulations and standards of relevant countries and regions. For example, the raw data and executable codes involved in the present application are obtained under sufficient authorization.

[0163] In the embodiments of the present application, the terms "first", "second" and "third" are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance. The term "at least one" means one or more, and the term "multiple" means two or more, unless otherwise explicitly limited.

[0164] In the present application, the term "and / or" is only used to describe the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B can mean that A exists alone, A and B exist together, and B exists alone. In addition, the character " / " in this paper generally represents that the front and rear associated objects have an "or" relationship.

[0165] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for part of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the protection scope of the technical solutions of the embodiments of the present application.

Claims

1. A three-dimensional modeling method based on public cloud technology, characterized in that, The method is applied to a cloud platform, and the method comprises: obtaining three-dimensional data of a first model input by a user, the three-dimensional data being an explicit representation of the first model, the explicit representation being used to indicate positions of all three-dimensional points in the first model; performing model segmentation on the first model based on the three-dimensional data to obtain a second model comprising a plurality of model parts, each of one or more model parts of the second model having one or more sharp features, the sharp features having a sharpness greater than a specified threshold; performing implicit modeling on the plurality of model parts respectively to obtain implicit representations of the plurality of model parts, the implicit representation of any model part being used to indicate a relationship satisfied by all three-dimensional points in the any model part; merging the implicit representations of the plurality of model parts to obtain a third model, and performing model rendering on the third model to obtain and display a rendering result of the third model to the user.

2. The method of claim 1, wherein, The method further comprises: receiving a modification instruction of the user for the rendering result of the third model, the modification instruction being used to indicate modification on the rendering result of the third model; modifying the rendering result of the third model based on the modification instruction, and displaying the modified rendering result of the third model to the user.

3. The method of claim 1 or 2, wherein, The model segmentation on the first model based on the three-dimensional data to obtain a second model comprising a plurality of model parts comprises: obtaining one or more sharp features of the first model based on the three-dimensional data; performing model segmentation on the first model based on the one or more sharp features to obtain the second model.

4. The method of claim 3, wherein, The model segmentation on the first model based on the one or more sharp features to obtain the second model comprises: obtaining two-dimensional projections of the first model at a plurality of viewing angles based on the three-dimensional data to obtain a plurality of two-dimensional projection images of the first model; performing mask processing on the plurality of two-dimensional projection images based on the one or more sharp features to obtain a plurality of two-dimensional mask images, one of a mask part and a non-mask part in the two-dimensional mask image representing an image part having the sharp feature, and the other representing an image part not having the sharp feature; performing three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data to obtain the second model.

5. The method of claim 4, wherein, The three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data to obtain the second model comprises: obtaining a three-dimensional mask image of the first model based on the plurality of two-dimensional mask images; performing three-dimensional segmentation on the first model based on the three-dimensional mask image and the three-dimensional data to obtain the second model.

6. The method of claim 4, wherein, The three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data to obtain the second model comprises: inputting the plurality of two-dimensional mask images and the three-dimensional data into a segmentation model of a three-dimensional model to obtain the second model.

7. The method of any one of claims 1 to 6, wherein, The merging of the implicit representations of the plurality of model parts to obtain a third model comprises: The third model is obtained by merging based on the plurality of model parts and the topological relations and position relations between different model parts, and the topological relation of any model part is used to indicate the mutual relation of components in the any model part, and the topological relation between any two model parts is used to indicate the mutual relation of components in the any two model parts.

8. The method of claim 7, wherein, The plurality of model parts and the topological relations and position relations between different model parts included in the second model are represented by graph data.

9. A three-dimensional modeling device based on public cloud technology, characterized by, The device is applied to a cloud platform, and the device comprises: The interaction unit is configured to obtain three-dimensional data of a first model input by a user, the three-dimensional data being an explicit expression of the first model, and the explicit expression being used to indicate positions of all three-dimensional points in the first model. The segmentation unit is configured to perform model segmentation on the first model based on the three-dimensional data to obtain a second model comprising a plurality of model parts, each model part in one or more model parts of the second model having one or more sharp features, and a sharpness of the sharp features being greater than a specified threshold. The modeling unit is configured to perform implicit modeling on the plurality of model parts respectively to obtain implicit expressions of the plurality of model parts, and the implicit expression of any model part being used to indicate a relation satisfied by all three-dimensional points in the any model part. The rendering unit is configured to obtain a third model by merging based on the implicit expressions of the plurality of model parts, and perform model rendering on the third model to obtain a rendering result of the third model. The interaction unit is further configured to display the rendering result of the third model to the user.

10. The device of claim 9, wherein The interaction unit is further configured to receive a modification instruction of the user for the rendering result of the third model, the modification instruction being used to indicate modification of the rendering result of the third model. The rendering unit is further configured to modify the rendering result of the third model based on the modification instruction. The interaction unit is further configured to display the modified rendering result of the third model to the user.

11. The apparatus of claim 9 or 10, wherein, The segmentation unit is specifically configured to: obtain one or more sharp features of the first model based on the three-dimensional data; and perform model segmentation on the first model based on the one or more sharp features to obtain the second model.

12. The apparatus of claim 11, wherein, The segmentation unit is specifically configured to: obtain two-dimensional projections of the first model at a plurality of viewing angles based on the three-dimensional data to obtain a plurality of two-dimensional projection images of the first model; perform mask processing on the plurality of two-dimensional projection images based on the one or more sharp features to obtain a plurality of two-dimensional mask images, one of a mask part and a non-mask part in the two-dimensional mask image representing an image part having the sharp feature, and the other representing an image part not having the sharp feature; perform three-dimensional segmentation on the first model based on the plurality of two-dimensional mask images and the three-dimensional data to obtain the second model.

13. The apparatus of claim 12, wherein, The segmentation unit is specifically configured to: obtain a three-dimensional mask image of the first model based on the plurality of two-dimensional mask images. Perform three-dimensional segmentation on the first model based on the three-dimensional mask map and the three-dimensional data to obtain the second model.

14. The apparatus of claim 12, wherein, The segmentation unit is specifically configured to: Input the plurality of two-dimensional mask maps and the three-dimensional data into a three-dimensional model segmentation model to obtain the second model.

15. The apparatus of any one of claims 9 to 14, wherein, The rendering unit is specifically configured to: Merge the plurality of model parts and the topological relationship and position relationship between different model parts to obtain the third model, and the topological relationship of any model part is used to indicate the mutual relationship of components in the any model part, and the topological relationship between any two model parts is used to indicate the mutual relationship of components in the any two model parts.

16. The apparatus of claim 15, wherein, The plurality of model parts included in the second model and the topological relationship and position relationship between different model parts are represented by graph data.

17. A cluster of computing devices, characterized in that, The computer program product comprises a plurality of computing devices, the plurality of computing devices comprising a plurality of processors and a plurality of memories, the plurality of memories storing program instructions, and the plurality of processors executing the program instructions to cause the computing device cluster to perform the method according to any one of claims 1 to 8.

18. A computer-readable storage medium, characterized in that, The computer program product comprises program instructions, and when the program instructions are executed on a computing device, the computing device is caused to perform the method according to any one of claims 1 to 8.

19. A computer program product comprising instructions, characterized in that, The computer program product comprises program instructions, and when the program instructions are executed on a computing device, the computing device is caused to perform the method according to any one of claims 1 to 8.