Method and device for determining placement posture of three-dimensional model and electronic equipment
By screening and determining the optimal placement of the 3D model, the problem of poor printing quality was solved, ensuring that the target part was not affected by the support structure during the printing process, and improving the overall printing effect.
Patent Information
- Application Number
- CN202510882669.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-27
- Publication Date
- 2025-10-17
Smart Images

Figure CN120807623A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of data processing, and in particular, to a method and device for determining a pose of a three-dimensional model and an electronic device. BACKGROUND
[0002] In related technologies, when printing a model, the pose of the model needs to be adjusted, and different poses will affect the printing effect of the model. In related technologies, when printing a three-dimensional model using a determined pose, there is a technical problem of poor effect of the printed three-dimensional model.
[0003] To address the above problems, no effective solutions have been proposed so far. SUMMARY
[0004] Embodiments of the present application provide a method and device for determining a pose of a three-dimensional model and an electronic device to at least solve the technical problem of poor effect of a printed three-dimensional model when printing a three-dimensional model using a determined pose in related technologies.
[0005] According to an aspect of an embodiment of the present application, a method for determining a pose of a three-dimensional model is provided, including: obtaining a three-dimensional model, the three-dimensional model including a target portion; determining a plurality of poses of the three-dimensional model, the poses including a pose angle and a pose direction; determining at least one candidate pose of the three-dimensional model from the plurality of poses, a proportion of a first set of triangular facets of the target portion in the three-dimensional model in the candidate pose to all facets of the target portion being greater than a threshold, wherein an inclination angle of the first set of triangular facets to a horizontal plane is within a predetermined range; and determining a target pose from the at least one candidate pose based on at least one of the following parameters: a total area of the first set of triangular facets, a cumulative volume of areas and heights of the first set of triangular facets, a projection area of the three-dimensional model on the horizontal plane, a height of the three-dimensional model, and a volume of a minimum bounding box completely surrounding the three-dimensional model.
[0006] Optionally, the predetermined range is any one of the following: 40-90 degrees, 45-90 degrees, and 60-90 degrees.
[0007] Optionally, the target portion includes at least one of the following: a first portion having a higher accuracy than the rest of the three-dimensional model; a second portion having a pattern; or a third portion having a mounting fitting feature.
[0008] Optionally, the plurality of poses includes at least one of the following: at least one pose positioned by rotating around an X-axis of a three-dimensional coordinate system; or at least one pose positioned by rotating around a Y-axis of the three-dimensional coordinate system.
[0009] Optionally, the determining the target placement pose from the at least one candidate placement pose comprises: sorting the at least one candidate placement pose based on the parameter, and determining the target placement pose.
[0010] Optionally, the sorting the at least one candidate placement pose based on the parameter, and determining the target placement pose comprises: when the parameter is multiple, determining an influence weight corresponding to each of the multiple parameters; and sorting the at least one candidate placement pose based on the multiple parameters and the influence weight corresponding to each of the multiple parameters, and determining the target placement pose.
[0011] Optionally, the target portion comprises at least one of a first group of triangular facets or a second group of triangular facets, and the second group of triangular facets has an inclination angle with respect to a horizontal plane that is not within a predetermined range.
[0012] According to an aspect of some embodiments of the present application, there is provided a device for determining a placement pose of a three-dimensional model, comprising: a first determining module configured to determine a plurality of placement poses of the three-dimensional model, the placement poses comprising a placement angle and a placement direction; a second determining module configured to determine at least one candidate placement pose of the three-dimensional model from the plurality of placement poses, a first group of triangular facets of a target portion of the three-dimensional model in the candidate placement pose having a proportion with respect to all facets of the target portion that is greater than a threshold value, and the first group of triangular facets having an inclination angle with respect to a horizontal plane that is within a predetermined range; and a third determining module configured to determine a target placement pose from the at least one candidate placement pose based on at least one of the following parameters: a total area of the first group of triangular facets, a cumulative volume of areas of the first group of triangular facets and heights, a projection area of the three-dimensional model on a horizontal plane, a height of the three-dimensional model, and a volume of a minimum bounding box completely surrounding the three-dimensional model.
[0013] According to an aspect of some embodiments of the present application, there is provided an electronic device, comprising: a processor; a memory for storing instructions executable by the processor; wherein the processor is configured to execute the instructions to implement any of the above-mentioned methods for determining a placement pose of a three-dimensional model.
[0014] According to an aspect of some embodiments of the present application, there is provided a computer-readable storage medium, when instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device is enabled to implement any of the above-mentioned methods for determining a placement pose of a three-dimensional model.
[0015] In the embodiment of the present application, a three-dimensional model is acquired, and the three-dimensional model comprises a target part; a plurality of placement postures of the three-dimensional model are determined, and the placement postures comprise a placement angle and a placement direction; at least one candidate placement posture of the three-dimensional model is determined from the plurality of placement postures, a proportion of a first set of triangular facets of the target part in all facets of the target part in the three-dimensional model in the candidate placement posture is greater than a threshold value, and an inclination angle of the first set of triangular facets to a horizontal plane is within a predetermined range; and a target placement posture is determined from the at least one candidate placement posture based on at least one of the following parameters: a total area of the first set of triangular facets, a cumulative volume of areas of the first set of triangular facets and heights, a projection area of the three-dimensional model on the horizontal plane, a height of the three-dimensional model, and a volume of a minimum bounding box completely surrounding the three-dimensional model. By screening at least one candidate placement posture from the plurality of placement postures comprising the placement angle and the placement direction according to the proportion of the first set of triangular facets to all facets of the target part, it can be ensured that the target part of the three-dimensional model in the selected candidate placement posture is not affected by excessive support structures when printing, and on this basis, the effect of each candidate placement posture can be objectively quantified from different dimensions according to the above parameters, thereby improving the overall placement effect of the three-dimensional model while meeting the protection requirements of the target part, and thereby solving the technical problem of poor printing effect of the three-dimensional model in the related art when printing the three-dimensional model using a determined placement parameter. BRIEF DESCRIPTION OF DRAWINGS
[0016] The accompanying drawings, which are included to provide a further understanding of the present application and are incorporated in and constitute a part of this application, illustrate embodiments of the present application and together with the description serve to explain the present application. In the drawings:
[0017] Figure 1 is a flowchart of a method for determining a placement posture of a three-dimensional model according to an embodiment of the present application;
[0018] Figure 2 is a placement optimization interface schematic diagram for comparison in an optional embodiment of the present application;
[0019] Figure 3 is a flowchart of a placement optimization method in an optional embodiment of the present application;
[0020] Figure 4 is a structural block diagram of a device for determining a placement posture of a three-dimensional model according to an embodiment of the present application. DETAILED DESCRIPTION
[0021] In the following, the technical solutions in the embodiments of the present application will be described clearly and completely with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all the other embodiments obtained by a person of ordinary skill in the art without creative effort should belong to the scope of protection of the present application.
[0022] It should be noted that the terms "first", "second" and the like in the description and claims of the present application and the above drawings are used to distinguish similar objects, and do not necessarily indicate a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments of the application described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device that includes a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but can include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0023] According to an embodiment of the present application, an embodiment of a method for determining the placement posture of a three-dimensional model is provided. It should be noted that the steps shown in the flowchart of the drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described herein can be executed in an order different from that shown herein.
[0024] Figure 1 is a flowchart of a method for determining the placement posture of a three-dimensional model according to an embodiment of the present application, as shown in Figure 1 The method comprises the following steps:
[0025] S102, obtaining a three-dimensional model, the three-dimensional model comprising a target part;
[0026] In step S102 provided in the present application, the three-dimensional model is obtained.
[0027] Among them, the three-dimensional model is a model with three-dimensional geometry and structure, used to represent and process actual or imaginary three-dimensional objects. The three-dimensional model is composed of a series of geometric elements (such as points, lines, surfaces, bodies, etc.), used to describe the shape, size and structure of the object. The three-dimensional model can be any shape of object model, from simple geometric bodies such as cubes, spheres, to complex objects, etc.
[0028] The target part is a part of the three-dimensional model that needs special attention and processing, which can be a region or a component. The target part needs additional protection measures during 3D printing to avoid the impact of printing operations such as support generation due to its special structure, function or appearance requirements. The target part can be a key feature, texture, high-precision model part or other model part that needs to be kept in its original state. For example, in 3D printing, the target part can be a model part with rich texture details or high precision requirements that need to avoid support structure generation or only allow a small number of support structures to be generated to avoid damage to the model details and precision after the support is removed. The target part can also be a structure part corresponding to the assembly structure such as a pin or groove at the joint of a three-dimensional model that needs to be assembled by multiple parts. These structure parts need to avoid support structure generation to ensure the accuracy and tightness of the assembly structure.
[0029] By obtaining the three-dimensional model, the subsequent placement optimization and support generation process is provided with basic data. Moreover, by explicitly specifying the target part, i.e. the part of the model that needs special protection, additional protection can be provided for the target part, thereby ensuring that the target part is not damaged during 3D printing.
[0030] In addition, in practical applications, the target part can be any user-defined model region that needs special processing. By specifying the target part, the user's specific needs can be better met and the printing effect can be optimized.
[0031] In step S104, a plurality of placement poses of the three-dimensional model are determined, and the placement pose includes a placement angle and a placement direction.
[0032] In step S104 provided in the present application, a plurality of placement poses of the three-dimensional model are determined.
[0033] The plurality of placement poses are used to reflect the placement angle and placement direction of the three-dimensional model. For example, during the pre-processing stage of 3D printing, a plurality of different angle and direction placement poses of the three-dimensional model are generated, and each placement pose is composed of a specific placement angle and a placement direction.
[0034] The placement angle refers to the angle of rotation of the three-dimensional model around a coordinate axis (such as the X-axis, Y-axis, or Z-axis) in a three-dimensional coordinate system. Further, considering the forming principle of 3D printing, the rotation angle of the Z-axis generally does not affect key factors such as support area and projection area, and only the rotation angles of the X-axis and Y-axis can be considered. The specific value of the placement angle can be obtained by sampling according to a sampling interval, which can be adjusted according to the sampling requirement index. For example, sampling can be performed at intervals of 15 degrees from 0 degrees to 180 degrees on the X-axis and Y-axis, respectively. According to the X-axis and Y-axis, 12 rotation angle samples can be obtained, which, when combined, form a rotation angle space of 144 samples, thereby generating a limited placement angle set. Rotating the three-dimensional model according to the placement angles in the placement angle set can obtain the three-dimensional model in different rotation postures.
[0035] The placement direction refers to the direction of rotation of the three-dimensional model around a coordinate axis (such as the X-axis, Y-axis, or Z-axis) in a three-dimensional coordinate system. Further, considering the forming principle of 3D printing, the rotation angle of the Z-axis generally does not affect key factors such as support area and projection area, and only the direction of rotation of the X-axis and the direction of rotation around the Y-axis can be considered.
[0036] By determining the multiple placement postures including the placement angle and the placement direction, a selection space is provided for subsequent determination of the optimal placement posture. Since the support area, projection area, and other key factors of the model under each placement posture can be quantified, the influence of different placement postures on the printing effect can be more comprehensively evaluated to determine the optimal placement posture.
[0037] S106, from the multiple placement postures, at least one candidate placement posture of the three-dimensional model is determined, the proportion of the first set of triangular facets of the target part of the three-dimensional model in the candidate placement posture to all facets of the target part is greater than a threshold value, and the inclination angle of the first set of triangular facets to the horizontal plane is within a predetermined range;
[0038] In step S106 provided in the present application, at least one candidate placement posture of the three-dimensional model is determined from the multiple placement postures.
[0039] The candidate placement posture refers to a placement posture that meets a specific protection condition and is selected from the multiple placement postures. The target part in the candidate placement posture satisfies the condition that the proportion of the first set of triangular facets to all facets of the target part is greater than a set threshold value.
[0040] The first set of triangular facets refers to facets with an inclination angle to the horizontal plane within a predetermined range, and such triangular facets do not require support structures.
[0041] The threshold is a numerical standard for determining whether the protection effect of the target part meets the requirements. If the proportion of the first set of triangular facets to all the facets of the target part exceeds the threshold, the current placement posture is considered as a valid candidate posture and can be further considered. The threshold is set according to the protection requirement of the target part, and can be a value between 0 and 1. For example, if the threshold is 0.9, it means that more than 90% of the triangular facets in the target part do not need a support structure, i.e., the proportion of the first set of triangular facets to all the facets of the target part needs to exceed 90% to meet the screening requirements of the candidate placement posture.
[0042] The inclination angle is used to represent the angle between the triangular facet and the horizontal plane, and is the basis for determining whether the triangular facet needs support. For example, taking the predetermined range of 40-90 degrees as an example, if the target part includes triangular facets with inclination angles within the range of 40-90 degrees, these facets are the first set of triangular facets, i.e., triangular facets that do not need support.
[0043] The predetermined range is the acceptable range of inclination angles, i.e., within the predetermined range, the triangular facet corresponding to the inclination angle does not need support, and outside the predetermined range, the triangular facet corresponding to the inclination angle needs support.
[0044] The triangular facet with an inclination angle within the predetermined range does not need support, and the threshold can quantify the protection degree of the target part. By combining the threshold and the predetermined range of the inclination angle, those placement postures that can effectively protect the target part can be accurately screened out, so as to protect the specific structure or surface details of the target part from being damaged.
[0045] S108, and determining a target placement posture from the at least one candidate placement posture based on at least one of the following parameters: total area of the first set of triangular facets, cumulative volume of the area and height of the first set of triangular facets, projection area of the three-dimensional model on the horizontal plane, height of the three-dimensional model, and volume of the smallest bounding box completely surrounding the three-dimensional model.
[0046] In step S108 provided in the present application, a target placement posture suitable for the three-dimensional model is determined from the at least one candidate placement posture.
[0047] The target placement posture is a posture that meets the placement requirements and is screened from the at least one candidate placement posture, and is used to place the three-dimensional model according to the target placement posture in the 3D printing process.
[0048] The total area of the first set of triangular facets is a parameter used to determine the target placement pose from the at least one candidate placement pose, and represents the total area of the first set of triangular facets that are within a predetermined range of inclination angle from the horizontal plane and do not require support. This parameter can reflect the size of the protected area of the target part. Generally, the larger the total area of the first set of triangular facets, the better the protection effect of the target part. For example, assuming that in a certain candidate placement pose, the target part is composed of 1000 triangular facets, of which the first set of triangular facets has 800, i.e., there are 800 that do not require support, then the total area of the first set of triangular facets is the sum of the areas of these 800 triangular facets.
[0049] The cumulative volume of the area and height of the first set of triangular facets is a parameter used to determine the target placement pose from the at least one candidate placement pose, and represents that for each first set of triangular facets that do not require support, the area is multiplied by the height of the center of gravity, and then the cumulative volume is obtained by accumulating the above calculation results of all first set of triangular facets. This parameter can reflect the total volume requirement of the support structure in a certain placement pose, thereby helping to determine whether the candidate placement pose is conducive to reducing the use of support materials.
[0050] The projection area of the three-dimensional model on the horizontal plane is a parameter used to determine the target placement pose from the at least one candidate placement pose, and represents the two-dimensional area of the vertical projection of the three-dimensional model corresponding to the candidate placement pose onto the horizontal plane. This parameter reflects the size of the space occupied by the three-dimensional model on the printing platform. The smaller the projection area, the more three-dimensional models can be accommodated for batch printing on the same layout, improving the utilization efficiency of the printing platform space.
[0051] The height of the three-dimensional model is a parameter used to determine the target placement pose from the at least one candidate placement pose, and represents the maximum distance in the Z-axis direction of the three-dimensional coordinate system of the three-dimensional model in the corresponding candidate placement pose, i.e., the distance between the highest point and the lowest point of the three-dimensional model. This parameter is directly related to the printing time. The higher the height, the longer the printing time. Therefore, considering the height of the model when selecting the target placement pose can optimize the printing time.
[0052] The volume of the minimum bounding box completely surrounding the three-dimensional model is a parameter for determining the target placement pose from the at least one candidate placement pose, and represents the volume of a cuboid that can just completely contain the three-dimensional model, and in the three-dimensional coordinate system, the dimensions of the cuboid in the X, Y and Z directions are the smallest. The parameter can reflect the compactness of the three-dimensional model as a whole, and the smaller the volume, generally means that the three-dimensional model occupies less space and uses less material during printing.
[0053] By quantifying the effect of each candidate placement pose from different dimensions based on the above parameters, it is ensured that the target placement pose finally selected meets the placement requirements in at least one dimension. Moreover, if the above multiple parameters are considered comprehensively, multi-dimensional objective evaluation can be achieved, and the best placement pose, i.e., the target placement pose, suitable for the three-dimensional model can be more comprehensively and accurately selected from the candidate placement poses.
[0054] Through the above steps S102-S108, the three-dimensional model is obtained, the three-dimensional model includes a target part; a plurality of placement poses of the three-dimensional model are determined, the placement pose includes a placement angle and a placement direction; at least one candidate placement pose of the three-dimensional model is determined from the plurality of placement poses, the proportion of a first group of triangular facets of the target part of the three-dimensional model in the candidate placement pose to all facets of the target part is greater than a threshold, and the inclination angle of the first group of triangular facets to the horizontal plane is within a predetermined range; and the target placement pose is determined from the at least one candidate placement pose based on at least one of the following parameters: the total area of the first group of triangular facets, the cumulative volume of the area of the first group of triangular facets and the height, the projection area of the three-dimensional model on the horizontal plane, the height of the three-dimensional model, and the volume of the minimum bounding box completely surrounding the three-dimensional model. By selecting at least one candidate placement pose from the plurality of placement poses including the placement angle and the placement direction according to the proportion of the first group of triangular facets to all facets of the target part, it can be ensured that the target part of the three-dimensional model in the selected candidate placement pose is not affected by excessive support structures during printing, and on this basis, the effect of each candidate placement pose can be objectively quantified from different dimensions based on the above parameters, which improves the overall placement effect of the three-dimensional model while meeting the protection requirements of the target part, thereby solving the technical problem of poor three-dimensional model effect when printing the three-dimensional model using a determined placement parameter in the related art.
[0055] As an optional embodiment, the predetermined range is any one of the following: 40-90 degrees, 45-90 degrees, and 60-90 degrees.
[0056] In this embodiment, the predetermined range is described.
[0057] In 3D printing, generation of support structures is necessary to prevent deformation of overhanging or inclined parts due to gravity, but the addition of support also brings additional printing time, material consumption, and subsequent support removal and polishing work. Especially in the target part of the three-dimensional model (such as texture details that need to be protected, assembly surfaces, etc.), it is often necessary to control the amount or position of the added support structure, or even not to add support, to ensure the fineness and structural integrity of the printed target part.
[0058] The predetermined range of different inclination angles can be applicable to the acceptable support degree of the target part under different protection requirements. Among them, the preferred predetermined range is 40-90 degrees, and the range is relatively large, which can be applicable to the placement optimization of most three-dimensional models with relatively low protection requirements. If it is necessary to improve the protection degree of the target part of the three-dimensional model, the further preferred predetermined range is 45-90 degrees, and the more preferred predetermined range is 60-90 degrees.
[0059] For those target parts that need special protection, by limiting the predetermined range of inclination angles, the influence of the support structure on the target part of the three-dimensional model during printing can be minimized, and the original fineness and structural integrity of the target part can be maintained. And in the case that the protection requirements of different target parts of the three-dimensional model are different, different predetermined ranges need to be set to improve the flexibility and adaptability of printing, so that users can select the most suitable predetermined range according to the specific model requirements and printing conditions.
[0060] As an optional embodiment, the target part includes at least one of: a first part having a higher accuracy than the rest of the three-dimensional model; a second part having a pattern; or a third part having a mounting fitting feature.
[0061] In this embodiment, the target part is described.
[0062] Among them, the first part refers to the part of the three-dimensional model that has a higher accuracy requirement than other parts, i.e., the part that has the highest accuracy requirement among all parts of the three-dimensional model. For example, in the case of a three-dimensional model of the entire head, the accuracy requirement of the face is usually higher than that of other parts of the entire head, so the face is the first part.
[0063] Among them, the accuracy refers to the degree of consistency of the three-dimensional model in terms of size, shape, surface smoothness, and detail restoration after printing with the three-dimensional model itself.
[0064] Among them, the second part refers to the part of the three-dimensional model with a pattern. In printing, in order to maintain the clarity of the pattern, artistic effect, etc., the second part needs to avoid the influence of the support structure on the pattern part.
[0065] Among them, the pattern refers to the visual elements such as text, symbols, images, textures, etc. on the surface of the three-dimensional model, which can be designed for aesthetic, identification, function, etc.
[0066] Among them, the third part refers to the part of the three-dimensional model containing the installation matching feature. In order to ensure the matching degree and assembly performance of the three-dimensional model, the third part needs to avoid the influence of the support structure on its precision, etc.
[0067] Among them, the installation matching feature is used to describe the installation matching of the corresponding part of the three-dimensional model, including pins, grooves, threads, buckles, etc. The accurate description of the installation matching feature helps to realize the accurate installation and matching of the part with other parts.
[0068] By including at least one of the first part, the second part, and the third part in the target part, different printing needs of different three-dimensional models can be met. By distinguishing different precision requirements, pattern protection, and model parts of the installation matching feature, not only the printing precision can be ensured, but also the appearance integrity of the pattern can be maintained, and the assembly performance of the model is guaranteed, so that the three-dimensional model is significantly improved in functionality, aesthetics, and practicality.
[0069] As an optional embodiment, the plurality of placement poses includes at least one of the following: at least one pose positioned by rotating around the X-axis of the three-dimensional coordinate system; or at least one pose positioned by rotating around the Y-axis of the three-dimensional coordinate system.
[0070] In this embodiment, the plurality of placement poses is described.
[0071] Among them, the three-dimensional coordinate system refers to a coordinate system composed of three mutually perpendicular axes, usually marked as X, Y and Z axes. In three-dimensional space, the position of any point can be uniquely determined by the coordinate values in the direction of the three axes.
[0072] For example, before determining the placement pose of the three-dimensional model, the placement angle and placement direction of the three-dimensional model in the three-dimensional space need to be determined. There are countless placement angles in the three-dimensional space. In this regard, the sampling interval of the virtual placement angle can be determined in combination with the calculation amount and the printing demand. Taking the sampling interval as an example, 15 degrees, then the sampling interval can be 15 degrees from 0 degrees to 180 degrees in the direction of rotating around the X-axis, and the same for the Y-axis. Therefore, 12 placement poses of the placement angle can be obtained in the corresponding placement direction of the X-axis and the Y-axis. If the X-axis and the Y-axis are considered at the same time, 144 placement poses of the placement angle can be obtained.
[0073] In the 3D printing process, considering the forming principle of 3D printing, the rotation angle of the Z axis usually does not affect the key factors such as support area and projection area, so by considering the posture of the rotational positioning of the X axis and the Y axis, the possible placement postures of the three-dimensional model in the three-dimensional space can be comprehensively quantified, thereby providing a selection basis for determining the optimal placement posture of the three-dimensional model subsequently.
[0074] In addition, the degree of rotation is different for different printing requirements of three-dimensional models (such as space requirements and angle requirements), such as some three-dimensional models can only rotate around the X axis, some three-dimensional models can only rotate around the Y axis, and some three-dimensional models can rotate around both the X axis and the Y axis. Through at least one of the multiple placement postures including at least one of the postures of rotational positioning around the X axis of the three-dimensional coordinate system or the postures of rotational positioning around the Y axis of the three-dimensional coordinate system, the applicability and flexibility of the determination of the multiple placement postures of the three-dimensional model are improved.
[0075] As an optional embodiment, determining the target placement posture from the at least one candidate placement posture includes: sorting the at least one candidate placement posture based on the parameter to determine the target placement posture.
[0076] In this embodiment, the specific steps of determining the target placement posture from the at least one candidate placement posture are described.
[0077] Among them, the sorting is the process of arranging the at least one candidate placement posture in order according to the parameter, so that all the placement postures are presented according to a certain logic for comparison and screening, and then the target placement posture is quickly determined.
[0078] According to the parameter, the at least one candidate placement posture is sorted, including at least two cases:
[0079] Case one: in the case of multiple parameters, before sorting the at least one candidate placement posture according to the multiple parameters, the comprehensive value of the multiple parameters needs to be determined, and the comprehensive value can be determined by weighted average, total, etc. According to the comprehensive value of each placement posture, sort from large to small or from small to large;
[0080] Case two: in the case of one parameter, directly sort each candidate placement posture according to the parameter value from large to small or from small to large.
[0081] By sorting the at least one candidate placement posture, the advantages and disadvantages of different candidate placement postures under the corresponding parameters can be intuitively understood, and the optimal placement posture suitable for the three-dimensional model, i.e., the target placement posture, can be quickly determined.
[0082] As an optional embodiment, the parameters are used to rank the at least one candidate placement posture, and determining the target placement posture comprises: when the parameters are multiple, determining an influence weight corresponding to each of the parameters; and ranking the at least one candidate placement posture according to the parameters and the influence weight corresponding to each of the parameters, and determining the target placement posture.
[0083] In this embodiment, specific steps of determining the target placement posture by ranking the at least one candidate placement posture based on the parameters are described.
[0084] The multiple parameters are used to quantitatively evaluate the advantages and disadvantages of each candidate placement posture for the three-dimensional model, and include a total area of the first set of triangular facets, a cumulative volume of the area of the first set of triangular facets and the height, a projection area of the three-dimensional model on a horizontal plane, a height of the three-dimensional model, a volume of a minimum bounding box completely surrounding the three-dimensional model, and the like.
[0085] The influence weight is a numerical value assigned to each parameter, and reflects the importance of the parameter in the comprehensive evaluation of the advantages and disadvantages of the placement posture.
[0086] The determination of the influence weight of each parameter can be determined according to a specific application scenario. For example, for a scenario requiring rapid printing, the weight of the model height can be set to a relatively high weight. If the protection of the target part of the three-dimensional model needs to be improved, the total area of the first set of triangular facets can be set to a relatively high weight. For example, in order to realize mass printing, the number of three-dimensional models placed on the printing platform needs to be increased, and the projection area of the three-dimensional model on the horizontal plane can be set to a relatively high weight.
[0087] Through the above steps, the advantages and disadvantages of different candidate placement postures can be quantitatively evaluated by comprehensively considering multiple parameters, and the influence weight of each parameter can be adjusted to adapt to different printing scenarios.
[0088] As an optional embodiment, the target part includes at least one of the first set of triangular facets or the second set of triangular facets, and the second set of triangular facets has an inclination angle out of a predetermined range with respect to the horizontal plane.
[0089] In this embodiment, the target part is described.
[0090] The second set of triangular facets refers to triangular facets in the three-dimensional model that have an inclination angle out of a predetermined range with respect to the horizontal plane, and such triangular facets need to be supported by a support structure.
[0091] In 3D printing, the generation of support structures mainly depends on the inclination angle of the model facets with the horizontal plane. If this angle is too small, i.e. the facet is almost horizontal, then this facet needs support to maintain stability during printing and prevent the model from deforming or collapsing during printing.
[0092] If the protection requirement of the target part is high, the determined target placement posture of the three-dimensional model should be at least that the proportion of the second set of triangular facets of the target part in all facets of the target part is relatively small. By comprehensively considering the first set of triangular facets and the second set of triangular facets of the target part, the support condition of the target part can be quantified from multiple dimensions, and then the best placement posture suitable for the three-dimensional model can be determined, and the overall printing effect of the three-dimensional model is improved.
[0093] Based on the above embodiments and optional embodiments, an optional implementation is provided, which is specifically described as follows.
[0094] In the pre-processing process of 3D printing, the placement angle of the three-dimensional model has a significant impact on the printing effect. Different placement angles will result in different Z-axis heights (slice numbers) of the model, thereby affecting the printing time. At the same time, the placement angle will also change the projection area of the model on the XY plane, affecting the number of models that can be accommodated on the printing surface, thereby affecting the batch printing efficiency. In addition, the placement angle will also affect the size of the area that needs to be supported, thereby affecting the amount of printing consumables and the workload of removing the support. For areas with texture details or high precision requirements, special attention should be paid to protection to avoid support points being generated in these areas, to prevent damage to model details and precision during polishing. That is, in the related art, when printing the model, the model placement posture needs to be adjusted, and different placement postures will affect the printing effect of the model. In the related art, when printing the three-dimensional model using a determined placement posture, there is a technical problem of poor effect of the printed three-dimensional model.
[0095] At present, no effective solution has been proposed for the above problems.
[0096] In view of this, in the optional implementation of the present application, a method for determining the placement posture of a three-dimensional model is provided, which can also be referred to as an automatic placement optimization method based on 3D printing influencing factors. By comprehensively considering the 3D printing influencing factors, the optimal 3D printing placement angle for the three-dimensional model can be automatically calculated, or according to actual requirements, only the most important influencing factors in the current scenario are considered to calculate the adaptive best placement posture. It can effectively solve the technical problem of poor effect of the printed three-dimensional model when printing the three-dimensional model using a determined placement posture in the related art.
[0097] Figure 2 is the placement optimization interface diagram for comparison in the optional implementation of the present application, asFigure 2 One of the related art tool software placement optimization interfaces for 3D printing pre-processing mainly targets single factors and fixed intelligent optimization strategies for placement.
[0098] Figure 3 is a flowchart of the placement optimization method in the optional embodiment of the present application, as Figure 3 shown, the main steps include: first, construct a three-dimensional placement angle solution space to obtain multiple placement poses, then evaluate the placement pose under each possible placement angle. For each placement pose, calculate the proportion of the first set of triangular facets to all facets of the target part under the specified protection area (same as the target part above), i.e. the area proportion that does not require support. If the proportion is lower than the set threshold, it is considered that the angle does not meet the protection requirements and is directly excluded from the solution space to avoid unnecessary calculations. For angles that meet the protection requirements, further calculate the numerical values of the influencing factors (same as the parameters above), such as the total area of the first set of triangular facets, the cumulative volume of the first set of triangular facets, the volume of the smallest bounding box that completely surrounds the three-dimensional model, the support area, support volume, model height (same as the height of the three-dimensional model) and projection area (same as the projection area of the three-dimensional model on the horizontal plane) of the second set of triangular facets, etc. After completing the traversal of all angles, the numerical values of these influencing factors are processed dimensionless, normalized to index scores for comparison. Subsequently, adjust the influence weights of each influencing factor according to the actual application scenario, and perform weighted summation on the index scores to finally select the placement angle with the highest score as the optimal placement angle to achieve comprehensive optimization. The following will be described in detail.
[0099] S1, import the original data of the three-dimensional model to be placed to obtain a three-dimensional model, wherein the three-dimensional model includes a protection area.
[0100] S2, construct a solution space of placement angles to determine multiple placement poses of the three-dimensional model, the placement pose including a placement angle and a placement direction.
[0101] Taking the three-dimensional coordinate axis as an example, the rotation reference axis corresponding to the three-dimensional model is determined, i.e. the placement angle of the three-dimensional model in the three-dimensional space is divided into rotation components around the X-axis, Y-axis and Z-axis. Considering the forming principle and characteristics of 3D printing, the rotation of the three-dimensional model around the Z-axis does not affect the influencing factors such as support area and projection area, therefore, the rotation reference axis is determined as the X-axis and Y-axis, only the placement angle and placement direction of the three-dimensional model around the X-axis and / or Y-axis need to be adjusted.
[0102] So, the multiple placement poses include at least one of the following: at least one pose positioned around the X-axis of the three-dimensional coordinate system; or at least one pose positioned around the Y-axis of the three-dimensional coordinate system. Since the placement angle can be continuously changed, there are countless different placement angles when the three-dimensional model is rotated around the X-axis and / or the Y-axis. Considering the feasibility, a sampling interval is set, and the sampling interval is sampled in the continuous angle space to construct a solution space (referred to as a solution space) of the placement angle, which is limited.
[0103] For example, the sampling interval can be set to 15 degrees, and the sampling interval of 15 degrees is sampled from 0 degrees to 180 degrees on the X-axis and the Y-axis, respectively. The X-axis and the Y-axis can obtain 180÷15=12 rotation angle samples, respectively, and the combination is 12×12=144 sample rotation angle space (same as the above solution space).
[0104] The setting of the sampling interval can be adjusted as needed. In the case of considering the calculation accuracy, the sampling interval can be reduced (such as set to 5 degrees) to improve the accuracy of the calculation result, but the calculation speed will be reduced. In the case of considering the calculation speed, the sampling interval can be increased (such as set to 30 degrees) to improve the calculation speed, but the calculation result error will increase.
[0105] Then, according to the solution space obtained as described above, the three-dimensional model is copied respectively, and the copied three-dimensional model is rotated according to the selected placement parameters and the corresponding placement direction (such as around the X-axis) by the corresponding placement angle, to obtain multiple placement poses of the three-dimensional model, that is, a model data copy is copied from the original model data, and the model copy is rotated according to the selected rotation angle to obtain a rotated model data copy (same as the multiple placement poses of the three-dimensional model). It is judged whether all rotation angles of the solution space have been traversed. If the traversal is completed, the subsequent index calculation step is performed; if the traversal is not completed, the above steps are repeated to continue the traversal.
[0106] S3, calculate the protection index of the specified area (same as the protection area) of the placement pose under the current placement angle.
[0107] In 3D printing, commonly used file formats such as STL format and OBJ format represent three-dimensional models through discrete facet elements. For example, the STL format uses a triangular mesh to construct a model, and the OBJ format supports triangular faces, quadrilaterals, and more complex polygons. Although the shapes of the facet elements of these formats are different, these facet elements all have corresponding basic geometric calculation methods for calculating the normal, area, and centroid of the facet element. These basic calculation methods are an important prerequisite for subsequent processing and optimization of model placement parameters, but the specific basic calculation details are not repeated here.
[0108] The specified region is essentially a subset of all the triangular facets included in the three-dimensional model, and the subset includes a plurality of triangular facets.
[0109] Specifically, S3 includes:
[0110] S31, determining the inclination angle of each triangular facet with respect to the horizontal plane, and determining whether the triangular facet needs support according to whether the inclination angle is within a predetermined range;
[0111] The inclination degree of the triangular facet represents the inclination of the triangular facet with respect to the horizontal plane. In addition to determining the inclination degree of the triangular facet by the inclination angle of the triangular facet with respect to the horizontal plane, the inclination degree of the triangular facet can also be determined according to the angle between the normal of the triangular facet and the horizontal plane. In 3D printing, when determining whether the triangular facet needs support, the angle between the normal of the triangular facet and the horizontal plane can also be used. If the angle is less than the support critical angle (the predetermined range is as follows: 40-90 degrees, 45-90 degrees, 60-90 degrees, and the specific value should be consistent with the support algorithm parameters actually used), it is considered that the triangular facet can be self-supported and does not need additional support structure.
[0112] By using the angle determination method, unnecessary support material can be reduced, while ensuring the printing quality and stability of the model.
[0113] For example, taking the support critical angle of 45 degrees as an example, when the angle between the normal of the triangular facet and the horizontal plane is 60 degrees, at this time, the inclination angle of the triangular facet with respect to the horizontal plane is 30 degrees. Therefore, it is considered that the inclination degree of the triangular facet is large and exceeds the support critical angle of 45 degrees. Therefore, it is considered that the triangular facet needs support, i.e., the triangular facet is the second group of triangular facets.
[0114] S32, calculating the protection index of the protection region.
[0115] The determination of the protection index of the protection region can be converted into determining the proportion of the first group of triangular facets to all the facets of the target part in the protection region. The proportion can be determined by any of the following methods:
[0116] Method one: determining the proportion of the area of the first group of triangular facets to the area of all the facets of the target part, i.e., calculating the proportion of the area of the triangular facet subset that does not need support to the area of all the triangular facets of the specified region;
[0117] The second way is to determine the proportion of the projection area of the first group of triangular facets to the projection area of all facets of the target part, that is, to calculate the proportion of the projection area of the facet unit in the sub-set that does not need to be supported to the total projection area of all facet units in the specified region.
[0118] The protection index value of the protection region can be in the range of 0 to 1, and the closer to 1 indicates that the protection degree of the protection region is higher.
[0119] S4, determining at least one candidate placement posture of the three-dimensional model from the plurality of placement postures.
[0120] When evaluating whether the protection index of the protection region meets the requirements, the corresponding threshold value needs to be set according to the actual situation of the protection requirement, so as to determine at least one candidate placement posture of the three-dimensional model from the plurality of placement postures.
[0121] For example, if the proportion of the first group of triangular facets of the target part of the three-dimensional model to all facets of the target part in the corresponding placement posture in the plurality of placement postures is greater than the threshold value, the placement posture can be confirmed as the candidate placement posture.
[0122] Regarding the setting of the threshold value, if the protection requirement is very high, the support limit (same as the above threshold value) can be set to 0.98, and the placement posture corresponding to the placement angle corresponding to the protection index less than 0.98 is determined as not meeting the requirements; and if the protection requirement is general, the support limit can be set to 0.75, and the placement posture corresponding to the placement angle corresponding to the protection index less than 0.75 is determined as not meeting the requirements.
[0123] The placement posture corresponding to the placement angle that does not meet the requirements is marked as invalid and does not participate in the subsequent comprehensive score calculation, so as to screen out the candidate placement posture that meets the requirements for continuing to participate in the subsequent optimization step.
[0124] S5, determining a target placement posture from the at least one candidate placement posture.
[0125] Specifically, in the case of multiple parameters, S5 includes:
[0126] S51, determining the parameters for determining the target placement posture from the at least one candidate placement posture, that is, determining various influencing factors for screening the target placement posture.
[0127] The target placement posture is determined from the at least one candidate placement posture based on at least one of the following parameters: total area of the first group of triangular facets, cumulative volume of the area and height of the first group of triangular facets, projection area of the three-dimensional model on the horizontal plane, height of the three-dimensional model, and volume of the smallest bounding box completely surrounding the three-dimensional model.
[0128] The total area of the first set of triangular facets can be converted to further determine the support area corresponding to each candidate placement posture, i.e., the total area of the second set of triangular facets. The calculation method of the support area is as follows:
[0129] In the calculation of the support area, first traverse each facet unit corresponding to the rotated model (i.e., at least one candidate placement posture). For each facet unit, check whether the included angle between its normal and the horizontal plane is greater than the support critical angle (if not determined, 45 degrees can be used as the default value, and the specific value of the support critical angle should be consistent with the actual parameters used by the support algorithm). If the included angle is greater than the support critical angle, the area of the facet unit is added to the support area. After traversing all the facet units, the accumulated area obtained is the support area value under the current placement angle.
[0130] The cumulative volume of the area and height of the first set of triangular facets can be converted to further determine the support volume corresponding to each candidate placement posture, i.e., the cumulative volume of the area and height of the second set of triangular facets. The calculation method of the support volume is as follows:
[0131] In the calculation of the support volume, traverse each facet unit of the rotated model, and for those facet units whose normal and horizontal plane have an included angle greater than the support critical angle (if not determined, 45 degrees can be used as the default value, and the specific value of the support critical angle should be consistent with the actual parameters used by the support algorithm), the product of the area and the height of the center of gravity of the facet unit is added, and the final accumulated value is the support volume corresponding to the placement angle.
[0132] It should be noted that in the calculation of the support area and the support volume, the focus is on reflecting the trend of the support area and the support volume changing with the placement angle, rather than accurately calculating the size of the actual support structure. Therefore, it is not necessary to consider the specific distribution and density of the support points, but only to calculate based on the overall area and volume of the facet unit area that needs to be supported, in order to evaluate the change of support demand under different placement angles.
[0133] The calculation of the projection area of the three-dimensional model on the horizontal plane (hereinafter referred to as the projection area) is as follows:
[0134] In the three-dimensional coordinate system, first, a two-dimensional pixel plane is determined according to the coordinate range of the rotated rear model, and the length and width of the pixel plane are determined according to the coordinate range of the target model on the X-axis and the Y-axis. Then, the size of a single pixel is calculated based on the length and width of the pixel plane and the default resolution (default 1000), and all pixel values are initialized to 0 to achieve a relatively balanced effect in terms of calculation speed and accuracy. Then, each face unit of the three-dimensional model in the candidate placement posture is projected onto the two-dimensional pixel plane, and the pixel coordinates after projection are obtained by dividing the X-axis coordinate value of the three-dimensional vertex coordinate by the length of the pixel size and the Y-axis coordinate value by the width of the pixel size, forming a two-dimensional polygon. The scan line algorithm is used to fill the pixels in the polygon, and the pixel values inside the polygon are set to non-zero values. Finally, the projected area of the model is obtained by calculating the number of non-zero pixel values multiplied by the area of a single pixel (the product of the length and width of the pixel size).
[0135] For the height of the three-dimensional model (hereinafter referred to as model height), the following is used:
[0136] In the three-dimensional coordinate system, the model height is determined according to the difference between the maximum and minimum Z-axis vertex coordinates of the rotated model.
[0137] For the volume of the smallest bounding box completely surrounding the three-dimensional model (hereinafter referred to as bounding box volume):
[0138] The bounding box is determined according to the vertex coordinate range of the rotated model, and the formula is as follows:
[0139] B V = B l × B b × B h
[0140] Where:
[0141] B V represents the bounding box volume;
[0142] B l represents the length of the bounding box;
[0143] B b represents the width of the bounding box;
[0144] B h represents the height of the bounding box.
[0145] S52, based on the parameters, ranking at least one candidate placement posture to determine the target placement posture.
[0146] In the case of multiple parameters, and according to the multiple parameters and the influence weight corresponding to each parameter, at least one candidate placement posture is ranked to determine the target placement posture. Specifically as follows:
[0147] Considering that the influencing factors participating in the calculation (the same as the above parameters) belong to different physical quantities, their values are not comparable, and need to be dimensionless, the effective influencing factor value is normalized to an index score, and a comprehensive score is calculated by weighting.
[0148] For example, it can be normalized, unified to the same range, and then weighted and summed to calculate the comprehensive score. The normalization method before expansion is:
[0149]
[0150] Where:
[0151] In a represents the normalized index, that is, the value of the normalized value corresponding to the influencing factor;
[0152] In b represents the current value, that is, the value of the influencing factor before normalization;
[0153] In min represents the minimum value in the value of the corresponding influencing factor;
[0154] In max represents the maximum value in the value of the corresponding influencing factor.
[0155] This calculation method will make the index result between 0 and 1. The larger the value before normalization, the closer the normalized index is to 1.
[0156] But considering that many influencing factor values are not the better the larger, the normalization method is further expanded, and the normalized method after expansion is:
[0157]
[0158] In practical application, it should be selected according to the specific situation. If the value of the influencing factor is the larger the better, the normalization method before expansion should be selected for normalization calculation; otherwise, the normalization method after expansion should be selected.
[0159] It should be noted that the normalization of the influencing factor value is essentially a process of converting dimensional data into dimensionless data. In addition to the above normalization methods, other methods that can achieve the same function, such as standardization, centralization, intervalization, and other dimensionless processing methods.
[0160] After normalization, according to multiple parameters and the influencing weight corresponding to each parameter, the comprehensive score of each to-be-placed posture is determined, that is, the normalized values of all influencing factors are weighted and summed to calculate the comprehensive score, and the calculation method is as follows:
[0161]
[0162] wherein:
[0163] C s denotes the comprehensive score;
[0164] w i denotes the weight corresponding to the ith influencing factor (same as the above-mentioned influence weight);
[0165] denotes the numerical value corresponding to the ith influencing factor.
[0166] It should be noted that the above-mentioned step core lies in the placement optimization calculation method considering multiple 3D printing influencing factors comprehensively, which involves influencing factors not limited to support area, support volume, model height, projection area, etc. Other factors such as model gravity center height can also be included in the calculation. That is, the number of influencing factors is not limited, as long as the influencing factors indeed affect the 3D printing process with the change of the placement angle, and the influence degree can be calculated, which can be used as an influencing factor to participate in the calculation of comprehensive score.
[0167] In addition, in 3D printing, according to the difference of actual application scene, the weight (same as the above-mentioned influence weight) of various influencing factors can be flexibly adjusted to realize adaptive comprehensive placement strategy. In the case where the placement demand parameter includes the need to equally measure all influencing factors, the weight of all influencing factors can be set to 1; in the case where the placement demand parameter includes mainly considering the printing time, secondly considering the support area, and finally considering the projection area, the weight of the printing time can be set to 1, the weight of the support area can be set to 0.75, and the weight of the projection area can be set to 0.3, and so on, which can be flexibly adjusted according to the actual application.
[0168] For example, in small-batch prototype design application, if the overall printing efficiency is mainly concerned, rather than the number of models accommodated by the printing area, the weight of the model height factor can be increased, because the model height directly affects the printing time. At the same time, it is also important to appropriately increase the weight of the support area factor, because the number of support structures will affect the efficiency of post-processing, and the time of removing the support is also part of the printing efficiency. In this case, the weight of the projection area factor can be reduced or even ignored, because its influence on the printing efficiency is relatively small. In this way, the placement parameters can be optimized to meet the needs of specific application scenarios.
[0169] Finally, according to the ranking of the at least one candidate placement pose according to the comprehensive score, a target placement pose is determined, that is, from the at least one candidate placement pose, the candidate placement pose with the highest comprehensive score is selected as the target placement pose, and the target placement pose is the optimal placement pose of the three-dimensional model.
[0170] Through the above optional implementation, at least the following beneficial effects can be achieved:
[0171] (1) Compared with the related art, the present application can ensure that the target part of the three-dimensional model in the selected placement pose is not affected by excessive support structures during printing, and on this basis, the effect of each selected placement pose can be objectively quantified from different dimensions according to the above parameters, so as to improve the overall placement effect of the three-dimensional model while meeting the protection requirements of the target part, thereby solving the technical problem of poor printing effect of the three-dimensional model in the related art when using a certain placement parameter to print the three-dimensional model.
[0172] (2) Compared with the related art, the present application can minimize the impact of support structures on the target part of the three-dimensional model during printing by limiting the predetermined range of the inclination angle, and maintain the original fineness and structural integrity of the target part. In addition, different predetermined ranges can be set according to different protection requirements of the target part of different three-dimensional models, so that users can select the most suitable predetermined range according to the specific model requirements and printing conditions.
[0173] (3) Compared with the related art, the present application considers the forming principle of 3D printing, and the rotation angle of the Z-axis usually does not affect the support area and projection area, etc. Therefore, by considering the rotation positioning of the X-axis and Y-axis, the possible placement poses of the three-dimensional model in the three-dimensional space can be quantified comprehensively, thereby providing a basis for selecting the optimal placement pose of the three-dimensional model.
[0174] (4) Compared with the related art, the present application integrates the requirement of protecting the specified area into the placement optimization method considering multiple factors, and by comprehensively considering the support feature parameters and model size parameters of the target model, the advantages and disadvantages of each placement parameter can be evaluated, so as to achieve the placement effect of protecting the specified area while considering other factors such as printing time and support quantity.
[0175] (5) Compared with the related art, the present application can achieve adaptive comprehensive placement strategy by flexibly combining different influencing factors according to the actual scene.
[0176] It should be noted that for the aforementioned method embodiments, for simplicity of description, they are all expressed as a series of action combinations. However, those skilled in the art should be aware that the present invention is not limited by the order of the actions described, because according to the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in this specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present invention.
[0177] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods of various embodiments of the present invention.
[0178] According to an embodiment of the present invention, there is also provided a device for implementing the above method for determining the placement posture of a three-dimensional model. Figure 4 FIG. 1 is a structural block diagram of an apparatus for determining a placement posture of a three-dimensional model according to an embodiment of the present invention. Figure 4 As shown, the device includes: an acquisition module 402, a first determination module 404, a second determination module 406 and a third determination module 408. The device will be described in detail below.
[0179] An acquisition module 402 is used to acquire a three-dimensional model, which includes a target part; a first determination module 404 is connected to the above-mentioned acquisition module 402, and is used to determine multiple placement postures of the three-dimensional model, which include placement angles and placement directions; a second determination module 406 is connected to the above-mentioned first determination module 404, and is used to determine at least one candidate placement posture of the three-dimensional model from multiple placement postures, wherein the ratio of the first group of triangular facets of the target part of the three-dimensional model under the candidate placement posture to all facets of the target part is greater than a threshold, and the inclination angle of the first group of triangular facets to the horizontal plane is within a predetermined range; and a third determination module 408 is connected to the above-mentioned second determination module 406, and is used to determine the target placement posture from at least one candidate placement posture based on at least one of the following parameters: the total area of the first group of triangular facets, the cumulative volume of the area and height of the first group of triangular facets, the projected area of the three-dimensional model on the horizontal plane, the height of the three-dimensional model, and the volume of the minimum bounding box that completely surrounds the three-dimensional model.
[0180] It should be noted that the above obtaining module 402, the first determining module 404, the second determining module 406 and the third determining module 408 correspond to steps S102 to S108 in the method for determining the placing posture of the three-dimensional model, and the plurality of modules have the same instances and application scenarios as the corresponding steps, but are not limited to the above embodiment 1.
[0181] According to another aspect of the embodiments of the present application, an electronic device is provided, comprising: a processor; a memory for storing processor-executable instructions, wherein the processor is configured to execute the instructions to implement any of the above methods for determining the placing posture of a three-dimensional model.
[0182] According to another aspect of the embodiments of the present application, a computer-readable storage medium is provided, when instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device is enabled to perform any of the above methods for determining the placing posture of a three-dimensional model.
[0183] The above embodiment numbers of the present application are only for description, and do not represent the advantages or disadvantages of the embodiments.
[0184] In the above embodiments of the present application, the description of each embodiment has its own focus, and the parts not described in detail in a certain embodiment can be referred to the related description of other embodiments.
[0185] In several embodiments provided in the present application, it should be understood that the disclosed technical contents can be implemented by other ways. Among them, the above-described device embodiments are only schematic, for example, the division of the units can be a logical function division, and actual implementation can have another division way, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the displayed or discussed each other can be through some interface, indirect coupling or communication connection between units or modules, which can be electrical or other forms.
[0186] The units described as separate components can or can not be physically separated, and the components displayed as units can or can not be physical units, that is, they can be located in one place, or can be distributed on multiple units. According to actual needs, part or all of the units can be selected to achieve the purpose of the present embodiment scheme.
[0187] The integrated unit, if implemented in the form of a software function unit and sold or used as an independent product, can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application, essentially or in other words, the part that contributes to the prior art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, including a number of instructions to make a computer device (which can be a personal computer, a server or a network device, etc.) execute all or part of the steps of the methods described in various embodiments of the present application. The aforementioned storage medium includes: a U disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a mobile hard disk, a magnetic disk or an optical disk, and various media that can store program codes.
[0188] The above is only the preferred embodiment of the present application, it should be pointed out that, for those skilled in the art, without departing from the principles of the present application, can make a number of improvements and refinements, these improvements and refinements should also be considered as the protection scope of the present application.
Claims
1. A method for determining the placement posture of a three-dimensional model, characterized in that: include: Acquire a three-dimensional model, wherein the three-dimensional model includes a target portion; Determining multiple placement postures of the three-dimensional model, wherein the placement postures include a placement angle and a placement direction; Determining at least one candidate placement pose of the three-dimensional model from the multiple placement poses, wherein a ratio of a first group of triangular facets of a target portion of the three-dimensional model to all facets of the target portion in the candidate placement pose is greater than a threshold, and an inclination angle of the first group of triangular facets to a horizontal plane is within a predetermined range; and Determine a target placement pose from at least one candidate placement pose based on at least one of the following parameters: a total area of the first set of triangular facets, a cumulative volume of the area and height of the first set of triangular facets, an area of the three-dimensional model projected on a horizontal plane, a height of the three-dimensional model, and a volume of a minimum bounding box that completely surrounds the three-dimensional model.
2. The method according to claim 1, characterized in that The predetermined range is any one of the following: 40 to 90 degrees, 45 to 90 degrees, and 60 to 90 degrees.
3. The method according to claim 1, characterized in that The target portion includes at least one of the following: The first part has a higher accuracy than the rest of the three-dimensional model; a second portion having a pattern; or The third part has installation and fitting features.
4. The method according to claim 1, wherein The plurality of placement postures include at least one of the following: At least one posture of rotational positioning around the X-axis of a three-dimensional coordinate system; or At least one posture of the rotational positioning around the Y axis of the three-dimensional coordinate system.
5. The method according to claim 1, wherein Determining a target placement posture from at least one candidate placement posture includes: sorting at least one candidate placement posture based on the parameter to determine the target placement posture.
6. The method according to claim 5, characterized in that The sorting of at least one candidate placement posture based on the parameter to determine a target placement posture comprises: In the case where there are multiple parameters, determining the influence weights corresponding to the multiple parameters respectively; At least one candidate placement posture is sorted according to the multiple parameters and the influence weights corresponding to the multiple parameters to determine a target placement posture.
7. The method according to any one of claims 1 to 6, characterized in that The target portion includes at least one of a first group of triangular facets or a second group of triangular facets, and an inclination angle of the second group of triangular facets to a horizontal plane is not within a predetermined range.
8. A device for determining the placement posture of a three-dimensional model, characterized in that: include: An acquisition module, configured to acquire a three-dimensional model, wherein the three-dimensional model includes a target portion; A first determination module is used to determine multiple placement postures of the three-dimensional model, wherein the placement postures include a placement angle and a placement direction; a second determining module, configured to determine at least one candidate placement posture of the three-dimensional model from the multiple placement postures, wherein a ratio of a first group of triangular facets of a target portion of the three-dimensional model to all facets of the target portion in the candidate placement posture is greater than a threshold, and an inclination angle of the first group of triangular facets with respect to a horizontal plane is within a predetermined range; and a third determination module, configured to determine a target placement posture from at least one candidate placement posture based on at least one of the following parameters: the total area of the first group of triangular facets, the cumulative volume of the area and height of the first group of triangular facets, the projected area of the three-dimensional model on the horizontal plane, the height of the three-dimensional model, and the volume of a minimum bounding box that completely surrounds the three-dimensional model.
9. An electronic device, characterized in that: include: processor; a memory for storing instructions executable by the processor; The processor is configured to execute the instructions to implement the method for determining the placement posture of a three-dimensional model according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that When the instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the method for determining the placement posture of a three-dimensional model according to any one of claims 1 to 7.
Citation Information
Patent Citations
Three-dimensional object pose accuracy judgment method and device and electronic equipment
CN111369571A
Three-dimensional hand posture estimator construction method and system
CN117612204A
3D model placement method and system, computer equipment and storage medium
CN118650883A
Pose estimation and model retrieval for objects in images
US20190147221A1