Search

CN-122023274-A - Real-time normal computing method for multi-line laser point cloud

CN122023274ACN 122023274 ACN122023274 ACN 122023274ACN-122023274-A

Abstract

The invention relates to a real-time normal calculation method of a multi-line laser point cloud, which comprises the following steps of 1, calibrating a cross laser surface equation, 2, processing a cross laser line image, and 3, calculating a direction vector Step 4, calculating the direction vector Step 5, calculating the normal vector of the laser line . The method has the advantages that normal vector calculation of the laser center point can be completed only according to a calibrated laser surface equation, an internal reference matrix of a camera and a distortion parameter matrix, the method does not need to additionally calculate the neighborhood point of the laser center, the three-dimensional coordinates of the neighborhood point of the laser center can be directly obtained from the processed cross laser line image, the calculation speed of the normal vector is greatly increased, real-time calculation of the normal direction of the cross laser line can be realized, and guarantee is provided for subsequent display of the three-dimensional point cloud model.

Inventors

  • LI PEIWU
  • FENG YUN
  • SU KAI
  • WU JIANENG
  • WU RONGYU
  • TANG FENG

Assignees

  • 桂林量具刃具有限责任公司

Dates

Publication Date
20260512
Application Date
20251231

Claims (9)

  1. 1. The real-time normal computing method of the multi-line laser point cloud is characterized by comprising the following steps of: step 1, completing camera parameter calibration and laser center three-dimensional coordinate calculation by shooting a plurality of groups of calibration plate images containing cross laser lines and no laser lines, and finally obtaining 13 equations of the cross laser lines by adopting quadric surface model fitting; step 2, according to the laser parameters corresponding to the laser surface equation obtained in the step 1, the control equipment obtains a scanning image, and the scanning image is subjected to distortion correction, filtering, binarization and contour segmentation to obtain a contour image of a single laser line; Step 3, based on the camera parameter calibration of step 1, the laser surface equation obtained in step 1 and the single laser line contour image obtained in step 2, firstly extracting the laser center sub-pixel coordinates and solving the laser center three-dimensional coordinates, and then obtaining a direction vector by calculating the partial derivative of the laser surface equation ; Step 4, storing coordinates according to rows and determining neighborhood points based on the single laser line profile map output in the step 2 and the laser center three-dimensional coordinates obtained in the step 3, fitting a straight line and unitizing a direction vector to obtain a direction vector ; Step 5, the direction vector obtained in step 3 And the direction vector obtained in the step4 And (3) performing cross multiplication operation, and combining the laser center three-dimensional coordinates obtained in the step (3) to complete normal vector orientation and point cloud model display, thereby realizing real-time normal calculation of the multi-line laser point cloud.
  2. 2. The real-time normal computing method of a multi-line laser point cloud according to claim 1, wherein step 1 specifically comprises: Step 1.1, placing a calibration plate in a left camera view field and a right camera view field, controlling a laser to project crossed left line laser and crossed right line laser, and synchronously triggering a camera to shoot a calibration plate image containing laser lines; Step 1.2, filtering, binarizing, contour extraction, contour screening, contour sub-pixel point calculation and sub-pixel contour fitting treatment are carried out on the calibration plate image without the laser line obtained in the step 1.1, so that sub-pixel center coordinates of each marking circle on the calibration plate are obtained and sequenced, and the center sub-pixel coordinates of each marking circle are related to corresponding three-dimensional coordinates; Step 1.3, calculating a laser center three-dimensional coordinate; step 1.4, the laser center three-dimensional coordinates obtained in the step 1.3 are processed Classifying, and substituting the coordinates of the laser center three-dimensional points belonging to the same laser surface into the quadric surface model Performing quadric fitting to obtain the following laser quadric equation: ; Wherein, the Equation coefficients representing the quadric surface, Representing the three-dimensional coordinates of all laser centers on the same laser plane, wherein , And solving the equation set by a least square method to obtain equation coefficients of 13 crossed left-line and right-line laser surfaces, namely a laser surface equation.
  3. 3. The real-time normal computing method of a multi-line laser point cloud according to claim 2, wherein step 1.3 specifically comprises: Step 1.3.1, calculating to obtain the center pixel coordinates of the crossed laser lines by a gray level gravity center method based on the laser line-containing calibration plate image obtained in the step 1.1 ; Step 1.3.2, based on the camera external parameter matrix obtained in step 1.2, converting the center three-dimensional coordinates of the marking circle on the calibration plate into a camera coordinate system through the following formula: ; Wherein, the Representing the three-dimensional coordinates of the center of the circle in the camera coordinate system, Representing the three-dimensional coordinates of the center of a circle in the world coordinate system, A rotation matrix of a camera coordinate system corresponding to the current calibration plate pose and a world coordinate system is represented, A translation matrix of a camera coordinate system corresponding to the current calibration plate pose and a world coordinate system is represented; Step 1.3.3, converting the converted circle center three-dimensional coordinates Substitution into plane equations Let c= 1, The following equation is obtained: ; Wherein the method comprises the steps of , Solving the equation set through a least square method to obtain an equation of the plane of the calibration plate under a camera coordinate system; Step 1.3.4, based on the camera internal reference matrix obtained in step 1.2 And the center pixel coordinates of the laser line obtained in the step 1.3.1 The normalized coordinates of the laser center are calculated by the following formula : ; Step 1.3.5, normalizing the coordinates according to the three-dimensional coordinates (0, 0) of the camera center and the laser center obtained in the step 1.3.4 The following two-point linear parameter equation is established: ; and (3) the linear parameter equation is obtained by simultaneous calibration of the plane equation of the plate: ; Solving the above equation can obtain And then re-arranging The linear parameter equation is carried in to obtain the laser center three-dimensional coordinate of the laser center pixel under the camera coordinate system 。
  4. 4. The real-time normal computing method of a multi-line laser point cloud according to claim 2, wherein step 2 specifically comprises: Step 2.1, acquiring a scanning image, namely controlling the laser to alternately throw left line/right line laser according to the laser parameters corresponding to the laser surface equation obtained in the step 1, synchronously triggering a camera to shoot a deformation image containing laser lines, synchronously triggering the camera to shoot an image without the laser lines by a gap light supplementing lamp, circularly operating, and outputting a plurality of groups of scanning images containing the laser lines and without the laser lines; Step 2.2, preprocessing the image, namely firstly carrying out distortion correction on the image containing the laser line obtained in the step 2.1 and the camera distortion parameter matrix obtained in the step 1.2, then carrying out Gaussian filtering noise reduction, and finally binarizing and filtering background miscellaneous points to obtain a preprocessed image only retaining the laser line data; And 2.3, extracting and dividing the contours, namely extracting laser line contours from the preprocessed image obtained in the step 2.2, and independently dividing each contour to obtain a contour image only containing a single laser line.
  5. 5. The real-time normal computing method of a multi-line laser point cloud according to claim 2, wherein step 3 specifically comprises: step 3.1, extracting sub-pixel coordinates (u, v) of a laser center based on the single laser line contour image obtained in the step 2 by adopting a gray level gravity center method or a Steger method, and outputting the sub-pixel coordinates of the laser center; And 3.2, combining the laser center sub-pixel coordinates (u, v) obtained in the step 3.1, the camera internal reference matrix obtained in the step 1.2 and the laser surface quadric equation obtained in the step 1.4, and establishing the following equation set: ; Wherein, the Represent the first The quadric coefficients of the individual laser facets, , And Respectively represent And Focal length in the direction of the beam, And Respectively represent And Principal point coordinates of the direction, solving the equation set to obtain laser center three-dimensional point coordinates ; Step 3.3, the laser surface quadric equation obtained in step 1.4 and the laser center three-dimensional point coordinates obtained in step 3.2 Calculating a direction vector 。
  6. 6. The real-time normal computing method of a multi-line laser point cloud as recited in claim 5, wherein step 3.3 specifically comprises: Step 3.3.1, the first step obtained in step 1.4 The quadric equation of each laser surface is converted into a hidden function form: ; step 3.3.2, solving the hidden functions of step 3.3.1 respectively 、 And The partial derivative in the direction yields the following partial derivative equation: ; Step 3.3.3, the coordinates of the laser center three-dimensional point obtained in the step 3.2 Substituting the vector into the partial derivative equation set obtained in the step 3.3.2, and calculating to obtain a direction vector 。
  7. 7. The method for real-time normal computation of a multi-line laser point cloud according to claim 5, wherein step 4 specifically comprises: Step 4.1, storing three-dimensional coordinates of all laser centers on the laser line according to rows based on the single laser line profile image obtained in the step 2 and the three-dimensional coordinates of the laser centers obtained in the step 3.2, and outputting an ordered three-dimensional coordinate set of the laser centers; step 4.2, judging the position of the current laser center point through the laser center three-dimensional coordinate set obtained in the step 4.1, namely traversing the laser center point backwards if the laser center point is positioned at the head end of the laser line If the neighborhood points are positioned in the middle, traversing the neighborhood points to the head and the tail respectively If the adjacent point is at the tail end, traversing forward A neighborhood point for outputting the laser including the current laser center point Three-dimensional coordinates of the neighboring points; step 4.3, fitting a straight line and unitizing the three-dimensional coordinates of the neighborhood points obtained in the step 4.2 to obtain a direction vector 。
  8. 8. The real-time normal computing method of a multi-line laser point cloud as recited in claim 7, wherein step 4.3 specifically comprises: and 4.3.1, substituting the three-dimensional coordinates of the neighborhood points obtained in the step 4.2 into the following linear parameter equation: ; Wherein, the Three-dimensional coordinates representing a point on a straight line, obtaining a direction vector of the straight line by fitting ; Step 4.3.2, vector the direction of the straight line Unitizing to obtain a direction vector 。
  9. 9. The real-time normal computing method of a multi-line laser point cloud according to any one of claims 1 to 8, wherein step 5 specifically comprises: Step 5.1, based on the direction vector obtained in step 3 And the direction vector obtained in the step4 By cross-product operation Solving to obtain the normal vector of the current laser center point ; Step 5.2, based on the normal vector obtained in step 5.1 And the three-dimensional coordinates of the laser center obtained in the step 3, normal vector according to viewpoint of scanning interface Combining the three-dimensional coordinates of the cross laser point cloud with the oriented normal vector And obtaining the three-dimensional point cloud model of the scanned object displayed in real time.

Description

Real-time normal computing method for multi-line laser point cloud Technical Field The invention relates to the field of multi-line laser three-dimensional scanning, in particular to a real-time normal computing method of multi-line laser point clouds. Background The hand-held three-dimensional scanner acquires point cloud data by projecting a plurality of intersecting laser lines and collecting the intersection points of the laser and the object surface by a camera. In the process of three-dimensional scanning, a user can only acquire a local group of cross laser line point cloud data in each scanning, so that the scanning position is required to be continuously adjusted, the whole measured object is gradually covered, and the scanning of the whole object can be completed. In order to help the user judge the scanning progress and the missing area, the point cloud model of the current object needs to be displayed on the scanning interface in real time, the user adjusts the scanning position by observing the point cloud model on the scanning interface, and the missing part is subjected to targeted scanning, so that the complete three-dimensional point cloud model of the object is finally obtained. However, only the three-dimensional coordinates of the point cloud can reflect the spatial distribution, the shape and structure of the object cannot be intuitively represented, if the normal vector is absent, the point cloud appears as a disordered point pile on the interface, the stereoscopic impression and the shadow effect are absent, and the user can hardly recognize the real surface and the geometric characteristics of the object. Therefore, the method has the advantages that the method vector is calculated in real time when the point cloud is generated, surface orientation information is provided for the point cloud, so that concave-convex, layering and real light and shadow can be represented during rendering, visual feedback is provided for an operator, the scanning position is timely adjusted during scanning, and the complete and high-quality three-dimensional model is finally obtained. In the process of handheld scanning, in order to improve the scanning precision and speed, the scanning frame rate is high, and in order to be able to observe the three-dimensional point cloud model of an object in real time, three-dimensional coordinates and normal vector information of each frame of crossed laser line point cloud need to be acquired in real time. Most of the existing calculation methods of the normal vector of the point cloud are realized based on the neighborhood, for example, in a text of a calculation method of real-time normal vector in three-dimensional scanning point cloud, the neighborhood points of the point cloud are searched through a KD tree, then plane fitting is carried out on the searched neighborhood points based on a principal component analysis method, and the normal vector of the plane is used as the normal vector of each point in the point cloud. Although the neighborhood-based method can calculate the normal vector of the point cloud more accurately, the time consumption for searching the neighborhood points is serious, the normal vector of each frame of point cloud cannot be obtained in real time generally, and the handheld three-dimensional scanner can only obtain a group of crossed laser line point clouds at one scanning position, the neighborhood points of the point clouds are basically on the same line, and the normal vector of the point clouds cannot be accurately obtained at the moment. Disclosure of Invention In summary, in order to overcome the defects of the prior art, the technical problem to be solved by the invention is to provide a real-time normal computing method of a multi-line laser point cloud, which can quickly find a neighborhood point without establishing a KD tree or an octree, and can complete the normal computing of the point cloud only according to a laser surface equation calibrated in advance and the three-dimensional coordinates of the point cloud, has high computing speed, can acquire the normal vector of the intersecting laser point cloud of the current frame in real time, and ensures the accuracy and consistency of the display of the three-dimensional point cloud model of the subsequent object. The technical scheme for solving the technical problems is as follows, the real-time normal computing method of the multi-line laser point cloud comprises the following steps: step 1, completing camera parameter calibration and laser center three-dimensional coordinate calculation by shooting a plurality of groups of calibration plate images containing cross laser lines and no laser lines, and finally obtaining 13 equations of the cross laser lines by adopting quadric surface model fitting; step 2, according to the laser parameters corresponding to the laser surface equation obtained in the step 1, the control equipment obtains a scanning image, and the scanning