Contact type object registration method and system based on complementary butt joint
By constructing a complementary docking relationship between the object mesh and the swept volume mesh, the problem of insufficient object pose estimation accuracy in the prior art is solved, and high-precision and stable object pose estimation is achieved, which is suitable for narrow or complex environments.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-08
- Publication Date
- 2026-03-13
AI Technical Summary
Existing technologies struggle to achieve high-precision object pose estimation, especially when contact trajectories are sparse or discontinuous, resulting in a significant performance degradation. Furthermore, optical registration methods are limited in application in narrow or occluded environments.
A contact-based object registration method based on complementary shape docking is adopted. By constructing object mesh and swept volume mesh, the global and local registration poses are determined by their complementary shape docking relationship. The optimal registration pose is obtained through continuous optimization. Internal penalty constraints and contact local constraints are introduced to ensure physical rationality.
It achieves high-precision object pose estimation when contact is sparse or discontinuous, improving search efficiency and accuracy. It is suitable for narrow or complex environments and avoids line-of-sight occlusion limitations.
Smart Images

Figure CN121661110A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of object pose estimation technology, and in particular to a contact object registration method and system based on complementary shape docking. Background Technology
[0002] In robotics, medical, and industrial applications, estimating object pose—that is, accurately registering a pre-built object model with the real-world scene—is a crucial technology, and its accuracy directly determines the precision of task execution. For example, applications such as dental preparation, orthopedic drilling, and precision assembly typically require sub-millimeter level registration (pose estimation) accuracy.
[0003] The relevant technologies mainly rely on two types of methods: optical registration and contact registration. Optical registration methods are used to register by combining hand-eye calibration, marker detection, and computer-aided design and manufacturing of markers. However, it relies on a long kinematic chain, and manufacturing errors and external parameter calibration errors accumulate step by step, resulting in limited final accuracy. At the same time, the optical system requires that there are no obstacles between the marker and the camera, which limits its application in narrow or obstructed environments.
[0004] Contact registration methods, as an alternative, involve a rigid probe making contact with the object surface, recording the probe's trajectory, and aligning the trajectory with a prior model to estimate the object's pose (registration pose). However, existing methods typically simplify the probe to a point or use only a spherical tip with radius compensation. Such simplification discards the geometric constraints imposed by the true probe shape, relies excessively on fragile point correspondences (e.g., various iterative nearest-point algorithms and their variants), and exhibits significant performance degradation when the contact trajectory is sparse or the contact is discontinuous.
[0005] Therefore, it is difficult for related technologies to reliably achieve high-precision pose estimation. How to achieve high-precision object pose estimation based on active contact is a technical problem that urgently needs to be solved. Summary of the Invention
[0006] In view of the above problems, embodiments of this application provide a contact object registration method and system based on complementary shape docking, so as to overcome the above problems or at least partially solve the above problems.
[0007] A first aspect of this application discloses a contact object registration method based on complementary shape docking, the method comprising: Multiple first candidate directions are sampled from the object's orientation space, which represents a three-dimensional rotation group; Construct an object mesh and a swept volume mesh for each first candidate direction; wherein, the swept volume mesh represents all covered voxels of the probe along the contact trajectory; the object mesh represents the voxels corresponding to the 3D model of the object, and the object mesh has internal penalty constraints and contact local constraints. The internal penalty constraints are used to constrain the probe to contact the surface of the object and not to penetrate the object, and the contact local constraints are used to constrain the probe to contact the object surface that is allowed to be contacted. The global registration pose is determined based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction. The complementary shape docking relationship between the object mesh and the swept volume mesh is measured by the surface overlap between the swept volume mesh and the object mesh. The global registration pose includes the global registration direction and the global registration voxel offset. Within a neighborhood centered on the global registration direction, multiple second candidate directions are uniformly sampled; Construct the object mesh and swept volume mesh for each second candidate direction; Based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the second candidate direction, the local registration pose is determined, and the local registration pose includes the local registration direction and the local registration voxel offset. Based on the complementary shape docking relationship between the object and the swept body, the local registration pose is continuously optimized to obtain the optimal registration pose. The complementary shape docking relationship between the object and the swept body is measured by the surface overlap of the object and the swept body.
[0008] Optionally, the object mesh under the first candidate direction and the object mesh under the second candidate direction are both constructed according to the following steps; The 3D model of the object is rotated to the corresponding candidate orientation, the first symbolic distance field is calculated, and the first symbolic distance field is mapped to the object template; wherein, the value of the first symbolic distance field represents the shortest distance from a point in space to the object surface, and the object template is used to encourage the probe to contact the object surface, allow the probe to shallowly penetrate the object, and penalize the probe to deeply penetrate the object; Calculate the unsigned distance based on the allowed contact object surfaces, and determine the surface mask based on the unsigned distance; wherein the unsigned distance represents the shortest distance from a point in space to the allowed contact object surface, and the surface mask is used to determine the allowed contact surface region; Based on the object template and the surface mask, an initial object mesh is obtained, and the initial object mesh is discretized according to the target spatial resolution to obtain the object mesh under the first candidate direction or the object mesh under the second candidate direction.
[0009] Optionally, mapping the first symbolic distance field to an object template includes: When the first symbol distance field is greater than or equal to 0 and less than the first threshold, the value of the object template is in the range of 0 to the first threshold, monotonically decreasing from the maximum value to 0. When the first symbol distance field is less than 0 and greater than the second threshold, the value of the object template is monotonically increasing from 0 to the maximum value in the range from the second threshold to 0. When the first symbol distance field is less than or equal to a negative number of the second threshold, the value of the object template is less than 0; When the first symbol distance field is greater than or equal to the first threshold, the value of the object template is equal to 0.
[0010] Optionally, the swept volume mesh under the first candidate direction and the swept volume mesh under the second candidate direction are both constructed according to the following steps; Determine a second symbolic distance field for the probe, the second symbolic distance field characterizing the shape of the probe; Based on the second symbol distance field and the contact trajectory, a binary occupancy field is determined, wherein the binary occupancy field characterizes the sweep volume corresponding to the probe along the contact trajectory; The binary occupancy field is discretized according to the target spatial resolution to obtain a swept volume mesh under the first candidate direction or a swept volume mesh under the second candidate direction.
[0011] Optionally, the global registration pose is determined based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction, including: Based on different voxel offsets, the cross-correlation between the object mesh and the swept volume mesh under each first candidate direction is calculated using the Fast Fourier Transform, which serves as the score for that first candidate direction and voxel offset. The first candidate direction corresponding to the maximum score is used as the global registration direction, and the voxel offset corresponding to the maximum score is used as the global registration voxel offset.
[0012] Optionally, the local registration pose is determined based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the second candidate direction, including: Based on different voxel offsets, calculate the cross-correlation between the object mesh and the swept volume mesh under each second candidate direction, and use it as the score of the second candidate direction and voxel offset. The second candidate direction corresponding to the maximum score is used as the local registration direction, and the voxel offset corresponding to the maximum score is used as the local registration voxel offset.
[0013] Optionally, within a neighborhood centered on the global registration direction, multiple second candidate directions are uniformly sampled, including: Based on the current sampling sequence number, a low-difference sequence is generated, which includes a first low-difference sequence value, a second low-difference sequence value, and a third low-difference sequence value. Determine the cumulative radius distribution required for uniform sampling in the neighboring region, and generate the sampling radius through inverse mapping transformation based on the cumulative radius distribution and the first low-difference sequence value; Generate the axial angle range based on the sampling radius and the radius of the adjacent region; A first sampling angle is generated based on the axial angle range and the second low difference sequence value, and a second sampling angle is generated based on the third low difference sequence value; Based on the first sampling angle, the second sampling angle, and the sampling radius, a sampling direction is generated for the adjacent region. The second candidate direction is obtained based on the sampling direction in the neighboring region and the global registration direction.
[0014] Optionally, based on the complementary shape docking relationship between the object and the swept body, the local registration pose is continuously optimized to obtain the optimal registration pose, including: For each probe pose of the contact trajectory, calculate the minimum signed distance between the object and the probe; A proximity score is calculated based on the minimum signed distance; wherein the proximity score is used to encourage the probe to contact the object surface, allow the probe to shallowly penetrate the object, and penalize the probe for deep penetration of the object; An objective function is constructed based on the proximity score and optimization variables; wherein the optimization variables represent the difference between the local registration pose and the optimal registration pose, and the objective function aims to maximize the total proximity score of all probe poses of the contact trajectory. The objective function is optimized using the physical boundaries of the optimization variables as constraints to obtain the target optimization variables, and the local registration pose is updated based on the target optimization variables to obtain the optimal registration pose.
[0015] Optionally, a proximity score is calculated based on the minimum signed distance, including: The ratio of the minimum signed distance to the third threshold is determined as the target value; When the target value is greater than 1, the proximity score is 0. When the target value is greater than 0 and less than or equal to 1, the proximity score increases smoothly as the target value decreases, in order to reward the proximity of the object to the probe; When the target value is greater than the fourth threshold and less than or equal to 0, the proximity score decreases smoothly to 0 as the target value decreases, so as to apply a progressively increasing penalty to the shallow penetration of the object and the probe. When the target value is less than or equal to the fourth threshold, the proximity score decreases from 0 as the target value decreases, and a preset penalty slope is used to penalize depth penetration.
[0016] A second aspect of this application discloses a contact-type object registration system based on complementary shape docking, the system comprising: The first sampling module is used to sample multiple first candidate directions from the object's orientation space, wherein the orientation space represents a three-dimensional rotation group; The first construction module is used to construct the object mesh and the swept volume mesh under each first candidate direction; wherein, the swept volume mesh represents all the covered voxels of the probe along the contact trajectory; the object mesh represents the voxels corresponding to the three-dimensional model of the object, and the object mesh has internal penalty constraints and contact local constraints. The internal penalty constraints are used to constrain the probe to contact the surface of the object and not to penetrate the object, and the contact local constraints are used to constrain the probe to contact the object surface that is allowed to be contacted. The first determining module is used to determine the global registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction. The complementary shape docking relationship between the object mesh and the swept volume mesh is measured by the surface overlap between the swept volume mesh and the object mesh. The global registration pose includes the global registration direction and the global registration voxel offset. The second sampling module is used to uniformly sample multiple second candidate directions in a neighborhood centered on the global registration direction; The second building module is used to build the object mesh and swept volume mesh for each second candidate direction; The second determining module is used to determine the local registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the second candidate direction. The local registration pose includes the local registration direction and the local registration voxel offset. The first optimization module is used to continuously optimize the local registration pose based on the complementary shape docking relationship between the object and the swept body to obtain the optimal registration pose. The complementary shape docking relationship between the object and the swept body is measured by the surface overlap of the object and the swept body.
[0017] A third aspect of this application discloses an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps of the contact object registration method based on complementary docking described in the first aspect of this application.
[0018] A fourth aspect of this application discloses a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the contact object registration method based on complementary docking described in the first aspect of this application.
[0019] A fifth aspect of this application discloses a computer program product, including a computer program that, when executed by a processor, implements the steps of the contact object registration method based on complementary docking described in the first aspect of this application.
[0020] The embodiments of this application have the following advantages: In this embodiment, by constructing a swept volume mesh and an object mesh, and using the "complementary shape docking" relationship between the two to determine the registration pose, the complete geometric constraints contained in the probe shape during the actual contact process are fully explored and utilized. Compared with the existing schemes that rely on the correspondence of vulnerable points, the object pose can be determined more accurately and stably, and excellent performance can still be maintained, especially when the contact trajectory is sparse or discontinuous.
[0021] A three-stage strategy is adopted. First, coarse sampling is performed in the global orientation space to quickly locate the global registration orientation, i.e., the approximate region of the optimal registration orientation. Then, more intensive fine sampling is performed in this region to obtain the local registration pose. Finally, the optimal registration pose is obtained through continuous optimization. This strategy effectively balances search efficiency and final accuracy, ensuring that the global optimum can be found efficiently and reliably within a large search space.
[0022] Furthermore, "internal penalty constraints" and "contact local constraints" are introduced when constructing the object mesh. This ensures that the registration results conform to physical reality: it prevents unreasonable situations where the probe penetrates the interior of the object and limits the contact range to the allowed object surface. These constraints effectively eliminate a large number of invalid or illogical registration results, further guaranteeing reliability in actual robot operation. In addition, this method is entirely based on the robot's own active contact and proprioception, without relying on any external tracking devices, thus completely eliminating the limitation of line-of-sight occlusion, giving it an irreplaceable advantage in narrow, enclosed, or structurally complex industrial scenarios. Attached Figure Description
[0023] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments of this application will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0024] Figure 1 This is a schematic diagram of registration in a dental preparation robot provided in an embodiment of this application; Figure 2 This is a flowchart illustrating the steps of a contact object registration method based on complementary shape docking provided in an embodiment of this application. Figure 3 This is a schematic diagram of an object template and an object mesh provided in an embodiment of this application; Figure 4 This is a schematic diagram of a swept volume mesh provided in an embodiment of this application; Figure 5 This is a schematic diagram illustrating the cross-correlation calculation of an object mesh and a swept volume mesh provided in an embodiment of this application; Figure 6 This is a schematic diagram of a proximity scoring function provided in an embodiment of this application; Figure 7 This is a schematic diagram of a contact object registration system based on complementary docking provided in an embodiment of this application; Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0025] To make the above-mentioned objectives, features, and advantages of this application more apparent and understandable, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0026] In related technologies, contact registration methods involve a rigid probe making contact with the object surface, recording the probe's trajectory, and aligning the trajectory with a prior model to estimate the object's pose. However, existing methods simplify the probe to a single point or use only a spherical tip with radius compensation. Such simplification discards the geometric constraints imposed by the true probe shape, relies excessively on fragile point correspondences, and significantly degrades performance when the contact trajectory is sparse or discontinuous.
[0027] To achieve high-precision pose estimation, this application explicitly incorporates the probe geometry, reformulating contact registration as a docking of complementary shapes between the object and the probe. The probe geometry is encoded using a sweep volume, thus avoiding fragile point correspondences and transforming contact from a sparse correspondence into a dense geometric constraint. This approach naturally utilizes all trajectory point information (contact segments and non-contact parts) for robust pose estimation. Figure 1As shown, in the tooth preparation scenario, the robotic arm uses a cylindrical probe to scan the target tooth to obtain its geometry, and then registers it with the three-dimensional tooth model obtained from the preoperative oral scan, thereby achieving precise motion control.
[0028] Reference Figure 2 As shown, Figure 2 This is a flowchart illustrating the steps of a contact object registration method based on complementary shape docking, as provided in an embodiment of this application. Figure 2 As shown, the contact object registration method based on complementary shape docking may include steps S210 to S270: Step S210: Sample multiple first candidate directions from the object's orientation space, the orientation space representing a three-dimensional rotation group.
[0029] The direction space can also be understood as a three-dimensional special orthogonal group. The orientation space is a three-dimensional sphere. The first candidate orientation can be understood as a candidate orientation of an object, and it is represented by a unit quaternion. Multiple first candidate orientations are obtained by uniformly sampling (i.e., global sampling) in the orientation space.
[0030] In some embodiments, multiple first candidate orientations can be sampled from the orientation space of an object based on a Super-Fibonacci (SF) sequence, which is capable of generating low-discrepancy orientations in the orientation space to ensure that the sampled multiple first candidate orientations have lower discrepancy and more uniform coverage.
[0031] Step S220: Construct the object mesh and sweep volume mesh for each first candidate direction; wherein, the sweep volume mesh represents all covered voxels of the probe along the contact trajectory; the object mesh represents the voxels corresponding to the three-dimensional model of the object, and the object mesh has internal penalty constraints and contact local constraints. The internal penalty constraints are used to constrain the probe to contact the surface of the object and not to penetrate the object, and the contact local constraints are used to constrain the probe to contact the object surface that is allowed to be contacted.
[0032] Specifically, for each first candidate direction, the object's 3D model (CAD model) and the swept volume (i.e., all the covered volumes of the probe along the contact trajectory) are discretized into voxel sets with the same target spatial resolution, resulting in the object mesh and the swept volume mesh. Both the object mesh and the swept volume mesh are defined on their own spatial meshes, which are determined by a finite filling region around the axis-aligned bounding box of the corresponding geometry, and the voxel indices are mapped to world coordinates.
[0033] The object mesh contains not only geometric information but also internal penalty constraints and contact local constraints. Internal penalty constraints are used to mark voxels within the object; no swept volume mesh should occupy these voxels. Through internal penalty constraints, a reasonable contact state of "probe touching but not penetrating" is physically enforced. Contact local constraints are used to mark voxels on the object surface that are allowed to be touched (e.g., in dental registration tasks, only the supragingival portion of the tooth is an accessible area). Through contact local constraints, the search space is focused on task-relevant accessible surfaces. The swept volume mesh is a binary mesh; all covered voxels along the probe's contact trajectory are marked as 1, and uncovered voxels are marked as 0.
[0034] Step S230: Determine the global registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction. The complementary shape docking relationship between the object mesh and the swept volume mesh is measured by the surface overlap between the swept volume mesh and the object mesh. The global registration pose includes the global registration direction and the global registration voxel offset.
[0035] In this embodiment, the registration problem is transformed into a robust voxel spatial relationship evaluation. Based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction, the global registration pose is determined. This fully explores and utilizes the complete geometric constraints contained in the probe shape during the actual contact process, fundamentally eliminating the dependence on the easily failed point-to-point correspondence.
[0036] Specifically, the object mesh and the swept volume mesh can be embedded into a common mesh (which is filled with zeros by default) according to the target spatial resolution. This allows for the evaluation of the complementary shape docking relationship (i.e., the surface overlap between the swept volume mesh and the object mesh) under different voxel offsets (i.e., the index translation between the object mesh and the swept volume mesh). Since the object mesh has internal penalty constraints and contact local constraints, the overlap between the swept volume mesh and the voxels of the "contact local constraints" is rewarded while the overlap between the swept volume mesh and the voxels of the "internal penalty constraints" is penalized. Finally, the first candidate direction with the highest surface overlap is taken as the global registration direction, and the corresponding voxel offset is taken as the global registration voxel offset to determine the candidate registration pose.
[0037] Global orientation sampling is achieved through steps S210 to S230, ensuring that the global registration pose can be quickly located in the orientation space, avoiding unnecessary computational overhead, and significantly improving the overall search efficiency while ensuring accuracy.
[0038] Step S240: In the neighborhood centered on the global registration direction, uniformly sample multiple second candidate directions.
[0039] The adjacent region is on the quaternion unit sphere. The above is based on the global registration direction. The central crown area Multiple second candidate directions are obtained by performing uniform sampling (i.e., fine sampling) within the vicinity.
[0040] In some embodiments, a Cap-SF sequence (i.e., a low-discrepancy sequence sampled in the quaternion space near a given direction) can be used to uniformly sample multiple second candidate directions in a neighborhood centered on the global registration direction, thereby ensuring the uniformity of sampling in the local neighborhood and avoiding the bias caused by random sampling.
[0041] Step S250: Construct the object mesh and swept body mesh for each second candidate direction.
[0042] In this embodiment, the same construction method as step S220 above is used to construct the object mesh and swept volume mesh for each second candidate direction. That is, for each second candidate direction, the 3D model of the object (CAD model) and the swept volume (i.e., all the covered volumes of the probe along the contact trajectory) are discretized into voxel meshes with the same target spatial resolution to obtain the object mesh and swept volume mesh. The object mesh under the second candidate direction also has internal penalty constraints and contact local constraints. The internal penalty constraints are used to constrain the probe to contact the surface of the object without penetrating the object, and the contact local constraints are used to constrain the probe to contact the allowed object surfaces.
[0043] Step S260: Determine the local registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the second candidate direction. The local registration pose includes the local registration direction and the local registration voxel offset.
[0044] In this embodiment of the application, the same method as step S230 above is used to evaluate the complementary shape docking relationship between the object mesh and the swept volume mesh under each second candidate direction according to different voxel offsets, so that the second candidate direction corresponding to the highest surface overlap is taken as the local registration direction, and the corresponding voxel offset is taken as the local registration voxel offset.
[0045] By using the methods described in steps S240 to S260, a fine search is performed in the neighborhood centered on the global registration direction, quickly locating the local registration direction and avoiding unnecessary computational overhead. This significantly improves the overall search efficiency while ensuring accuracy.
[0046] Step S270: Based on the complementary shape docking relationship between the object and the swept body, the local registration pose is continuously optimized to obtain the optimal registration pose. The complementary shape docking relationship between the object and the swept body is measured by the surface overlap of the object and the swept body.
[0047] In this embodiment of the application, in order to address the registration error caused by the use of discrete direction sampling and grid representation, the local registration pose is fine-tuned through continuous optimization to eliminate the error introduced by direction discretization and achieve high-precision registration (pose estimation).
[0048] The complementary shape docking relationship between the object and the swept body is measured by the surface overlap of the object and the swept body. In other words, the embodiments of this application continuously optimize the local registration pose based on the complementary shape docking relationship of the precise shapes of the object and the swept body.
[0049] In some embodiments, the three-dimensional Euclidean transformation group can be used. We introduce a continuous gradient-based optimization method that uses Lie algebra updates to optimize the approach to the target around the optimal registration pose, thereby obtaining a high-precision optimal registration pose.
[0050] The technical solution adopted in this application constructs a swept volume mesh and an object mesh, and utilizes the "complementary shape docking" relationship between them to determine the registration pose. This fully exploits and utilizes the complete geometric constraints inherent in the probe shape during the actual contact process. Compared to existing solutions that rely on the correspondence of vulnerable points, this approach can determine the object pose more accurately and stably, maintaining excellent performance even when the contact trajectory is sparse or the contact is discontinuous. A three-stage strategy is employed: first, coarse sampling is performed in the global orientation space to quickly lock the global registration direction, i.e., the approximate region of the optimal registration direction; then, denser fine sampling is performed in this region to obtain the local registration pose; finally, the optimal registration pose is obtained through continuous optimization. This strategy effectively balances search efficiency and final accuracy, ensuring that the globally optimal solution can be found efficiently and reliably within a vast search space.
[0051] Furthermore, "internal penalty constraints" and "contact local constraints" are introduced when constructing the object mesh. This ensures that the registration results conform to physical reality: it prevents unreasonable situations where the probe penetrates the interior of the object and limits the contact range to the allowed object surface. These constraints effectively eliminate a large number of invalid or illogical registration results, further guaranteeing reliability in actual robot operation. In addition, this method is entirely based on the robot's own active contact and proprioception, without relying on any external tracking devices, thus completely eliminating the limitation of line-of-sight occlusion, giving it an irreplaceable advantage in narrow, enclosed, or structurally complex industrial scenarios.
[0052] In an optional embodiment, the "object mesh under the first candidate direction" in step S220 and the "object mesh under the second candidate direction" in step S250 are both constructed according to steps A1 to A3. Step A1: Rotate the 3D model of the object to the corresponding candidate orientation, calculate the first symbolic distance field, and map the first symbolic distance field to the object template; wherein, the value of the first symbolic distance field represents the shortest distance from a point in space to the object surface, and the object template is used to encourage the probe to contact the object surface, allow the probe to shallowly penetrate the object, and penalize the probe to deeply penetrate the object.
[0053] In this embodiment of the application, for a given three-dimensional model of an object, a discretized first symbolic distance field is calculated within its three-dimensional spatial range (corresponding candidate directions). For any point in the space, the value of the first symbolic distance field is the shortest distance from that point to the object's surface. A positive value of the first symbolic distance field indicates that the point is outside the object; a negative value indicates that the point is inside the object; and a value of 0 indicates that the point is on the object's surface.
[0054] Specifically, mapping the first symbolic distance field to an object template includes: Item B-1: When the first symbol distance field is greater than or equal to 0 and less than the first threshold, the value of the object template is in the range of 0 to the first threshold, monotonically decreasing from the maximum value to 0. Item B-2: When the first symbol distance field is less than 0 and greater than a negative number of the second threshold, the value of the object template is monotonically increasing from 0 to the maximum value in the interval from the second threshold to 0. Item B-3: When the distance field of the first symbol is less than or equal to a negative number of the second threshold, the value of the object template is less than 0; Item B-4: When the distance field of the first symbol is greater than or equal to the first threshold, the value of the object template is equal to 0.
[0055] For example, the first symbolic distance field is mapped to an object template. It can be represented as:
[0056] in, Indicates the distance field of the first symbol. Indicates the first threshold. This represents the second threshold. This represents a penalty for penalizing the depth of an object's surface. This represents the functional relationship between the first symbol distance field and the first threshold. This represents the functional relationship between the first symbol distance field and the second threshold.
[0057] For example, an object template is as follows Figure 3 As shown in (a), the object template is used to encourage the probe to contact the object surface and allow the probe to penetrate the object shallowly, and to punish the probe for deep penetration of the object.
[0058] Step A2: Calculate the unsigned distance based on the allowed contact object surfaces, and determine the surface mask based on the unsigned distance; wherein the unsigned distance represents the shortest distance from a point in space to the allowed contact object surface, and the surface mask is used to determine the allowed contact surface area.
[0059] In this embodiment, considering the limited accessible surface area of an object—for example, an object placed on a table may only have its top surface accessible—this area (the accessible object surface) is represented by a subset of the object mesh. Therefore, an unsigned distance is calculated starting from the accessible object surface. This unsigned distance represents the closest distance from a point in space to the surface of an object that is allowed to be touched, and this distance is always a non-negative number.
[0060] The surface mask is determined based on the unsigned distance. The surface mask can be defined as a linear gradient band around the zero level set, that is: for any point in space, if the corresponding unsigned distance is less than a first threshold... If the point is located near a surface area where contact is permitted, it is considered to be marked as such in the mask. Otherwise, mark it as 0.
[0061] For example, surface mask It can be represented as:
[0062] Step A3: Based on the object template and the surface mask, obtain an initial object mesh, and discretize the initial object mesh according to the target spatial resolution to obtain the object mesh under the first candidate direction or the object mesh under the second candidate direction.
[0063] Specifically, the object template and surface mask are combined element-wise, with the combination rule being that for each element, the value is the smaller of the object template and the surface mask. For example, the initial object mesh... It can be represented as:
[0064] Internal penalty constraints and contact local constraints are encoded simultaneously in the initial object mesh. Finally, the object mesh is obtained by sampling on the initial object mesh according to the target spatial resolution, i.e.:
[0065] in, Represents an object mesh, such as an object mesh. Figure 3 As shown in (b), the object mesh has internal penalty constraints and contact local constraints; Indicates the target spatial resolution; Represents the origin of the object's mesh. Represents the mesh voxel index of the object.
[0066] It is understandable that, regardless of whether it is the first candidate direction or the second candidate direction, the object mesh is constructed according to the process of steps A1 to A3 above, which ensures the consistency of the evaluation criteria.
[0067] The technical solution of this application combines symbolic distance field, task semantic mask and discrete voxelization technology to construct an information-rich and well-constrained object mesh. This object mesh not only defines the inner and outer boundaries of the object geometrically, but also realizes intelligent guidance of "encouraging contact, tolerating shallow penetration, strictly prohibiting deep penetration and limiting the area" at the physical and task levels, providing accurate and robust evaluation basis for the entire registration process.
[0068] In an optional embodiment, the "swept body mesh under the first candidate direction" in step S220 and the "swept body mesh under the second candidate direction" in step S250 are both constructed according to steps C1 to C3. Step C1: Determine the second symbolic distance field of the probe, which characterizes the shape of the probe; Step C2: Determine a binary occupancy field based on the second symbol distance field and the contact trajectory, wherein the binary occupancy field characterizes the sweeping body corresponding to the probe along the contact trajectory; Step C3: Discretize the binary occupancy field according to the target spatial resolution to obtain the swept volume mesh under the first candidate direction or the swept volume mesh under the second candidate direction.
[0069] In this embodiment, a binary occupancy field (i.e., swept volume grid points) is constructed using probes and contact trajectories (including multiple probe poses). The probes are characterized by a second symbolic distance field. If the probe covers point x along the contact trajectory, the corresponding binary occupancy field is 1. If the probe does not cover point x along the contact trajectory, the corresponding binary occupancy field is 0.
[0070] For example, binary occupied field Represented as:
[0071] in, This represents the pose of the i-th probe in the contact trajectory p, where i ranges from 1 to N; This represents the value in the second symbol distance field; This represents the step function.
[0072] By discretizing the binary occupancy field according to the target spatial resolution, the swept volume mesh is obtained, i.e.:
[0073] in, This represents a swept volume mesh, such as... Figure 4 As shown, the swept volume grid consists of all the covered voxels along the probe's contact trajectory; Indicates the target spatial resolution; Indicates the origin of the swept volume mesh. The voxel index represents the swept volume mesh.
[0074] Understandably, regardless of whether it is the first or second candidate direction, the swept volume mesh is constructed according to the process of steps C1 to C3 above, ensuring the consistency of the evaluation criteria.
[0075] The technical solution of this application accurately and completely reconstructs the three-dimensional volume (sweep) swept by the probe during its movement by using the probe's symbolic distance field and contact trajectory. This method preserves the probe's true geometry and avoids model errors caused by simplifying it to a point or sphere. The resulting sweep mesh is then compared with the object mesh using complementary shape docking evaluation, yielding more accurate and physically reliable registration results.
[0076] In an optional embodiment, step S230 above, "determining the candidate registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction," may specifically include steps S230-1 and S230-2: Step S230-1: Calculate the cross-correlation between the object mesh and the swept volume mesh under each first candidate direction according to different voxel offsets, and use it as the score of the first candidate direction and voxel offset; Step S230-2: Take the first candidate direction corresponding to the maximum score as the global registration direction, and take the voxel offset corresponding to the maximum score as the global registration voxel offset.
[0077] In this embodiment, the complementary shape docking relationship between the object mesh and the swept volume mesh is measured by the cross-correlation between them. The object mesh and the swept volume mesh are embedded into a common mesh (which is zero-filled by default) according to the target spatial resolution, and no resampling is performed. Registration is thus achieved by evaluating the cross-correlation between the object mesh and the swept volume mesh. For example, the cross-correlation between the object mesh and the swept volume mesh... The calculation can be expressed as:
[0078] in, A set of indices representing the object's mesh; Indices representing the object's mesh; This indicates the voxel offset.
[0079] In some embodiments, considering the large computational cost of directly calculating the cross-correlation between the object mesh and the swept volume mesh using Equation 7 above, the computational complexity is as follows: Therefore, the cross-correlation between the object mesh and the swept volume mesh under each first candidate direction is calculated using Fast Fourier Transform (FFT). The computational complexity can be reduced to [value missing] using FFT. .
[0080] Furthermore, the cross-correlation between the object mesh and the swept volume mesh Represented as:
[0081] in, This indicates element-wise multiplication. express To prevent aliasing, each axis of the mesh is zero-filled to at least [value missing]. ,in and These represent the side lengths of the two grids along this axis.
[0082] Cross-correlation reflects the degree of overlap (positive contribution) between the swept volume mesh and the object mesh near the allowed contact surface, and the degree of overlap (negative contribution) with the object mesh inside, under the current candidate direction and the current voxel offset. A higher cross-correlation indicates that the registration assumption is more reasonable.
[0083] For each first candidate direction, the cross-correlation between the object mesh and the swept volume mesh under different voxel offsets is calculated as the score of the first candidate direction and the voxel offset, and the voxel offset corresponding to the maximum score under the first candidate direction is determined. After traversing multiple first candidate directions, the first candidate direction corresponding to the global maximum score under multiple first candidate directions is taken as the global registration direction. In addition, the voxel offset corresponding to the global maximum score under multiple first candidate directions is taken as the global registration voxel offset. In subsequent local fine search, the voxel offset can be selected from the vicinity of the global registration voxel offset for cross-correlation calculation.
[0084] The technical solution of this application, based on the Fast Fourier Transform, performs cross-correlation calculations, achieving efficient evaluation of registration quality within a large discrete search space (direction × translation). It makes the originally computationally difficult three-dimensional global search feasible, providing a high-quality and reliable initial estimate for subsequent local fine search and continuous optimization. This is the key guarantee for the entire method to achieve sub-millimeter accuracy and practicality.
[0085] In an optional embodiment, step S260 above, "determining the local registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the second candidate direction," may specifically include steps S260-1 and S260-2: Step S260-1: Calculate the cross-correlation between the object mesh and the swept volume mesh under each second candidate direction according to different voxel offsets, and use it as the score of the second candidate direction and voxel offset; Step S260-2: Take the second candidate direction corresponding to the maximum score as the local registration direction, and take the voxel offset corresponding to the maximum score as the local registration voxel offset.
[0086] In this embodiment, a method similar to global coarse search (e.g., using fast Fourier transform) is employed to calculate the cross-correlation between the object mesh and the swept volume mesh under each second candidate direction, which serves as the score of the second candidate direction and the voxel offset, in order to achieve efficient search.
[0087] For each second candidate direction, the cross-correlation between the object mesh and the swept volume mesh under different voxel offsets is calculated as the score of that second candidate direction and voxel offset, and the voxel offset corresponding to the maximum score under that second candidate direction is determined. After traversing multiple second candidate directions, the second candidate direction and voxel offset corresponding to the global maximum score under multiple second candidate directions are used as the local registration direction and local registration voxel offset, respectively. Given the local registration voxel offset, the corresponding physical translation t between the object and the swept volume can be expressed as:
[0088] like Figure 5 As shown, Figure 5 (a) illustrates how the local registration voxel offset is determined by cross-correlation calculations between the object mesh and the swept volume mesh. Figure 5 (b) in the figure illustrates the registration result between the probe and the object, which is a complementary shape registration based on contact locality.
[0089] The technical solution of this application achieves fine-grained adjustment of object pose (direction and translation) by performing rapid cross-correlation calculations on various second candidate directions collected within a local region. This method combines an efficient global search strategy with precise matching of local regions, ensuring that the optimal solution can be selected quickly and accurately even with limited computing resources.
[0090] In an optional embodiment, step S240 above, "uniformly sampling multiple second candidate directions within a neighborhood centered on the global registration direction," may specifically include sub-steps S240-1 to S240-6: Step S240-1: Generate a low-difference sequence based on the current sampling number. The low-difference sequence includes a first low-difference sequence value, a second low-difference sequence value, and a third low-difference sequence value.
[0091] For each current sampling index i (where i ranges from 0 to n, and n is the number of second candidate directions for sampling), calculate the offset index. And generate low-dissimilarity sequences based on the offset index, i.e.:
[0092] in, Indicates the value of the first low-difference sequence. This indicates the second lowest differential sequence value. This indicates the third lowest differential sequence value. Both represent constants that generate low-difference sequences. This indicates taking the modulus.
[0093] Step S240-2: Determine the cumulative radius distribution required for uniform sampling of the neighboring region, and generate the sampling radius by inverse mapping transformation based on the cumulative radius distribution and the first low difference sequence value.
[0094] In this embodiment, in order to achieve uniform sampling within a neighboring region, inverse transformation sampling is used instead of radial regularity. Specifically, the cumulative radius distribution required for uniform sampling within the neighboring region is first determined. :
[0095] Where Z represents the normalization constant, The radius distribution required for uniform sampling of the neighboring area.
[0096] During sampling, the first low-discrepancy sequence value generated randomly will be used. Through inverse mapping transformation Mapped to the sampling radius r.
[0097] Step S240-3: Generate the axial angle range based on the sampling radius and the radius of the adjacent region.
[0098] For example, the axial angle range L can be expressed as:
[0099] in, Indicates the radius of the neighboring region.
[0100] Step S240-4: Generate a first sampling angle based on the axial angle range and the second low difference sequence value, and generate a second sampling angle based on the third low difference sequence value.
[0101] For example, the first sampling angle Second sampling angle They are represented as follows:
[0102] Among them, the first sampling angle exist Uniformly distributed within, second sampling angle exist Uniformly distributed within.
[0103] Step S240-5: Generate the sampling direction in the neighboring region based on the first sampling angle, the second sampling angle, and the sampling radius.
[0104] Among them, the sampling direction in the neighboring region is a global registration direction. Quaternions in local coordinate system, sampling direction in neighboring region It can be represented as:
[0105] Step S240-6: Obtain the second candidate direction based on the sampling direction in the neighboring region and the global registration direction.
[0106] Transform the sampling direction in the neighboring region to the global coordinate system to obtain the second candidate direction. It can be represented as:
[0107] in, It is quaternion multiplication, representing the composition of rotations.
[0108] For each second candidate direction, sampling is performed in accordance with steps S240-1 to S240-6 above, and multiple second candidate directions are obtained through multiple samplings.
[0109] By employing the technical solution of this application embodiment, combining low-difference sequences with a sampling method designed for the special orthogonal group characteristics of three dimensions, it is possible to achieve... Uniform and efficient sampling within the subspace. Compared to simple random sampling or truncation on the global sampling sequence, this method effectively avoids sample clustering or bias, ensuring that the local fine search can systematically explore all neighborhoods of the global registration direction, thereby achieving higher pose refinement accuracy with fewer samples.
[0110] In an optional embodiment, step S270 above, "based on the complementary shape docking relationship between the object and the swept body, the local registration pose is continuously optimized to obtain the optimal registration pose," may specifically include sub-steps S270-1 to S270-4: Step S270-1: For each probe pose of the contact trajectory, calculate the minimum signed distance between the object and the probe.
[0111] Step S270-2: Calculate a proximity score based on the minimum signed distance; wherein the proximity score is used to encourage the probe to contact the object surface, allow the probe to shallowly penetrate the object, and penalize the probe for deep penetration of the object.
[0112] Step S270-3: Construct an objective function based on the proximity score and optimization variables; wherein the optimization variables characterize the difference between the local registration pose and the optimal registration pose, and the objective function aims to maximize the total proximity score of all probe poses of the contact trajectory.
[0113] Step S270-4: Optimize the objective function using the physical boundary of the optimization variable as a constraint to obtain the target optimization variable, and update the local registration pose according to the target optimization variable to obtain the optimal registration pose.
[0114] In this embodiment of the application, the registration pose is... It consists of rotation and translation, that is ,in Indicates rotation, This represents translation. The local registration pose obtained through the refined search in steps S240 to S260 is... As a starting point for optimization, among which For local registration direction, The displacement corresponds to the local registration voxel offset; the optimization variables characterize the difference between the local registration pose and the optimal registration pose. Defined as Lie algebra coordinates, i.e.:
[0115] in, Indicates the translation component. Represents rotational components; optimization variables can be... Mapped to Increment ,Right now:
[0116] in, Represents optimization variables antisymmetric matrix, Represents rotational components antisymmetric matrix, Representing direction space Left Jacobian matrix It can be represented as:
[0117] in, Indicates the rotation angle, when At that time, adopt The series expansion is used for calculation to ensure numerical stability.
[0118] To better decouple translation and rotation updates, an anchor point is defined. Representing the geometric center of the object mesh, a left perturbation update is performed in the world coordinate system with the anchor point as the reference, expressed as:
[0119] in, , Compensation items Used to ensure that rotation occurs around the anchor point.
[0120] During continuous optimization, firstly in step S270-1, for each probe pose of the contact trajectory, the minimum signed distance between the object and the probe is calculated. .
[0121] In step S270-2, a smooth proximity scoring function is used. Minimum signed distance Mapped to a proximity rating, proximity rating function The design intent is consistent with the constraints of the object mesh, namely: constraining the probe to contact the surface of the object without penetrating the object, and constraining the probe to contact the object surface that is allowed to be contacted.
[0122] Specifically, the proximity score is calculated based on the minimum signed distance, including: Item D-1: The ratio of the minimum signed distance to the third threshold is determined as the target value; Item D-2: When the target value is greater than 1, the proximity score is 0. Item D-3: When the target value is greater than 0 and less than or equal to 1, the proximity score increases smoothly as the target value decreases, in order to reward the proximity of the object to the probe; Item D-4: When the target value is greater than the fourth threshold and less than or equal to 0, the proximity score is 0 and decreases smoothly to 0 as the target value decreases, so as to apply a progressively increasing penalty to the shallow penetration of the object and the probe. Item D-5: When the target value is less than or equal to the fourth threshold, the proximity score decreases from 0 as the target value decreases, and a preset penalty slope is used to penalize depth penetration.
[0123] For example, the target value b is represented as:
[0124] Where d represents the minimum signed distance, This represents the third threshold.
[0125] Proximity scoring function Represented as:
[0126] in, This represents the fourth threshold. This represents a negative number representing the ratio of the third threshold to the fourth threshold. g Indicates the penalty slope, coefficient Used to ensure the continuity of functions.
[0127] like Figure 6 As shown, the proximity scoring function The probe is encouraged to contact the object's surface, within a very small range near d = 0 (on the object's surface). Achieve the highest value; at the same time Shallow penetration is allowed when d is a small negative value (shallow penetration). The reward decreases as the value gradually declines from its peak. Penalizes deep penetration when d is a large negative value (deep penetration). A sharp decline, with severe punishment imposed; Ignoring distance, when d is a large positive value (distance from the surface), Approaching zero.
[0128] Next, in step S270-3, an objective function is constructed based on the proximity score and optimization variables. The optimization objective is to maximize the total proximity score of all probe postures of the contact trajectory. Accordingly, a minimization objective function is defined. for:
[0129] Among them, the first item The second term represents the negative value of the total proximity score for all probe attitudes in the contact trajectory. This is a Tikhonov regularization term, used to prevent excessively large optimization step sizes and improve numerical stability. This is the regularization coefficient.
[0130] Finally, in step S270-4, to ensure the physical rationality of the solution, boundary constraints are applied to the optimization variables. The final optimization problem can be expressed as:
[0131] in, and These represent the physical boundaries of the translation and rotation components, respectively. The attitude can be determined using formulas 17 to 19 above. The above is evaluated, and the target optimization variables are obtained by solving. The initial registration pose is updated according to the target optimization variable and formula 19 above to obtain the optimal registration pose.
[0132] The technical solution of this application embodiment achieves fine-grained adjustment of local registration pose by constructing an optimization problem that combines precise geometric distance query, physically meaningful proximity scoring, and regularization constraints. This continuous optimization step effectively eliminates the quantization error caused by the preceding discrete sampling process, fully utilizes the continuous geometric constraints inherent in the contact trajectory, and ultimately achieves high-precision registration.
[0133] In an optional embodiment, step S270-1 may include sub-steps S270-1-1 to S270-1-5: Step S270-1-1: Construct the target object mesh under the local registration direction, wherein the target object mesh is a bounding volume hierarchical structure mesh; Step S270-1-2: Calculate the nearest distance from each node in the target object mesh to the probe surface, and select nodes in the target object mesh whose nearest distance is less than a distance threshold as candidate nodes. The distance threshold is the sum of the radius of the sphere enclosing the node and a preset safety value. Step S270-1-3: Perform secondary filtering on the triangles within the candidate nodes to obtain a candidate triangle list; Step S270-1-4: From each candidate triangle in the candidate triangle list, determine a target point that is closest to the probe surface; Step S270-1-5: Generate a normal vector based on the target point, and generate a distance vector based on the normal vector, which serves as the minimum signed distance between the object and the probe.
[0134] In this embodiment, to evaluate the pose of each probe, a robust query is needed to determine the minimum signed distance between the object and the probe. First, in step S270-1-1, a target object mesh is constructed under the local registration direction. This target object mesh is stored in a bounding volume hierarchy (BVH), a tree-like data structure used to accelerate spatial queries (such as raycasting and collision detection). The probe shape can be determined by the second sign field corresponding to the probe. To express.
[0135] Next, in step S270-1-2, for each node c in the target object mesh, the shortest distance from each node in the target object mesh to the probe surface is calculated. If the condition is met, that is:
[0136] in, Represents the radius of the sphere. This indicates the preset safety value. In other words, if the nearest distance... Less than the distance threshold If the node is found to be a candidate node for further inspection, then that node and all its child nodes are removed. This condition ensures that any node that might be within a preset safety distance from the probe surface is considered a candidate node. No triangle within the range will be missed.
[0137] In step S270-1-3, the triangles within the candidate nodes (i.e., the triangles contained in the candidate nodes) are subjected to a secondary screening to obtain a list of candidate triangles. Specifically, a method similar to that in step S270-1-2 above can be used to calculate the circumcircle center and radius of the triangle within the candidate node. If the nearest distance from the circumcircle center to the probe surface is less than the target distance threshold (i.e., radius + preset safety value), then the triangle is considered a candidate triangle.
[0138] In step S270-1-4, for each candidate triangle in the candidate triangle list, a candidate target point can be calculated using the Frank-Wolfe algorithm. and the closest distance from the candidate target point to the probe surface After traversing all candidate triangles in the candidate triangle list, select the candidate target point with the shortest distance to the probe surface. target point ,Right now:
[0139] in, This represents the index of the candidate triangle containing the target point that is closest to the probe surface.
[0140] In step S270-1-5 at the target point Calculate the gradient of the second symbol range field of the probe. The gradient points to the probe's second symbolic range field at the target point. The direction of fastest growth is the outward normal direction of the probe surface. By normalizing this direction, we obtain the normal vector. And generate a distance vector based on the normal vector. .
[0141] For example, normal vector and They are represented as follows:
[0142] Wherein, distance vector This represents the minimum signed distance between the object and the probe, measured from the nearest point on the object to its corresponding projection point on the probe surface. The distance vector fully encodes the magnitude and direction of the minimum signed distance. When it is negative (penetration), and In the same direction, pointing outwards from the probe, indicating the vector that needs to push the object away from the probe; when When positive (separated), and The reverse direction, pointing inwards from the probe, indicates the vector that the object needs to move to contact the probe.
[0143] The technical solution adopted in this application combines a high-efficiency BVH hierarchy for rapid spatial pruning and performs precise convex optimization queries on the selected candidate geometries, achieving robust and efficient computation of the minimum signed distance in complex scenes. This method can accurately handle the complex spatial relationships between probes of arbitrary shapes and object meshes, providing reliable and differentiable geometric constraint information for gradient optimization, which is the foundation for ensuring high accuracy of the entire registration method.
[0144] This application also provides a contact object registration system based on complementary docking, referring to... Figure 7 As shown, Figure 7 This is a schematic diagram of a contact-type object registration system based on complementary shape docking, provided in an embodiment of this application. The system includes: The first sampling module 710 is used to sample multiple first candidate directions from the orientation space of the object, wherein the orientation space represents a three-dimensional rotation group; The first construction module 720 is used to construct an object mesh and a swept volume mesh for each first candidate direction; wherein, the swept volume mesh represents all covered voxels along the contact trajectory of the probe; the object mesh represents the voxels corresponding to the three-dimensional model of the object, and the object mesh has internal penalty constraints and contact local constraints, the internal penalty constraints are used to constrain the probe to contact the surface of the object and not to penetrate the object, and the contact local constraints are used to constrain the probe to contact the object surface that is allowed to be contacted. The first determining module 730 is used to determine the global registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction. The complementary shape docking relationship between the object mesh and the swept volume mesh is measured by the surface overlap between the swept volume mesh and the object mesh. The global registration pose includes the global registration direction and the global registration voxel offset. The second sampling module 740 is used to uniformly sample multiple second candidate directions in a neighborhood centered on the global registration direction; The second building module 750 is used to build the object mesh and swept volume mesh for each second candidate direction; The second determining module 760 is used to determine the local registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the second candidate direction. The local registration pose includes the local registration direction and the local registration voxel offset. The first optimization module 770 is used to continuously optimize the local registration pose based on the complementary shape docking relationship between the object and the swept body to obtain the optimal registration pose. The complementary shape docking relationship between the object and the swept body is measured by the surface overlap of the object and the swept body.
[0145] It is understood that the contact object registration system based on complementary docking in the embodiments of this application can realize the contact object registration method based on complementary docking in the above embodiments. The contact object registration system based on complementary docking has the same advantages as the contact object registration method based on complementary docking in the above embodiments compared with the prior art, and will not be repeated here.
[0146] This application also provides an electronic device, see embodiments thereof. Figure 8 , Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Figure 8 As shown, the electronic device 800 includes a memory 810 and a processor 820. The memory 810 and the processor 820 are connected via a bus for communication. The memory 810 stores a computer program that can run on the processor 820 to implement the steps of the contact object registration method based on complementary docking described in the embodiments of this application.
[0147] This application also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the contact object registration method based on complementary docking described in this application.
[0148] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the contact object registration method based on complementary docking described in this application.
[0149] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.
[0150] This application describes embodiments of methods and apparatus according to flowchart illustrations and / or block diagrams. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0151] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0152] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal equipment, causing a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0153] Although preferred embodiments of the present application have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of the embodiments of the present application.
[0154] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or terminal device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or terminal device. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or terminal device that includes said element.
[0155] The foregoing has provided a detailed description of a contact object registration method and system based on complementary docking provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A contact object registration method based on complementary shape docking, characterized in that, The method includes: Multiple first candidate directions are sampled from the object's orientation space, which represents a three-dimensional rotation group; Construct an object mesh and a swept volume mesh for each first candidate direction; wherein, the swept volume mesh represents all covered voxels of the probe along the contact trajectory; the object mesh represents the voxels corresponding to the 3D model of the object, and the object mesh has internal penalty constraints and contact local constraints. The internal penalty constraints are used to constrain the probe to contact the surface of the object and not to penetrate the object, and the contact local constraints are used to constrain the probe to contact the object surface that is allowed to be contacted. The global registration pose is determined based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction. The complementary shape docking relationship between the object mesh and the swept volume mesh is measured by the surface overlap between the swept volume mesh and the object mesh. The global registration pose includes the global registration direction and the global registration voxel offset. Within a neighborhood centered on the global registration direction, multiple second candidate directions are uniformly sampled; Construct the object mesh and swept volume mesh for each second candidate direction; Based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the second candidate direction, the local registration pose is determined, and the local registration pose includes the local registration direction and the local registration voxel offset. Based on the complementary shape docking relationship between the object and the swept body, the local registration pose is continuously optimized to obtain the optimal registration pose. The complementary shape docking relationship between the object and the swept body is measured by the surface overlap of the object and the swept body.
2. The method according to claim 1, characterized in that, The object mesh under the first candidate direction and the object mesh under the second candidate direction are both constructed according to the following steps; The 3D model of the object is rotated to the corresponding candidate orientation, the first symbolic distance field is calculated, and the first symbolic distance field is mapped to the object template; wherein, the value of the first symbolic distance field represents the shortest distance from a point in space to the object surface, and the object template is used to encourage the probe to contact the object surface, allow the probe to shallowly penetrate the object, and penalize the probe to deeply penetrate the object; Calculate the unsigned distance based on the allowed contact object surfaces, and determine the surface mask based on the unsigned distance; wherein the unsigned distance represents the shortest distance from a point in space to the allowed contact object surface, and the surface mask is used to determine the allowed contact surface region; Based on the object template and the surface mask, an initial object mesh is obtained, and the initial object mesh is discretized according to the target spatial resolution to obtain the object mesh under the first candidate direction or the object mesh under the second candidate direction.
3. The method according to claim 2, characterized in that, Mapping the first symbolic distance field to an object template includes: When the first symbol distance field is greater than or equal to 0 and less than the first threshold, the value of the object template is in the range of 0 to the first threshold, monotonically decreasing from the maximum value to 0. When the first symbol distance field is less than 0 and greater than the second threshold, the value of the object template is monotonically increasing from 0 to the maximum value in the range from the second threshold to 0. When the first symbol distance field is less than or equal to a negative number of the second threshold, the value of the object template is less than 0; When the first symbol distance field is greater than or equal to the first threshold, the value of the object template is equal to 0.
4. The method according to claim 1, characterized in that, Both the swept volume mesh under the first candidate direction and the swept volume mesh under the second candidate direction are constructed according to the following steps; Determine a second symbolic distance field for the probe, the second symbolic distance field characterizing the shape of the probe; Based on the second symbol distance field and the contact trajectory, a binary occupancy field is determined, wherein the binary occupancy field characterizes the sweep volume corresponding to the probe along the contact trajectory; The binary occupancy field is discretized according to the target spatial resolution to obtain a swept volume mesh under the first candidate direction or a swept volume mesh under the second candidate direction.
5. The method according to claim 1, characterized in that, Based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction, the global registration pose is determined, including: Based on different voxel offsets, calculate the cross-correlation between the object mesh and the swept volume mesh under each first candidate direction, and use it as the score of the first candidate direction and voxel offset. The first candidate direction corresponding to the maximum score is used as the global registration direction, and the voxel offset corresponding to the maximum score is used as the global registration voxel offset.
6. The method according to claim 1, characterized in that, Based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the second candidate direction, the local registration pose is determined, including: Based on different voxel offsets, calculate the cross-correlation between the object mesh and the swept volume mesh under each second candidate direction, and use it as the score of the second candidate direction and voxel offset. The second candidate direction corresponding to the maximum score is used as the local registration direction, and the voxel offset corresponding to the maximum score is used as the local registration voxel offset.
7. The method according to claim 1, characterized in that, Within a neighborhood centered on the global registration direction, multiple second candidate directions are uniformly sampled, including: Based on the current sampling sequence number, a low-difference sequence is generated, which includes a first low-difference sequence value, a second low-difference sequence value, and a third low-difference sequence value. Determine the cumulative radius distribution required for uniform sampling in the neighboring region, and generate the sampling radius through inverse mapping transformation based on the cumulative radius distribution and the first low-difference sequence value; Generate the axial angle range based on the sampling radius and the radius of the adjacent region; A first sampling angle is generated based on the axial angle range and the second low difference sequence value, and a second sampling angle is generated based on the third low difference sequence value; Based on the first sampling angle, the second sampling angle, and the sampling radius, a sampling direction is generated for the adjacent region. The second candidate direction is obtained based on the sampling direction in the neighboring region and the global registration direction.
8. The method according to any one of claims 1-7, characterized in that, Based on the complementary shape docking relationship between the object and the swept body, the local registration pose is continuously optimized to obtain the optimal registration pose, including: For each probe pose of the contact trajectory, calculate the minimum signed distance between the object and the probe; A proximity score is calculated based on the minimum signed distance; wherein the proximity score is used to encourage the probe to contact the object surface, allow the probe to shallowly penetrate the object, and penalize the probe for deep penetration of the object; An objective function is constructed based on the proximity score and optimization variables; wherein the optimization variables represent the difference between the local registration pose and the optimal registration pose, and the objective function aims to maximize the total proximity score of all probe poses of the contact trajectory. The objective function is optimized using the physical boundaries of the optimization variables as constraints to obtain the target optimization variables. The local registration pose is then updated based on the target optimization variables to obtain the optimal registration pose.
9. The method according to claim 8, characterized in that, The proximity score is calculated based on the minimum signed distance, including: The ratio of the minimum signed distance to the third threshold is determined as the target value; When the target value is greater than 1, the proximity score is 0. When the target value is greater than 0 and less than or equal to 1, the proximity score increases smoothly as the target value decreases, in order to reward the proximity of the object to the probe; When the target value is greater than the fourth threshold and less than or equal to 0, the proximity score decreases smoothly to 0 as the target value decreases, so as to apply a progressively increasing penalty to the shallow penetration of the object and the probe. When the target value is less than or equal to the fourth threshold, the proximity score decreases from 0 as the target value decreases, and a preset penalty slope is used to penalize depth penetration.
10. A contact-type object registration system based on complementary shape docking, characterized in that, The system includes: The first sampling module is used to sample multiple first candidate directions from the object's orientation space, wherein the orientation space represents a three-dimensional rotation group; The first construction module is used to construct the object mesh and the swept volume mesh under each first candidate direction; wherein, the swept volume mesh represents all the covered voxels of the probe along the contact trajectory; the object mesh represents the voxels corresponding to the three-dimensional model of the object, and the object mesh has internal penalty constraints and contact local constraints. The internal penalty constraints are used to constrain the probe to contact the surface of the object and not to penetrate the object, and the contact local constraints are used to constrain the probe to contact the object surface that is allowed to be contacted. The first determining module is used to determine the global registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the first candidate direction. The complementary shape docking relationship between the object mesh and the swept volume mesh is measured by the surface overlap between the swept volume mesh and the object mesh. The global registration pose includes the global registration direction and the global registration voxel offset. The second sampling module is used to uniformly sample multiple second candidate directions within a neighborhood centered on the global registration direction; The second building module is used to build the object mesh and swept volume mesh for each second candidate direction; The second determining module is used to determine the local registration pose based on the complementary shape docking relationship between the object mesh and the swept volume mesh under the second candidate direction. The local registration pose includes the local registration direction and the local registration voxel offset. The first optimization module is used to continuously optimize the local registration pose based on the complementary shape docking relationship between the object and the swept body to obtain the optimal registration pose. The complementary shape docking relationship between the object and the swept body is measured by the surface overlap of the object and the swept body.