Part positioning and recognition method and system based on machine vision

CN122453911BActive Publication Date: 2026-08-21WUXI VGAGE MEASURING EQUIP CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202610935007.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-06-26
Publication Date
2026-08-21
Estimated Expiration
2046-06-26

AI Technical Summary

Technical Problem

[0005]为解决现有技术在无序堆叠的汽车零配件检测场景中,因汽车零件自身斜面结构,导致边缘检测产生大量伪边界、零件分割精度低的问题,本发明在如下的多个方面中提供方案

Benefits of technology

1、本发明通过结合Z轴方差与水平有效物理展开面积构建堆叠边界能量特征、融合分布一致性系数与空间偏置距离构建抗噪纯化边界特征,有效抑制斜面结构引发的边缘检测伪边界,同时通过抗噪设计降低噪声干扰,确保点云分割精准,避免零件误分割。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122453911B_ABST
    Figure CN122453911B_ABST
Patent Text Reader

Abstract

The present application relates to the field of automobile accessory positioning and identification, and particularly relates to a part positioning and identification method and system based on machine vision, which comprises the following steps: collecting and preprocessing three-dimensional point clouds of parts, adaptively determining the number of local neighborhood points, constructing stacked boundary energy features by using the axial variance and horizontal expansion area of the point clouds, constructing anti-noise purification boundary features by combining energy distribution consistency coefficients and spatial bias distance; and establishing point cloud topology to make each point converge to the corresponding local minimum attractor domain and cluster into part point cloud clusters, removing invalid noise point clusters through geometric screening, selecting the highest position target point cloud cluster to solve the spatial pose of the part, and completing the accurate point cloud segmentation and spatial positioning of automobile parts. The present application suppresses the inclined plane false boundary and reduces noise interference by constructing stacked boundary energy features and anti-noise purification boundary features, and realizes the accurate point cloud segmentation and part positioning of disordered stacked automobile parts by cooperating with adaptive neighborhood configuration, topology clustering and geometric screening.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of automotive parts positioning and recognition. More particularly, it relates to a method and system for parts positioning and recognition based on machine vision. Background Technology

[0002] With the rapid development of intelligent manufacturing and industrial automation, machine vision, with its advantages of non-contact, high precision, and high efficiency in detection and recognition, has been applied to industrial scenarios such as automotive parts production, sorting, and grasping. Relying on image acquisition, feature extraction, and intelligent algorithm analysis, it can replace manual labor in completing target perception and position determination under complex working conditions, becoming a core supporting technology for realizing the automation and intelligent upgrading of production lines, and significantly improving the flexibility and intelligence level of industrial production.

[0003] In the intelligent sorting and data inspection processes of automotive parts, accurate part positioning and identification are prerequisites for the stable operation of subsequent automated processing steps. Reliable machine vision positioning and recognition capabilities enable rapid matching, posture correction, and coordinate output of parts in disordered stacking conditions, effectively reducing manual sorting costs, improving inspection efficiency and recognition accuracy. This is a key link in ensuring continuous and stable production of automotive parts on the assembly line, improving overall manufacturing efficiency, and enhancing product consistency.

[0004] Currently, in the scenario of detecting disordered stacked parts, the height abrupt boundaries formed in 3D point cloud data due to mutual occlusion of parts are the true segmentation lines that distinguish different parts. However, the inclined surfaces commonly found in automotive parts, such as continuous slopes, are geometrically similar to height abrupt boundaries. This leads to a simultaneous increase in the height variance or curvature gradient values ​​relied upon by traditional algorithms, resulting in indistinguishable pseudo-boundaries. This feature confusion makes it easy for the vision system to misclassify the inclined surfaces inside the parts as edges, resulting in the inability to accurately segment adhered parts and severely affecting the accuracy of part segmentation. Summary of the Invention

[0005] To address the problems of low part segmentation accuracy and numerous false boundaries in edge detection due to the sloping structure of automotive parts in the inspection of disordered stacked automotive parts, this invention provides solutions in the following aspects.

[0006] In the first aspect, a machine vision-based part localization and recognition method includes: acquiring and preprocessing three-dimensional point cloud data of the surface of the part to be identified; determining an adaptive local neighborhood number of points based on the total number of points in the preprocessed three-dimensional point cloud data; calculating local spatial statistics of each preprocessed three-dimensional point cloud data based on the local neighborhood number of points; constructing stacked boundary energy features; and constructing noise-resistant and purified boundary features based on the distribution consistency coefficient of the stacked boundary energy features within the local neighborhood and in combination with a spatial offset distance reflecting the asymmetry of energy distribution; wherein the distribution consistency coefficient is used to characterize the concentration of the stacked boundary energy features within the local neighborhood, and the spatial offset distance characterizes the concentration of the stacked boundary energy features within the local neighborhood. The deviation between the spatial position and the geometric center position after weighting the energy features of the stacked boundary is determined; a point cloud topology is constructed based on the noise-reducing and purified boundary features, and each point is controlled to iteratively converge to the local minimum attraction domain along the feature value decreasing direction. Point clouds that converge to the same attraction domain are divided into the same part point cloud cluster to complete part segmentation; based on preset geometric feature screening conditions, each part point cloud cluster is traversed and screened to remove invalid noise point clusters, and the part point cloud cluster with the highest physical position is selected as the target part point cloud cluster. The spatial position and principal axis direction angle of the target part point cloud cluster are calculated, and the spatial coordinates and principal axis orientation data of the target part point cloud cluster are output to complete the identification and spatial positioning of stacked parts.

[0007] Preferably, the step of constructing the stack boundary energy feature includes: Taking any three-dimensional spatial point in the three-dimensional point cloud data as the target point, obtain the local neighborhood of the target point, calculate the mean of the three-dimensional coordinates of all points in the local neighborhood, calculate the average of the sum of squares of the deviations of the three-dimensional coordinates of each point in the local neighborhood from the mean of the three-dimensional coordinates, and perform a square root operation on the average to obtain the standard deviation and variance in each coordinate axis direction in the local neighborhood. The effective physical unfolded area in the horizontal direction is obtained by multiplying the variance of the X-axis coordinates and the variance of the Y-axis coordinates of the 3D point cloud in the local neighborhood and then taking the square root. The ratio of the effective physical unfolded area to the number of points in the local neighborhood is used as the horizontal scattering value, which reflects the degree of voids caused by occlusion. The product of the variance of the Z-axis coordinates and the horizontal scattering value of the 3D point cloud in the local neighborhood is used as the stacking boundary energy feature.

[0008] Preferably, the noise-resistant purification boundary feature is calculated as follows: Taking any three-dimensional spatial point in the three-dimensional point cloud data as the target point, calculate the mean value of the stacked boundary energy characteristics of each point in the local neighborhood of the target point, calculate the absolute deviation between the stacked boundary energy characteristics of each point in the local neighborhood and the mean value to obtain the distribution characteristics, and divide the square of the mean value by the sum of the distribution characteristics and the preset minimum constant to obtain the distribution consistency coefficient. The weighted average of the stacked boundary energy characteristics of each point in the local neighborhood and the corresponding spatial coordinates of each point is used to calculate the Euclidean distance between the weighted average and the geometric center of the local neighborhood. The distribution consistency coefficient is then multiplied by the Euclidean distance to obtain the noise-resistant purification boundary characteristics of the target point.

[0009] Preferably, the step of constructing the point cloud topology based on the noise-resistant and purified boundary features includes: Taking any three-dimensional spatial point in the three-dimensional point cloud data as the target point, determine the neighboring point with the smallest anti-noise purification boundary feature value in the local neighborhood of the target point, and establish a directed edge from the target point to the neighboring point; Iterate through all 3D spatial points, jump to all 3D spatial points in the direction of the directed edge until they converge to the local minimum point of the noise-reducing and purified boundary feature value in the local neighborhood. Count all 3D spatial points that converge to the same local minimum point and divide them into the same part point cloud cluster to complete the point cloud segmentation of the stacked parts.

[0010] Preferably, the step of traversing and filtering the point cloud clusters of each component includes: Calculate the minimum bounding box of each part point cloud cluster, obtain the length, width, height and volume of the minimum bounding box, and determine the part point cloud clusters whose volume is less than the preset volume threshold or whose length and width do not conform to the preset size range of the part to be identified as invalid noise clusters and remove invalid noise clusters.

[0011] Preferably, the point cloud cluster of the target part is obtained in the following way: The average height of each filtered part point cloud cluster is calculated, and the part point cloud cluster with the highest average height is selected as the target part point cloud cluster.

[0012] Preferably, the step of determining the adaptive local neighborhood point number includes: Based on the total number of points in the 3D point cloud data, the square root of the total number of points is taken, the result is rounded down and then 1 is added to obtain the number of local neighborhood points of the 3D point cloud data.

[0013] Secondly, a machine vision-based part positioning and recognition system includes a processor and a memory, wherein the memory stores computer program instructions, and when the computer program instructions are executed by the processor, the above-mentioned machine vision-based part positioning and recognition method is implemented.

[0014] The present invention has the following effects: 1. This invention constructs stacked boundary energy features by combining Z-axis variance and horizontal effective physical unfolded area, and constructs noise-resistant and purified boundary features by fusing distribution consistency coefficient and spatial offset distance. This effectively suppresses false boundaries in edge detection caused by inclined structure, and reduces noise interference through noise-resistant design, ensuring accurate point cloud segmentation and avoiding missegmentation of parts.

[0015] 2. This invention adopts an adaptive local neighborhood point setting to adapt to 3D point cloud data of different densities. By combining point cloud topology construction and iterative convergence clustering, it can accurately segment disordered stacked automotive parts. By filtering out invalid noise clusters through geometric features and selecting the target cluster at the highest position, the stacked parts screening effect is optimized, improving the segmentation accuracy and positioning accuracy of disordered stacked parts, and providing accurate visual positioning data support for downstream automated processes. Attached Figure Description

[0016] Figure 1 This is a flowchart of steps S1-S5 in the machine vision-based part positioning and recognition method of this invention.

[0017] Figure 2 This is a structural block diagram of a machine vision-based part positioning and recognition system according to an embodiment of the present invention. Detailed Implementation

[0018] The technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are some embodiments of the present invention, but not all embodiments.

[0019] Reference Figure 1 The machine vision-based part positioning and recognition method includes steps S1-S5, as detailed below: S1: Acquire the 3D point cloud data of the surface of the part to be identified and perform preprocessing.

[0020] First, a stable optical scanning environment is established, ensuring stable ambient illumination and avoiding direct strong light and high-frequency vibration sources. Adaptive preprocessing is then performed based on the surface physical characteristics of the parts to be identified. If the part to be identified is a highly reflective metal part, a mirror object, or a transparent / semi-transparent material, a matte developer (matte spray) is evenly sprayed on the surface of the part, and the coating thickness is controlled within 0.1 mm to eliminate the interference of specular reflection on depth information; if the part to be identified is a black light-absorbing material, the exposure gain of the 3D scanning equipment is increased or the low-light enhancement scanning mode is switched.

[0021] Start the 3D scanning equipment, such as a structured light camera or line laser scanner, and use a standard calibration board to complete hand-eye calibration or system calibration, establishing the transformation matrix between the camera coordinate system and the robot arm's base coordinate system. Then, control the scanning equipment or turntable to perform a full-range scan of the part from multiple preset perspectives, ensuring that the surface coverage of the part is no less than 98%. For areas with deep holes or obstructions, adjust the incident angle to perform supplementary scanning, thereby capturing original 3D point cloud data containing complete geometric information of the part.

[0022] The acquired raw 3D point cloud data is denoised. The SOR (Statistical Outlier Removal) algorithm is used to calculate the average distance from each point to its neighboring points. The number of neighboring points and the standard deviation multiple threshold are set, and outlier noise points whose average distance exceeds the preset range are removed to retain the real part surface data.

[0023] A voxel mesh downsampling method is employed to divide the 3D space into several tiny cubic voxels of preset sizes. The centroid coordinates of all points within each voxel are calculated, and these centroid coordinates are used to represent all points within the voxel. This achieves uniform simplification of point cloud data while preserving the key geometric features of the part.

[0024] If the original data contains local point clouds from multiple perspectives, multi-view registration is performed using the ICP (Iterative Closest Point) algorithm or the generalized iterative closest point algorithm. By calculating the matching point pairs in the overlapping areas of point clouds from different perspectives, the optimal rigid body transformation matrix is ​​solved, and multiple frames of local point clouds are accurately fused into a unified world coordinate system to generate a complete 3D point cloud model of the part.

[0025] The fused point cloud is then subjected to attitude correction. Principal component analysis (PCA) is used to calculate the overall distribution covariance matrix of the point cloud, and the eigenvectors corresponding to the largest eigenvalues ​​are extracted as the principal axis directions of the part. A rotation transformation is then applied to align the principal axes of the part with the coordinate axes of the world coordinate system. Finally, clean, complete, and coordinate-uniform standardized 3D point cloud data is output as the input basis for subsequent part segmentation and spatial positioning calculations.

[0026] S2: Determine the number of adaptive local neighborhood points based on the total number of points in the preprocessed 3D point cloud data, calculate the local spatial statistics of each preprocessed 3D point cloud data based on the number of local neighborhood points, and construct the stacked boundary energy features.

[0027] First, the total number of spatial points in the 3D point cloud data is obtained. Then, the square root operation is performed on the total number of spatial points to establish a nonlinear mapping relationship between the overall size of the point cloud and the local search range. Next, the numerical result obtained by the square root operation is rounded down, and 1 is added to the rounded integer value to obtain the number of local neighborhood points of the target.

[0028] The above calculation method can automatically match an appropriate neighborhood search range based on the overall density of the point cloud data, ensuring that the subsequent feature extraction algorithm can maintain robustness and computational efficiency in point cloud data with different sampling densities.

[0029] By using statistical sample size estimation and empirical rules of spatial search algorithms, the local search range is appropriately increased as the overall data size increases, but the rate of increase should be slower than the rate of increase in the total data volume. When the total number of point clouds... When increasing the number of points, more points are needed to ensure statistical stability, but not necessarily a linear increase. Therefore, by setting... A curve with extremely slow growth is provided, and the number of neighborhood points is an integer, so a floor function is set. The purpose of adding 1 is to prevent division by zero errors or empty neighborhoods in boundary cases.

[0030] Using any 3D spatial point in the 3D point cloud data as the target point, a local neighborhood of the target point is constructed, and the mean 3D coordinates of all points within the local neighborhood are calculated. Subsequently, the average of the sum of squares of the deviations of the 3D coordinates of each point within the local neighborhood from the mean 3D coordinates is calculated, and the square root of this average is taken to obtain the standard deviation and variance along each coordinate axis in the local neighborhood.

[0031] Based on this, the variance of the X-axis coordinates and the variance of the Y-axis coordinates of the 3D point cloud in the local neighborhood are multiplied, and the square root of the product is taken to obtain the effective physical unfolded area that represents the distribution range of the local neighborhood on the horizontal plane. The ratio of the effective physical unfolded area to the number of points in the local neighborhood is used as the horizontal scattering value that reflects the degree of voids caused by occlusion.

[0032] Finally, the product of the variance of the Z-axis coordinates of the 3D point cloud in the local neighborhood and the horizontal scattering value is used as the stacked boundary energy feature to characterize the local geometric complexity of the target point.

[0033] Specifically, the energy characteristics of the stacked boundary satisfy the following relationship: ; In the formula, Indicates the first Energy characteristics of the stacked boundary of a local neighborhood of a point in three-dimensional space. It represents the variance of the 3D point cloud on the Z-axis within a local neighborhood, reflecting the degree of dramatic fluctuations in local height; This represents the variance of the 3D point cloud along the X-axis within a local neighborhood. This represents the variance of the 3D point cloud along the Y-axis within a local neighborhood. Represents the effective physical unfolded area. This represents the number of points in a local neighborhood. The denser the point cloud, such as a smooth sloping surface, the higher the ratio. The smaller the area, the better; if gaps are created due to obstruction, such as at the edge of a cliff, the search range will be passively expanded, leading to... Larger, at this time Increase. Denominator Used for normalization to eliminate the influence of the number of neighboring points on the numerical value.

[0034] It's important to note that on a horizontal plane, the density of the point cloud directly reflects the occupancy of objects. For a single, isolated object, the point cloud distribution in its local neighborhood is typically continuous and dense in the horizontal direction. However, when objects stack or occlude, point cloud data in the lower or occluded areas becomes missing, creating gaps and resulting in a statistically specific sparsity. Therefore, by calculating the geometric mean of the variances of the X and Y axes to obtain the effective physical unfolded area, and then normalizing it using the number of neighboring points to obtain the horizontal scattering value, we can quantify this change in local space utilization caused by occlusion. This not only reflects the planar extension of the local area but also implicitly reveals the degree of data loss due to line-of-sight occlusion.

[0035] In the vertical direction, typically referring to the direction of gravity or the sensor's observation direction, stacking manifests as the overlap of different objects along the Z-axis. For example, on a conveyor belt or shelf, when one object is stacked on top of another, it causes significant dispersion or jumps in the Z-axis coordinates near the same horizontal projection position. This drastic change in the height direction statistically manifests as a significant increase in the variance of the Z-axis coordinates. Therefore, the variance in the Z-axis direction can be considered a direct indicator of the height complexity or stacking potential of a local area.

[0036] Neither horizontal scattering nor Z-axis variance alone can fully describe the stacking boundary. For example, the rough surface of a single-layer object may have a large Z-axis variance, but it is not a stacking boundary; the edge of a large plane may have a large horizontal scattering, but no stacking has occurred. Therefore, the two must be fused to extract special regions that exhibit both height variation and horizontal occlusion. Essentially, this approach is based on mathematical modeling of the physical phenomena of stacking in three-dimensional space. By decoupling spatial dimensions, analyzing statistical distribution characteristics, and ultimately fusing multi-dimensional information, it aims to accurately locate stacking boundary regions with high operational value in complex point cloud data.

[0037] S3: Based on the distribution consistency coefficient of the stacked boundary energy features in the local neighborhood, and combined with the spatial offset distance reflecting the asymmetry of energy distribution, noise-resistant and purified boundary features are constructed; whereby the distribution consistency coefficient is used to characterize the concentration of the stacked boundary energy features in the local neighborhood, and the spatial offset distance characterizes the deviation between the weighted spatial position based on the stacked boundary energy features and the geometric center position.

[0038] Taking any three-dimensional point in the three-dimensional point cloud data as the target point, firstly, the mean value of the stacked boundary energy characteristics of each point in the local neighborhood of the target point is calculated, and the absolute deviation between the stacked boundary energy characteristics of each point in the local neighborhood and the mean value is calculated, so as to obtain the distribution characteristics that characterize the fluctuation of the characteristics. Then, the square of the mean value is divided by the sum of the distribution characteristics and the preset minimum constant to obtain the distribution consistency coefficient that reflects the stability of the energy characteristics in the local neighborhood.

[0039] Based on this, the spatial coordinates of each point are weighted according to the stacked boundary energy characteristics of each point in the local neighborhood, and the weighted average value is calculated. The Euclidean distance between the weighted average value and the geometric center of the local neighborhood is also calculated. This Euclidean distance represents the spatial offset distance of the high-energy feature points in the spatial distribution.

[0040] Finally, the distribution consistency coefficient is multiplied by the spatial offset distance to obtain the noise-resistant purified boundary feature of the target point. This feature is used to accurately locate and enhance the real object stacking boundary while suppressing noise interference.

[0041] Specifically, the noise-resistant purification boundary features satisfy the following relationship: ; In the formula, Indicates the first Noise-resistant purification boundary features of a three-dimensional spatial point Indicates the first Energy characteristics of the stacked boundary of three-dimensional spatial points Indicates the first Local neighborhood of a point in three-dimensional space The mean of the stacked boundary energy characteristics of all points is contained within. Indicates the first Local neighborhood of a point in three-dimensional space The absolute deviation of the energy characteristics of the stacked boundary at all points within the boundary. This represents a preset minimum constant. Represents local neighborhood Inner Energy characteristics of the stacked boundary of adjacent points Represents local neighborhood Inner The three-dimensional spatial coordinates of the adjacent points Indicates the first Local neighborhood of a point in three-dimensional space The geometric center.

[0042] In other words, the ratio Measuring the energy characteristics of stacked boundaries within the neighborhood The distribution consistency coefficient of the value is used to suppress isolated noise points, and the energy characteristics of the stacked boundary in the neighborhood at the true boundary are also considered. If the values ​​are all relatively high and close, the mean is large and the deviation is small, resulting in a larger ratio; at isolated noise points, the mean is small and the deviation is large, resulting in a ratio approaching zero. For the weighted centroid, For spatial bias, energy asymmetry at the actual cliff location will lead to a significant increase in spatial bias.

[0043] Specifically, local neighborhood The absolute deviation of the energy characteristics of the stacked boundary at all points within the boundary satisfies the following relationship: ; In the formula, Indicates the first Local neighborhood of a point in three-dimensional space The absolute deviation of the energy characteristics of the stacked boundary of all points within the neighborhood is not affected by the square amplification effect of extreme values, and can robustly calculate the distribution consistency coefficient of the characteristics within the neighborhood. This represents the number of local neighborhood points. Indicates the first Local neighborhood of a point in three-dimensional space Represents local neighborhood Inner Energy characteristics of the stacked boundary of adjacent points Indicates the first Local neighborhood of a point in three-dimensional space It contains the mean of the stacked boundary energy characteristics of all points.

[0044] In other words, in 3D point cloud processing, the accurate extraction of stacked boundaries is highly susceptible to interference from sensor noise, uneven point cloud density, and local occlusion. Simple geometric features, such as abrupt changes in normal vectors, often cannot distinguish between real object stacking faults and false edges caused by scanning noise. In the real physical world, the geometric properties of a smooth object surface, even an inclined plane, are usually continuous and stable in the local neighborhood; while noise or false edges usually manifest as local, isolated, and abrupt changes.

[0045] If the energy characteristics of a region's stacking boundary are highly uneven, i.e., there are outliers, then the distribution characteristics will fluctuate greatly, resulting in a smaller final distribution consistency coefficient. Conversely, if the energy characteristics of all points within a region are relatively similar, i.e., there is a true and continuous stacking boundary, then the consistency coefficient will be close to 1.

[0046] In stacked scenarios, the true boundary is typically an object on one side and a void or objects of varying heights on the other. This means that regions with high stacking boundary energy characteristics are not evenly distributed around the geometric center of their local neighborhood, but rather biased towards the side where the object exists. If the local region is a flat surface, the high-energy points are evenly distributed, and the weighted average will be close to the geometric center, with the distance approaching 0. However, if the local region is at a stacking boundary, the high-energy points will concentrate on one side of the boundary, causing the weighted average to deviate significantly from the geometric center.

[0047] Two conditions must be met simultaneously: stable local feature distribution and significant spatial bias. If the distribution consistency coefficient is small, it indicates noise, and the final eigenvalue will be lowered regardless of the bias distance. If the spatial bias distance is small, it indicates that it is not a boundary, and the final eigenvalue will be 0 regardless of the consistency. Only when both conditions are met simultaneously will the noise-resistant purification boundary features increase significantly. Through statistical stability analysis and geometric centroid shift effect, adaptive weighting of features is achieved through nonlinear combination, ensuring the algorithm's robustness to noise and high sensitivity to real stacked structures.

[0048] S4: Construct a point cloud topology based on noise-resistant and purified boundary features, control each point to iteratively converge to the local minimum attraction domain along the feature value decreasing direction, and divide the point cloud that converges to the same attraction domain into the same part point cloud cluster to complete the part segmentation.

[0049] The attraction domain is the range of influence of a local minimum point. All 3D point cloud data within the range of influence are attracted by the local minimum and converge at one point.

[0050] The local neighborhood of the target point is constructed and the directed edges of the target are determined. First, an arbitrary 3D spatial point is selected from the acquired 3D point cloud data as the target point. The target point is used as the basic unit to be processed, corresponding to a spatial position on the surface of the stacked parts. Next, a preset neighborhood search algorithm, such as the K-nearest neighbor algorithm or the sphere neighborhood search algorithm, is used to determine the local neighborhood range of the target point. The local neighborhood refers to the spatial region centered on the target point with a preset distance as its radius. All 3D spatial points contained within this region are considered neighbors of the target point. The preset distance of the neighborhood range can be adaptively adjusted according to the density of the 3D point cloud and the size of the stacked parts to ensure complete coverage of the effective neighbors around the target point while avoiding the introduction of excessively distant unrelated points.

[0051] For each neighboring point within the local neighborhood of the target point, the noise-resistant purification boundary feature value of the neighboring point is calculated. The noise-resistant purification boundary feature value is used to characterize the boundary properties and noise resistance of the neighboring point in the local neighborhood. The smaller the noise-resistant purification boundary feature value of the neighboring point, the closer the neighboring point is to the non-boundary area of ​​the part surface and the less affected it is by noise. The location of the neighboring point can better reflect the spatial distribution characteristics of the part itself.

[0052] Among all neighboring points of the target point, the neighboring point with the smallest noise reduction and purification boundary feature value is selected and determined as the preferred neighboring point of the target point. A directed edge is established from the target point to the preferred neighboring point. The direction of the directed edge is the direction of the target point to its "optimal" neighbor in its local neighborhood. The target point is more likely to belong to the part region represented by the preferred neighboring point in space.

[0053] Traverse all spatial points and perform step-by-step jumps and clustering. Following the above operation process, perform the same processing on each 3D spatial point in the 3D point cloud data: determine the local neighborhood of the 3D spatial point, calculate the noise-resistant purification boundary feature value of all adjacent points in the neighborhood, select the adjacent point with the smallest feature value, and establish a directed edge from the spatial point to the preferred adjacent point to ensure that each spatial point has a unique pointing direction, forming a directed edge network covering the entire 3D point cloud.

[0054] Next, for each 3D spatial point, a step-by-step jump operation is performed according to the direction of the directed edge of the 3D spatial point itself: starting from the current spatial point, jump to the preferred neighboring point pointed to by the directed edge of the 3D spatial point, then take the preferred neighboring point as the new current point, jump to the preferred neighboring point pointed to by the directed edge of the new current point, and so on, continuing step-by-step jumps until a spatial point where further jumps are not possible is reached. The spatial point where further jumps are not possible is the local minimum point of the noise reduction and purification boundary feature value in the local neighborhood. The core characteristics are: within the local neighborhood of the spatial point where further jumps are not possible, its own noise reduction and purification boundary feature value is less than the noise reduction and purification boundary feature values ​​of all neighboring points; the spatial point where further jumps are not possible has no directed edges pointing to other neighboring points; it is the convergence endpoint in the directed edge network; it corresponds to the core reference point of the part point cloud cluster; and can most accurately represent the spatial attributes of the part.

[0055] Statistical analysis of the jump results for all 3D spatial points reveals that all 3D spatial points ultimately converging at the same local minimum point are grouped into the same part point cloud cluster. Since these spatial points converge to the same core reference point through successive jumps, it indicates a high degree of consistency in their spatial distribution and boundary characteristics, suggesting they all belong to the surface points of the same stacked part. Spatial points converging at different local minima correspond to different part point cloud clusters. Through this process, the 3D point cloud segmentation of all stacked parts can be completed, achieving precise separation of different stacked parts.

[0056] It should be noted that throughout the process, the local neighborhood range setting and the algorithm for calculating noise-resistant and purified boundary feature values ​​can be adaptively adjusted according to the actual accuracy of the 3D point cloud data and the structural complexity of the stacked parts. However, the core logic remains unchanged, which is to ensure the accuracy and universality of the segmentation results by pointing directed edges to the feature value minimum point, gradually converging to the local minimum point, and clustering according to the convergence endpoint.

[0057] S5: Based on the preset geometric feature filtering conditions, the point cloud clusters of each part are traversed and filtered to remove invalid noise point clusters. The point cloud cluster of the part with the highest physical position is selected as the target part point cloud cluster. The spatial position and main axis direction angle of the target part point cloud cluster are calculated, and the spatial coordinates and main axis orientation data of the target part point cloud cluster are output to complete the identification and spatial positioning of the stacked parts.

[0058] For the point cloud clusters of parts obtained in the above steps, calculate the corresponding three-dimensional minimum bounding box of each point cloud cluster. The minimum bounding box is the smallest volume regular hexahedron that can completely enclose all three-dimensional spatial points in the current point cloud cluster. It is obtained by using axial bounding box or directional bounding box calculation methods to ensure that the bounding box fits the solid outline of the point cloud cluster perfectly and can truly reflect the actual space occupied and volume of the corresponding point cloud cluster.

[0059] Extract the geometric feature parameters of each smallest bounding box, specifically including the length, width, and height of the bounding box along the three-dimensional coordinate system axis, as well as the total volume of the bounding box calculated from the length, width, and height. These parameters directly correspond to the external dimensions and spatial volume of the solid part represented by the current part point cloud cluster, and can objectively reflect the true size and outline specifications of the part.

[0060] A preset screening and judgment rule is established, and the geometric feature parameters of each part point cloud cluster are compared with preset standard thresholds. The preset volume threshold is a lower limit of volume set in advance based on the minimum nominal volume of the target real part, and the preset size range is a qualified size range pre-calibrated based on the design length and design width of the target part to be identified. A part point cloud cluster that meets any of the following unqualified conditions is judged as an invalid noise cluster: First, the minimum bounding box volume corresponding to the current part point cloud cluster is less than the preset volume threshold. This type of cluster is usually formed by the aggregation of point cloud noise, discrete isolated points, and tiny debris points, and is not a real part to be identified. Second, the length and width of the minimum bounding box corresponding to the current part point cloud cluster fall outside the preset qualified size range of the part to be identified. This type of cluster corresponds to non-target part clusters or interference pseudo-clusters with distorted dimensions and contours, and has no effective detection and positioning value or entity significance.

[0061] All point cloud clusters that are determined to be invalid noise clusters are directly removed from the overall point cloud data. Only valid part point cloud clusters that meet the volume requirements and whose external dimensions fully conform to the preset specifications of the parts to be identified are retained. Finally, a clean, accurate, and directly usable stacked part segmentation result is obtained that can be used for subsequent part detection and positioning.

[0062] To clearly identify the priority targets, reduce interference from invalid filtering, and improve positioning accuracy, it is necessary to select the target part point cloud cluster that ranks first from the valid part point cloud clusters after the above filtering. The specific operation is as follows: For each valid point cloud cluster of the selected parts, its average height is calculated. The average height is based on a preset 3D coordinate system, with the Z-axis set as the height direction. It is obtained by extracting the Z-axis coordinate values ​​of all 3D spatial points within the current part point cloud cluster and calculating the arithmetic mean of all Z-axis coordinate values. The average height is a core parameter characterizing the height position of the part point cloud cluster in the stacking space. It directly corresponds to the layer position of the part in the stacking state. The higher the average height, the higher the part is in the stacking structure and the less it is occluded by surrounding parts.

[0063] A comprehensive comparison and sorting of the average heights of all valid part point cloud clusters is performed. The part point cloud cluster with the largest average height value is selected and identified as the target part point cloud cluster. The target part point cloud cluster corresponds to the valid part in the top layer of the stacked parts. Its selection can provide clear and specific target positioning data for downstream automated inspection and sorting processes, effectively improving the efficiency and reliability of part identification and positioning.

[0064] This invention also provides a machine vision-based part positioning and recognition system. For example... Figure 2As shown, the system includes a processor and a memory. The memory stores computer program instructions, which, when executed by the processor, implement the machine vision-based part positioning and recognition method according to the first aspect of the present invention. The system also includes other components well known to those skilled in the art, such as a communication bus and a communication interface, the setup and functions of which are known in the art and will not be described further here.

[0065] It should be noted that those skilled in the art can make various modifications and improvements without departing from the inventive concept, and these all fall within the scope of protection of this invention. Therefore, the scope of protection of this patent should be determined by the appended claims.

Claims

1. A machine vision-based method for part positioning and recognition, characterized in that, include: Acquire 3D point cloud data of the surface of the part to be identified and perform preprocessing; The number of adaptive local neighborhood points is determined based on the total number of points in the preprocessed 3D point cloud data. Based on the number of local neighborhood points, the local spatial statistics of each preprocessed 3D point cloud data are calculated, and the stacking boundary energy features are constructed. This includes: taking any 3D spatial point in the 3D point cloud data as the target point, obtaining the local neighborhood of the target point, calculating the mean of the 3D coordinates of all points in the local neighborhood, calculating the average of the sum of squares of the deviations of the 3D coordinates of each point in the local neighborhood from the mean of the 3D coordinates, and performing a square root operation on the average to obtain the standard deviation and variance in each coordinate axis direction in the local neighborhood. The effective physical unfolded area in the horizontal direction is obtained by multiplying the variance of the X-axis coordinates and the variance of the Y-axis coordinates of the 3D point cloud in the local neighborhood and then taking the square root. The ratio of the effective physical unfolded area to the number of points in the local neighborhood is used as the horizontal scattering value, which reflects the degree of voids caused by occlusion. The product of the variance of the Z-axis coordinates and the horizontal scattering value of the 3D point cloud in the local neighborhood is used as the stacking boundary energy feature. Based on the distribution consistency coefficient of the stacked boundary energy features in the local neighborhood, and combined with the spatial offset distance reflecting the asymmetry of energy distribution, noise-resistant and purified boundary features are constructed, including: taking any three-dimensional spatial point in the three-dimensional point cloud data as the target point, calculating the mean value of the stacked boundary energy features of each point in the local neighborhood of the target point, calculating the absolute deviation between the stacked boundary energy features of each point in the local neighborhood and the mean value to obtain the distribution features, and dividing the square of the mean value by the sum of the distribution features and the preset minimum constant to obtain the distribution consistency coefficient; The weighted average of the stacked boundary energy characteristics of each point within the local neighborhood and the corresponding spatial coordinates is used to calculate the Euclidean distance between the weighted average and the geometric center of the local neighborhood. The noise-resistant purification boundary characteristics are then calculated using the following formula: ; In the formula, Indicates the first Noise-resistant purification boundary features of a three-dimensional spatial point Indicates the first Energy characteristics of the stacked boundary of three-dimensional spatial points Indicates the first Local neighborhood of a point in three-dimensional space The mean of the stacked boundary energy characteristics of all points is contained within. Indicates the first Local neighborhood of a point in three-dimensional space The absolute deviation of the energy characteristics of the stacked boundary at all points within the boundary. This represents a preset minimum constant. Represents local neighborhood Inner Energy characteristics of the stacked boundary of adjacent points Represents local neighborhood Inner The three-dimensional spatial coordinates of the adjacent points Indicates the first Local neighborhood of a point in three-dimensional space The geometric center; The distribution consistency coefficient is used to characterize the concentration of stacked boundary energy features within the local neighborhood, and the spatial offset distance characterizes the deviation between the weighted spatial position based on the stacked boundary energy features and the geometric center position. Based on the noise-resistant and purification boundary features, a point cloud topology is constructed, and each point is controlled to iteratively converge to the local minimum attraction domain along the feature value decreasing direction. Point clouds that converge to the same attraction domain are divided into the same part point cloud cluster to complete part segmentation. Based on preset geometric feature filtering conditions, the point cloud clusters of each part are traversed and filtered to remove invalid noise point clusters. The point cloud cluster of the part with the highest physical position is selected as the target point cloud cluster. The spatial position and main axis direction angle of the target point cloud cluster are calculated, and the spatial coordinates and main axis orientation data of the target point cloud cluster are output to complete the identification and spatial positioning of the stacked parts.

2. The machine vision-based part positioning and recognition method according to claim 1, characterized in that, The construction of the point cloud topology based on the noise-reducing and purified boundary features includes: Taking any three-dimensional spatial point in the three-dimensional point cloud data as the target point, determine the neighboring point with the smallest anti-noise purification boundary feature value in the local neighborhood of the target point, and establish a directed edge from the target point to the neighboring point; Iterate through all 3D spatial points, jump to all 3D spatial points in the direction of the directed edge until they converge to the local minimum point of the noise-reducing and purified boundary feature value in the local neighborhood. Count all 3D spatial points that converge to the same local minimum point and divide them into the same part point cloud cluster to complete the point cloud segmentation of the stacked parts.

3. The machine vision-based part positioning and recognition method according to claim 1, characterized in that, The step of traversing and filtering the point cloud clusters of each component includes: Calculate the minimum bounding box of each part point cloud cluster, obtain the length, width, height and volume of the minimum bounding box, and determine the part point cloud clusters whose volume is less than the preset volume threshold or whose length and width do not conform to the preset size range of the part to be identified as invalid noise clusters and remove invalid noise clusters.

4. The machine vision-based part positioning and recognition method according to claim 1, characterized in that, The target part point cloud cluster is obtained as follows: The average height of each filtered part point cloud cluster is calculated, and the part point cloud cluster with the highest average height is selected as the target part point cloud cluster.

5. The machine vision-based part positioning and recognition method according to claim 1, characterized in that, The steps for determining the adaptive local neighborhood point number include: Based on the total number of points in the 3D point cloud data, the square root of the total number of points is taken, the result is rounded down and then 1 is added to obtain the number of local neighborhood points of each 3D point cloud data.

6. A machine vision-based part positioning and recognition system, characterized in that, include: A processor and a memory, the memory storing computer program instructions that, when executed by the processor, implement the machine vision-based part positioning and recognition method according to any one of claims 1-5.

Citation Information

Patent Citations

  • Adaptive plane stacked object segmentation method and system based on three-dimensional point cloud

    CN122066719A

  • Stacking scene-oriented workpiece segmentation and pose estimation method, system and equipment

    CN122089827A