CN113627548A - Planar workpiece template matching method, device, medium and computer equipment - Google Patents

Planar workpiece template matching method, device, medium and computer equipment Download PDF

Info

Publication number
CN113627548A
CN113627548A CN202110940900.4A CN202110940900A CN113627548A CN 113627548 A CN113627548 A CN 113627548A CN 202110940900 A CN202110940900 A CN 202110940900A CN 113627548 A CN113627548 A CN 113627548A
Authority
CN
China
Prior art keywords
point
point cloud
matching
template
workpiece
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110940900.4A
Other languages
Chinese (zh)
Inventor
田希文
高磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seizet Technology Shenzhen Co Ltd
Original Assignee
Seizet Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seizet Technology Shenzhen Co Ltd filed Critical Seizet Technology Shenzhen Co Ltd
Priority to CN202110940900.4A priority Critical patent/CN113627548A/en
Publication of CN113627548A publication Critical patent/CN113627548A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Numerical Control (AREA)

Abstract

The invention provides a plane workpiece template matching method, which comprises the following steps: s1 obtaining actual workpiece contour point cloud CsAnd workpiece template contour point cloud Ct(ii) a S2, respectively acquiring the actual workpiece contour point cloud CsAnd the workpiece template contour point cloud CtCharacteristic normal vector N ofi=(nix,niy,niz) Removing the abnormal points based on the characteristic normal vector pair to obtain the actual workpiece contour point cloud CsAnd workpiece template contour point cloud CtSampling to obtain point cloud CtsAnd point cloud Css(ii) a S3 aligning the point cloud CtsAnd the point cloud CssPerforming coarse matching positioningObtaining a plurality of coarse matching transformation matrices Ti(i ═ 0.. times, K), and based on each of the transformation matrices TiFor the point cloud CtPerforming rotational translation to obtain K point clouds C after transformationti(i ═ 0.., K); obtaining a plurality of template contour point clouds Sc(ii) a S4 matching multiple said template contour point clouds ScAnd the actual workpiece contour point cloud CsTransformation matrix T for performing fine matching positioning and outputting optimal matching resultbAnd the matching precision and the calculation efficiency can be effectively improved.

Description

Planar workpiece template matching method, device, medium and computer equipment
Technical Field
The invention belongs to the field of image recognition, and particularly relates to a method and a device for matching a planar workpiece template, a storage medium and computer equipment.
Background
In the fields of computer vision and robot perception, 3D point cloud template matching is a common means of object identification and localization. In scenes such as robot carrying, cutting, polishing and the like, the position and the posture of an actual object can be accurately obtained through 3D point cloud template matching, and a calculation basis is provided for robot track generation of subsequent operation tasks. At present, 3D point cloud template matching is generally divided into two stages of rough matching and fine matching, wherein a PPF method commonly used for rough matching is used for carrying out global positioning on an object, and an ICP method commonly used for fine matching is used for further optimizing the result of the rough matching. The traditional PPF method has high degree of dependence on the normal vector characteristics of point cloud, and for a plane object, because the normal vector difference is low, error matching is easy to cause, and the global positioning effect is difficult to play; in addition, because the data volume of the original point cloud is large, the direct adoption of the PPF + ICP method can lead to long calculation time. The accuracy is insufficient and the calculation efficiency is low, so that the traditional PPF + ICP method is difficult to be applied to template matching of a planar object.
Disclosure of Invention
The invention provides a planar object template matching method, which is used for solving the problems.
The invention discloses a plane workpiece template matching method, which comprises the following steps:
s1 obtaining actual workpiece contour point cloud CsAnd workpiece template contour point cloud Ct
S2, respectively acquiring the actual workpiece contour point cloud CsAnd the workpiece template contour point cloud CtCharacteristic normal vector N ofi=(nix,niy,niz) Removing the abnormal points based on the characteristic normal vector pair to obtain the actual workpiece contour point cloud CsAnd workpiece template contour point cloud CtSampling to obtain point cloud CtsAnd point cloud Css
S3 aligning the point cloud CtsAnd the point cloud CssCarrying out coarse matching positioning to obtain a plurality of coarse matching transformation matrixes Ti(i ═ 0.., K), and based onEach of the transformation matrices TiFor the point cloud CtPerforming rotational translation to obtain K point clouds C after transformationti(i ═ 0.., K); k point clouds CtiOptionally rotating around x-axis and z-axis, or adding K point clouds CtiTurning around the y axis and rotating around the z axis according to conditions to obtain a plurality of template contour point clouds Sc
S4 matching multiple said template contour point clouds ScAnd the actual workpiece contour point cloud CsCarrying out fine matching positioning, and outputting a transformation matrix of an optimal matching result to be recorded as Tb
The invention also provides a plane workpiece template matching device, which comprises:
a point cloud obtaining module for obtaining the actual workpiece contour point cloud CsAnd workpiece template contour point cloud Ct
A sampling module for respectively acquiring the actual workpiece contour point clouds CsAnd the workpiece template contour point cloud CtCharacteristic normal vector N ofi=(nix,niy,niz) Removing the abnormal points based on the characteristic normal vector pair to obtain the actual workpiece contour point cloud CsAnd workpiece template contour point cloud CtSampling to obtain point cloud CtsAnd point cloud Css
A rough matching module for matching the point cloud CtsAnd the point cloud CssCarrying out coarse matching positioning to obtain a plurality of coarse matching transformation matrixes Ti(i ═ 0.. times, K), and based on each of the transformation matrices TiFor the point cloud CtPerforming rotational translation to obtain K point clouds C after transformationti(i ═ 0.., K); k point clouds CtiOptionally rotating around x-axis and z-axis, or adding K point clouds CtiTurning around the y axis and rotating around the z axis according to conditions to obtain a plurality of template contour point clouds Sc
A fine matching module for matching a plurality of the template contour point clouds ScAnd the actual workpiece contour point cloud CsFor fine matching and positioning and outputting optimum matching resultThe transformation matrix is denoted as Tb
The invention also provides a computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the steps of any of the methods described above when executing the computer program.
The invention also provides a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, carries out the steps of any of the methods described above.
The invention discloses a plane workpiece template matching method, a device, a storage medium and computer equipment, which are used for matching an original actual workpiece outline point cloud C based on a characteristic normal vectorsAnd workpiece template contour point cloud CCSampling processing is carried out, the data volume is reduced, and key characteristics of the point cloud are reserved, so that the matching precision and the calculation efficiency are improved. In addition, in the plane workpiece template matching method, the plane workpiece template matching device, the plane workpiece template matching storage medium and the computer equipment, the characteristics of the plane object contour point cloud can be effectively described through self-defining the characteristic normal vector, so that the matching precision and the calculation efficiency are further improved. Meanwhile, the actual workpiece contour point cloud C is obtainedsIn the method, the device, the storage medium and the computer equipment for matching the planar workpiece template, the original discrete point cloud is converted into the four-corner grid with the topological structure, the points at the edge of the whole grid are found by utilizing the topological relation of the four-corner grid, namely the outline of the object, the method does not depend on the difference of normal vectors of the point cloud, only needs the special topological structure of the four-corner grid, and is high in outline extraction efficiency and precision.
Drawings
FIG. 1 is a flowchart illustrating an embodiment of a template matching method according to the present invention;
FIG. 2 is a schematic diagram of a line offset calculation structure in the line of the data structure;
FIG. 3 is a schematic diagram of the structure of arc offset calculation in the data structure arc;
FIG. 4 is a schematic diagram of a circular offset calculation structure in the data structure circle;
FIG. 5 is a workflow diagram of an embodiment of generating an actual workpiece contour point cloud;
FIG. 6 is a flowchart of the operation of another embodiment of the point cloud of the actual workpiece profile;
FIG. 7 is a schematic structural diagram illustrating an embodiment of a template matching apparatus according to the present invention;
fig. 8 is a schematic structural diagram of a computer device according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention will be further described in detail with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are merely illustrative of the invention and do not limit the scope of the invention in any way.
Like reference numerals refer to like elements throughout the specification. The expression "and/or" includes any and all combinations of one or more of the associated listed items. In the drawings, the thickness, size, and shape of an object have been slightly exaggerated for convenience of explanation. The figures are purely diagrammatic and not drawn to scale.
It will be further understood that the terms "comprises," "comprising," "includes," "including," "has," "includes" and/or "including," when used in this specification, specify the presence of stated features, steps, integers, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, steps, integers, operations, elements, components, and/or groups thereof.
The terms "substantially", "about" and the like as used in the specification are used as terms of approximation and not as terms of degree, and are intended to account for inherent deviations in measured or calculated values that would be recognized by one of ordinary skill in the art.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
Example one
As shown in fig. 1, the present invention discloses a template matching method, comprising the following steps:
s1 obtaining actual workpiece contour point cloud CsAnd workpiece template contour point cloud Ct
S2, respectively acquiring the actual workpiece contour point cloud CsAnd the workpiece template contour point cloud CtCharacteristic normal vector N ofi=(nix,niy,niz) Removing the abnormal points based on the characteristic normal vector pair to obtain the actual workpiece contour point cloud CsAnd workpiece template contour point cloud CtSampling to obtain point cloud CtsAnd point cloud Css
S3 aligning the point cloud CtsAnd the point cloud CssCarrying out coarse matching positioning to obtain a plurality of coarse matching transformation matrixes Ti(i ═ 0.. times, K), and based on each of the transformation matrices TiFor the point cloud CtPerforming rotational translation to obtain K point clouds C after transformationti(i ═ 0.., K), K point clouds C are added to the K point cloudstiOptionally rotating around x-axis and z-axis, or adding K point clouds CtiTurning around the y axis and rotating around the z axis according to conditions to obtain a plurality of template contour point clouds Sc
S4 matching multiple said template contour point clouds ScAnd the actual workpiece contour point cloud CsCarrying out fine matching positioning, and outputting a transformation matrix of an optimal matching result to be recorded as TbAnd the matching result is used as the matching result.
The invention discloses a template matching method, which is used for matching original actual workpiece contour point cloud C based on characteristic normal vectorsAnd workpiece template contour point cloud CtSampling processing is carried out, the data volume is reduced, and key characteristics of the point cloud are reserved, so that the matching precision and the calculation efficiency are improved.
As a preferenceAlternatively, in step S1, the workpiece template contour point cloud C may be obtained based on the following stepst
S11A, analyzing the 2D drawing of the workpiece template, and converting the straight line entity, the arc entity and the circle entity of the 2D drawing into a line data structure, an arc data structure and a circle data structure according to preset rules respectively to obtain a plurality of template reference lines Si(i=1,2,..,Ns),NsRepresenting the total number of the reference lines;
S12A resolving all the line data structure, arc data structure and circle data structure according to the given resolution l0Respectively generating corresponding reference line point clouds;
S13A merges all the template point clouds to obtain the workpiece template point cloud.
Further, in step S11A, a 2D drawing of a workpiece template is obtained, preset rules of a straight line, an arc and a circle entity in the workpiece template are respectively analyzed into data structures of a line, an arc and a circle according to line attributes of the 2D drawing file, wherein the line, the arc and the circle after analysis are groove reference lines, and the groove reference lines are collected to generate a template reference line Si(i=1,2,..,Ns),NsThe total number of reference lines is indicated.
In this embodiment, for a specific workpiece template, the 2D drawing file may be in a DXF or DWG format, and the open source library dxfrw may be used to identify line attributes of the 2D drawing file. After the line attributes are obtained, the identified straight line, circular arc and circular solid are respectively analyzed into data structures of line, arc and circle according to preset rules, and then the groove reference lines are formed.
The line member variables comprise the 3D coordinates of the straight line starting point and the 3D coordinates comprising the straight line terminal point, and the line member functions comprise one or more of a line deviation calculation function, a straight line middle point calculation function, a straight line near point calculation function, a straight line far point calculation function, a straight line near point replacement function, a straight line far point replacement function and a straight line starting point terminal point interchange function;
the membership variable of the arc comprises one or more combinations of an arc starting point 3D coordinate, an arc end point 3D coordinate, an arc center 3D coordinate, an arc radius and an excellent arc, and the membership function of the arc comprises one or more combinations of an arc offset calculation function, an arc middle point calculation function, an arc near point calculation function, an arc far point calculation function, an arc near point replacement function, an arc far point replacement function, an arc starting point end point interchange function and the like;
the member variables of the circle comprise a circle entity center 3D coordinate and a circle entity radius, and the member functions of the circle comprise a circle offset calculation function.
Data Structure line
In this embodiment, the member variables of the line in the data structure include 3D coordinates of a start point and an end point, and the member functions of the line include an offset line calculation function, a middle point calculation function, a near point calculation function, a far point calculation function, a near point replacement function, a far point replacement function, and a start point and end point replacement function.
(a) For a straight line entity in a 2D drawing, the starting point coordinate P of a lines=(xs,ys,zs)TReference point coordinate (x) corresponding to straight line entityb,yb) Wherein x iss=xb,ys=yb,zsLine end point coordinate P of 0e=(xe,ye,ze)TEnd point coordinate (x) of corresponding straight line entity2,y2) Wherein x ise=x2,ys=y2,zs=0。
(b) The line offset calculation function of the line comprises 2 inputs and 1 output, wherein the input 1 is a designated offset, the input 2 is an offset direction, and the output is the offset line. As shown in fig. 2, the start point and the end point of the line have the same coordinate system, with the x-axis direction pointing along the start point to the end point, the z-axis direction pointing down perpendicular to the workpiece surface, and the x-y-z axes constituting the right-hand coordinate system. After the offset dy is given, if the offset direction is the regular starting point and the regular end point, the offset dy is towards the positive direction of the y axis; if the offset direction is negative, the start point and the end point are offset by dy in the negative y-axis direction.
(c) line midpoint calculation function for confirming line middleThe point, the middle point of the line, is the middle point of the straight line, the 3D coordinate (x) of the middle pointm,ym,zm) 3D coordinates with start and end points
xm=(xs+xe)/2,ym=(ys+ye)/2,zm=(zs+ze)/2
(d) The near point calculation function and the far point calculation function of the line are used for determining a near point and a far point of any specified point P, wherein if the distance from the starting point of the line to the specified point P is greater than or equal to the distance from the end point to the specified point P, the starting point is the near point and the end point is the far point for the specified point P; conversely, if the distance from the starting point to the point P is less than the distance from the end point to the point P, the starting point is a far point and the end point is a near point. Wherein, the distance from the designated point P to the starting point and the end point can be respectively calculated according to the Euclidean distance.
(e) A near point replacing function of line, which is used for replacing the near point with the point P aiming at the specified point P; the far point replacement function is used for replacing the far point with a point P; the start point and end point interchange function is used for interchanging the start point and the end point.
(II) data Structure arc
The member variables of the data structure arc comprise 3D coordinates of a starting point, an end point and a circle center, the member functions of the data structure arc comprise a radius and good and bad arc attributes, and function functions of offset circular arc, middle point, near point, far point, near point replacement, far point replacement and starting point and end point interchange are calculated.
(a) For the arc entity in the 2D drawing, the starting point coordinate P of arcs=(xs,ys,zs)TStarting angle theta corresponding to arc entitysEnd point coordinate P of arce=(xe,ye,ze)TEnd angle theta corresponding to arc entityeCenter of circle coordinate P of arcc=(xc,yc,zc)TReference point coordinate (x) corresponding to arc entityb,yb) Radius of arc raRadius r of corresponding arc entitybGood and bad arc attribute N of arcaCorresponding to the solid termination of the arcAngle thetaeFrom the starting angle thetasThe relationship is as follows:
xc=xb,yc=yb,zc=0,ra=rb
xs=xc+ra cosθs,ys=yx+ra sinθs,zs=zc
xe=xc+ra cosθe,ye=yc+ra sinθe,ze=zc
Figure BDA0003214900460000061
(b) the circular arc offset calculation function of arc is used for confirming the offset arc, and comprises 2 inputs and 1 output, wherein the input 1 is the designated offset, the input 2 is the offset direction, and the output is the offset arc. As shown in fig. 3, after the offset dr is given, if the offset direction is a regular starting point and an end point, the offset dr is shifted in a direction in which the radius increases; if the offset direction is negative, the start point and the end point are offset dr in a direction in which the radius decreases.
(c) The midpoint calculation function of arc is used to determine the midpoint of arc, in this embodiment, the midpoint of arc refers to the midpoint of arc, and the 3D coordinate P of the midpointm=(xm,ym,zm)TWith the starting points (xs, ys, zs) and) xe,ye,ze) The endpoint satisfies the following relationship:
xcs=xc-xs,ycs=yc-ys,zcs=zc-zs
xce=xc-xe,yce=yc-ye,zce=zc-ze
θ1=atan2(ycs,xcs),θ2=atan2(yce,xce),Δθ=θ21
Figure BDA0003214900460000062
Pm=Pc+Rzm)(Pc-Ps);
wherein R iszm) For rotation of theta about z-axismThe rotation matrix of (2).
(d) The arc near point calculation function and the far point calculation function are used for determining the near point and the far point of the designated point P, wherein if the distance from the starting point to the point P is greater than or equal to the distance from the end point to the point P, the starting point is the near point of the designated point P, and the end point is the far point of the designated point P; conversely, if the distance from the starting point to the point P is less than the distance from the end point to the point P, the starting point is the far point of the point P, and the end point is the near point of the point P, wherein the distance from the starting point to the point P can be calculated by the Euclidean distance
(e) The near point replacement function of arc is used to replace the near point with point P; the far point replacing function is used for replacing the far point with a point P; the starting point and end point interchange function is used for interchanging the starting point and the end point according to actual requirements under the condition that the positions of the starting point and the end point are interchanged after the analysis is finished.
(III) data Structure circle
circle contains the 3D coordinates and radius of the center of the circle and calculates the function of the offset circle.
(a) For a circular solid in a 2D drawing, the circle center coordinate P of a circlec=(xc,yc,zc)TReference point coordinate (x) corresponding to arc entityb,yb) Radius r of circlecRadius r of corresponding round solidbThe relationship is as follows:
xc=xb,yc=yb,zc=0,rc=rb
(b) the circle offset calculation function of circle is used for confirming offset circle, and comprises 2 inputs and 1 output, wherein the input 1 is a designated offset, the input 2 is an offset direction, and the output is offset circle. As shown in fig. 4, after the offset dr is given, if the offset direction is the regular direction in which the whole circle is offset dr toward the direction in which the radius is increased; if the offset direction is negative, the entire circle is offset dr in a direction in which the radius decreases.
Respectively analyzing entities with attributes of straight lines, circular arcs and circles in the 2D drawing file into specific data structures of lines, arc and circle, and then obtaining template groove lines of the workpiece template; on the basis, the flow proceeds to step S12a, where the line, arc and circle of the workpiece template are processed according to the given resolution l0Respectively generating corresponding reference line point clouds Mi, and combining all the point clouds Mi to obtain a workpiece template point cloud Ct
In step S12A, for any one line data structure, the corresponding point cloud Mi can be generated according to the following method: starting from 0 every interval l0Adding points P to a point cloud MiAnd if l0If l cannot be divided completely, the point P is dividedeIs also added to the point cloud Mi, where Pi=Ps+kid,ki=i·l0(0≤kiL) is not more than l), wherein the point cloud Mi is a pre-created empty point cloud, k represents the number in the point cloud Mi, d represents the direction of line,
Figure BDA0003214900460000071
l represents the length of line, and l | | | Pe-Ps||。
In step S12A, for any arc data structure, a corresponding point cloud may be generated according to the following method:
obtaining good and bad arc attributes and rotation angle theta of arc0And magnitude of Δ θ; reading the central angle corresponding to the arc, wherein if the central angle is not less than 180 degrees, the central angle is an major arc, and if the central angle is less than 180 degrees, the central angle is a minor arc;
if the arc is judged to be the major arc and the delta theta is more than or equal to 0, starting from 0 and every interval theta0Adding a point P to the point cloud Mi
Pi=Pc+Rzi),θi=i·θ0(0≤θi≤2π-Δθ);
If the arc is judged to be the major arcAnd Δ θ<0, then every interval-theta starting from 00Adding a point P to the point cloud Mi
Pi=Pc+Rzi),θi=-i·θ0(2π+Δθ≤θi≤0);
If the arc is judged to be a minor arc and the delta theta is more than or equal to 0, starting from 0 every interval theta0Adding a point P to the point cloud Mi
Pi=Pc+Rzi),θi=i·θ0(0≤θi≤Δθ);
If the arc is judged to be a minor arc and delta theta<0, then every interval-theta starting from 00Adding point P to the point cloud Mii
Pi=Pc+Rzi),θi=-i·θ0(Δθ≤θi≤0);
If theta0If Δ θ cannot be divided completely, the point P is dividedeAlso to the point cloud M.
Wherein the point cloud Mi is a pre-created empty point cloud, and the rotation angle interval theta0=l0/raΔ θ is the vector CPsAnd vector CPeAngle of (a) vector CPs=Ps-Pc,CPe=Pe-PcAnd the value range of delta theta is (-pi, pi).
In step S12A, for any circle data structure, a corresponding point cloud can be generated according to the following method: obtaining a rotation angle interval theta0=l0/rcStarting from 0 every interval θ0Adding point P to the point cloud MiiWherein the point cloud Mi is a pre-created empty point cloud
Pi=Pc+Rzi),θi=i·θ0(0≤θi≤2π)。
Merging point clouds generated by all lines, arc and circle, wherein the obtained point cloud is the workpiece template point cloud Ct
In addition, as a preferred embodiment, the element template is obtainedPoint cloud CtAnd then also comprises: obtaining the rotational inertia of the template point cloud, obtaining a pose matrix of the template point cloud, and establishing a template coordinate system S according to the pose matrixmTranslating and rotating the template point cloud to a coordinate system Sm
As a preferred scheme, as shown in fig. 5, in step S1, the actual workpiece contour point cloud C can be obtained based on the following methods
S11B obtaining actual workpiece point cloud C1Based on a preset rule, the actual workpiece point cloud C is processed1Conversion into a tetragonal grid SM1And acquire the SM1Normal vector of each vertex in the vector;
S12B segmenting the SM based on the normal vector and a preset constraint condition1Removing the SM based on the segmentation result1Generating a four-corner grid SM after removing the side point cloud2
S13B searching and acquiring the SM2All the edge points of (a), said edge points constituting a point cloud C3Namely the actual contour point cloud of the workpiece to be extracted.
Further, in step S11B, an original ordered point cloud of the object to be detected is obtained based on the 3D camera, where the point cloud data is recorded in the form of points for the object to be detected, and each point includes three-dimensional coordinates including color information and a normal vector. More specifically, the color information is usually obtained by a camera to obtain a color image, and then the color information of the pixel at the corresponding position is assigned to the corresponding point in the point cloud; the ordered point cloud is typically in the camera coordinate system with the normal facing the camera.
The step S11B of converting the point cloud into a four-corner grid based on a preset rule includes the following steps:
s111 for any point P in the ordered point cloudijAdding said PijTo obtain vertex V, the 3D position coordinates (x, y, z) normal vector, color informationmnEstablishing said PijAnd said vertex VmnThe index relationship is in one-to-one correspondence;
in this step, a vertex set S is established, a row coordinate i and a column coordinate j of the ordered point cloud are traversed, and P is addedijAnd acquiring vertex V of corresponding 3D coordinate, normal vector and color informationmnThen, each vertex V is putmnTo the set of vertices S. The vertex set S is a vertex set of a quadrilateral mesh (seizetccolormesh).
S112, acquiring the row and column sequence of each point in the point cloud data;
one frame of scan data is a depth map, belonging to a gray scale map. The grey value of the pixel represents depth information, each pixel point can be converted to a world coordinate system through camera parameters, so that each pixel corresponds to a three-dimensional point, and if the resolution of the depth map is ResX ResY, the ordered point cloud is arranged from the upper left corner to the lower right corner in a line-by-line manner according to the square matrix of the map. Due to the points P in the ordered point cloudijThe points are arranged in sequence, in the embodiment, the point cloud data is traversed, and the row coordinate i and the column coordinate j of each point in the ordered point cloud are read to obtain VijSorted by rows and sorted by columns, respectively.
S113, any point P in the ordered point cloudijSearching P according to the index rule of the row-column orderingijAdjacent point P ofi,j+1,Pi+1,j+1,Pi+1,jWherein, the ith row and j column, the ith row and j +1 column, the ith +1 row and j column and the ith +1 row and j +1 column in the point cloud data respectively correspond to Pi,j,Pi,j+1,Pi+1,j+1,Pi+1,j4 points are selected;
because the ordered point cloud is arranged in sequence, the information of adjacent points can be easily found. In this embodiment, as a preferred scheme, any point P is searched forijWhen there is a neighboring point, if Pi,j+1、Pi+1,j+1、Pi+1,jIf any one of the three adjacent points can not be found from the ordered point cloud data, skipping VijThe next point neighbor search is continued. The row and column coordinates of the ordered point cloud are range-wide, e.g., (i 0, …, Nr), (j 0, …, Nc), if i<0 or i +1>Nr or j<0 or j +1>Nc, judging that the boundary is exceeded. If the row coordinate i +1 or the column coordinate j +1 exceeds the boundary, the point P is skippedijAnd continuing to search the next point in the ordered point cloud corresponding to the three adjacent points.
S114, obtaining P according to the index relationi,j,Pi,j+1,Pi+1,j+1,Pi+1,jFour vertexes V corresponding to each other respectivelymn,Vm,n+1.Vm+1,n,Vm+1,n+1
Adding four corner patches and putting the 4 vertexes Vmn,Vm,n+1.Vm+1,n,Vm+1,n+1Adding to vertex positions of corresponding quadrilateral patches to generate half-edge quadrilateral meshes, wherein each vertex VmnStoring corresponding point P in point cloud dataijThe 3D position coordinates (x, y, z), normal vectors, colors, and pointer information of the halves of which are the starting vertex, each half storing pointers or indices of the starting vertex, the ending vertex, the adjoining surface, the upper half, the lower half, the opposite half;
s115 traversal of the PijOr the vertex VmnObtaining all of said PijOr the vertex VmnCorresponding half four-corner grids to output four-corner grids SM corresponding to workpiece point cloud data1
In the shooting process, the side face of the workpiece can be inevitably shot due to the influence of factors such as the structure of the workpiece, the shooting angle and the like, but in actual application, subsequent operation is often required to be performed based on the front point cloud of the workpiece, for example, when the track generation is performed on the workpiece chamfering, the step S11B is used for converting the point cloud of the workpiece into the corresponding four-corner mesh SM1Then, the process proceeds to step S12B to remove the side point cloud (i.e., the side with less point cloud).
Step S12B is to the SM based on the normal vector and a preset constraint condition1Dividing, distinguishing different planes of actual workpiece point clouds, removing the side point clouds of the workpiece based on the dividing result, and finally obtaining the four-corner mesh SM after removing the side point clouds2
In one of the embodiments, it can be based directly on the tetragonal grid SM1Performing point cloud plane segmentation to obtain four-corner mesh SM (sparse space) for removing side point cloud2The method specifically comprises the following steps:
step (A): traversal SM1All points in (1) { V }1,V2,...VnN denotes SM1Number of midpoints, decision point VmIf it has already been processed, if it is point VmCreating an empty cluster container without processingiAnd will ViIs added to DiAt the same time, point VmMarking as processed; if point VmTo be processed, point V is skippedm
For addition to DiPoint V ofmSimultaneously performing step (a) comprising:
at a predetermined distance d0Within range, search point VmNeighbor point of (V)m1,Vm2,...VmnN denotes a point VmAnd judging VmIs a neighbor point VmnWhether a preset constraint condition is met or not, wherein the preset constraint condition is a neighbor point VmnUntreated and VmAnd VmnThe included angle of the normal vector is not more than a preset angle threshold value theta0(ii) a Wherein, if VmIs a neighbor point VmnIf the preset constraint condition is met, the point V is setmnIs also added to the vessel DiAnd a point V is formedmnAlso marked as processed; if the neighbor point VmnAfter processing, skipping point VmnTo V pairmThe next neighbor point of (a); if point VmAt a predetermined distance d0If there is no neighbor point in the range, then skip point VmTo the container DiThe other points in (a) perform step (a) up to SM1Finishing the execution of all the points;
the processed means that the corresponding point has been added to the clustering container DiIn (1), repeating the above steps until SM1After all the points are executed, a plurality of clustering containers { D ] can be obtained1,D2,...DkK represents the number of the clustered containers, and each container corresponds to one point cloud; get { D1,D2,...DkThe point cloud with the largest number of points is the four-corner grid SM after the side point cloud is removed2
In another embodiment, as shown in FIG. 6, the row point cloud may also be based on the workpiece point cloud C1Plane segmentation, namely obtaining a workpiece point cloud C2 with the side point cloud removed, and converting the workpiece point cloud C2 into a quadrilateral mesh SeizetcColorMesh SM according to a preset rule2The method specifically comprises the following steps:
s121, according to the corresponding relation, the SM1Assigning the normal vector of each vertex to each corresponding point of the workpiece point cloud;
s122, segmenting the C1 based on the normal vector and a preset constraint condition, removing the side point cloud of the workpiece based on the segmentation result, and generating a workpiece point cloud C with the side point cloud removed2
S123, based on preset rules, the workpiece point cloud C2Conversion to the quadrangle grid SeizetColorMesh SM2
Further, step S122 specifically includes the following steps:
step (B): traverse point cloud C1All points in { P }1,P2,...PnN represents the point cloud C1Number of midpoints, decision point PiIf it has already been processed, if it is point PiCreating an empty cluster container without processingiAnd is combined with PiIs added to DiAt the same time, point ViMarking as processed; if point PiSkipping point P for processedi
At the same time, for addition to DiPoint P ofiPerforming step (b) comprising: at a predetermined distance d0Search point within range PiNeighbor point of { Pi1,Pi2,...PijJ denotes a point PiAnd judges PiNeighbor point P ofijWhether a preset constraint condition is met or not, wherein the preset constraint condition is a neighbor point PijUntreated and PiAnd PijIs not more than an angle threshold theta0
Wherein, if PiNeighbor point P ofijIf the preset constraint condition is satisfied, the point P is setijIs also added to the vessel DiAnd connecting the point PijAlso marked as processed; if the neighbor point PijAfter having been processed, then jumpPassing point PijTo PiThe next neighbor point of (a) continues to perform step (b); if point PiAt a distance d0If there is no neighbor point in the range, then skipping point PiTo the container DiThe other points in (a) are executed until all the points in the point cloud C1 are executed.
Obtaining a number of clustered containers { D1,D2,...DkK represents the number of the clustered containers, and each container corresponds to one point cloud; get { D1,D2,...DkThe point cloud with the largest number of points is the workpiece point cloud with the side point cloud removed, and is marked as C2
The processed means that the corresponding point has been added to the clustering container DiIn the method, the steps are repeated until all the points in the C1 are executed, and a plurality of clustering containers { D are obtained1,D2,...DkK represents the number of the clustered containers, and each container corresponds to one point cloud; get { D1,D2,...DkThe point cloud with the largest number of points is the workpiece point cloud with the side point cloud removed, and is marked as C2
Further, in this embodiment, the actual workpiece point cloud C is processed1Generating a Kd search tree, based on which: at a predetermined distance d0Within range, search point PiNeighbor point of { Pi1,Pi2,...PijWherein, for different workpieces, an empirically settable distance threshold d is used0And an angle threshold theta0And (4) taking values.
S123, based on preset rules, the workpiece point cloud C2Conversion to the quadrangle grid SeizetColorMesh SM2. Generating the corresponding four-corner mesh based on the point cloud as described in step S1 may include the steps of:
for C in the point cloud2Any point P ofijAdding said PijTo obtain vertex V, the 3D position coordinates (x, y, z) normal vector, color informationmnEstablishing said PijAnd said vertex VmnThe index relationship is in one-to-one correspondence;
obtaining the actual workPiece point cloud C2Sequencing the rows and columns of each point in the sequence;
for any point P in the point cloudijSearching P according to the index rule of the row-column orderingijAdjacent point P ofi,j+1,Pi+1,j+1,Pi+1,jWherein, the ith row and j column, the ith row and j +1 column, the ith +1 row and j column and the ith +1 row and j +1 column in the point cloud data respectively correspond to Pi,j,Pi,j+1,Pi+1,j+1,Pi+1,j4 points are selected;
obtaining P according to the index relationi,j,Pi,j+1,Pi+1,j+1,Pi+1,jFour vertexes V corresponding to each other respectivelymn,Vm,n+1.Vm+1,n,Vm+1,n+1
Adding four corner patches and putting the 4 vertexes Vmn,Vm,n+1.Vm+1,n,Vm+1,n+1Adding to vertex positions of corresponding quadrilateral patches to generate half-edge quadrilateral meshes, wherein each vertex VmnStoring corresponding point P in point cloud dataijThe 3D position coordinates (x, y, z), normal vectors, colors, and pointer information of the halves of which are the starting vertex, each half storing pointers or indices of the starting vertex, the ending vertex, the adjoining surface, the upper half, the lower half, the opposite half;
traverse the PijOr the vertex VmnObtaining all of said PijOr the vertex VmnCorresponding half four-corner grids to output four-corner grids SM corresponding to the point cloud data2
Obtaining a four-corner grid SM2Thereafter, the process proceeds to step S13B, where the SM is searched and acquired2All the edge points are combined into a point cloud C3,C3Namely the actual contour of the workpiece to be extracted.
In this embodiment, the tetragonal grid SM is traversed2For all vertices of the quadrilateral mesh SM2Vertex V ofi(i0,...,n2) If V isiIf one of the following conditions is satisfied, V is judgediIs SM2The edge points of (a):
vertex ViOut half E ofjIs invalid;
(II) half EjCorresponding patch QkIs invalid;
(III) vertex ViOut half E ofjIs effective, but EjIs SM2Wherein, if EjIf the condition (b) is satisfied, E is judgedjIs SM2The edge of (1).
Of course, in the present embodiment, the actual workpiece contour point cloud C is not clearsAnd workpiece template contour point cloud Ct(ii) a The acquisition may be replaced by other methods, not limited to the method based on the tetragonal grid, such as a contour extraction method based on direct point cloud.
Respectively carrying out actual workpiece contour point cloud C based on step S1sAnd workpiece template contour point cloud CtThen, the process goes to step S2 to obtain the actual workpiece contour point clouds C respectivelysAnd the workpiece template contour point cloud CtCharacteristic normal vector N ofi=(nix,niy,niz) Removing the abnormal points based on the characteristic normal vector pair to obtain the actual workpiece contour point cloud CsAnd workpiece template contour point cloud CtSampling to obtain point cloud CtsAnd point cloud CssThe method comprises the following steps:
s21 point cloud CtAnd point cloud CsThe characteristic normal vector of (1);
s22 removing point cloud CtAnd point cloud CsA point of medium abnormal;
s23 Point cloud C based on feature normal vector (after removing abnormal points)tAnd point cloud CsSampling to obtain point cloud CtsAnd point cloud Css
In this embodiment, as a preferred scheme, in step S21, the actual workpiece contour point cloud CsAnd workpiece template contour point cloud CtThe characteristic normal vector acquisition comprises the following steps: obtaining the geometric center point P of the point cloud CcenterGo through each point P of the point cloud CiFor each point PiIts characteristic normal vector
Figure BDA0003214900460000121
The abnormal points refer to points with a value of NaN (not a No.), and as the result of binary calculation (addition, subtraction, multiplication and division) between NaN and any number is that NaN affects the calculation result if the abnormal points are not removed and participate in subsequent calculation, the point cloud C is removed in step S22 respectivelytAnd point cloud CsAs a preferred scheme, in this embodiment, when the point cloud C is abnormal, the point cloud C is obtainedtAnd point cloud CsPoint P iniWhen any one of the following conditions is met, the point is regarded as an abnormal point, and the abnormal point is removed from the corresponding point cloud;
(a) if point PiIn the three-dimensional coordinates (x, y, z), x or y or z is NaN (not a No.), then point P isiIs an abnormal point;
(b) if point PiCharacteristic normal vector N ofi=(nix,niy,niz) In, nixOr niyOr nizIs NaN, then point PiIs an abnormal point;
since the number of point clouds is large, in order to find the feature points more quickly and accurately for the subsequent matching step, in this embodiment, step 23 is to match the point cloud C based on the feature normal vectortAnd point cloud CsSampling is performed. As a preferred scheme, the point clouds C can be respectively processed based on the following methodtAnd point cloud CsSampling:
step (C): traverse all points { V ] in the point cloud C1,V2,...VnN represents the number of points in the point cloud C, and a judgment point ViIf it has already been processed, if it has not, ViAdding to the point cloud CoAnd will point ViMarked as processed, wherein CoIs a pre-created empty point cloud; if point ViProcessed, then skipping point Vi
For addition to CoPoint V iniSynchronously performing step (c) comprising: at a predetermined distance d0Search point within range ViNeighbor point of (V)i1,Vi2,...VimM denotes a point ViAnd judging ViIs a neighbor point VijWhether a preset constraint condition is met or not, wherein the preset condition is as follows: neighbor point VijUntreated and ViAnd VijAre not more than a preset angle threshold theta0
If ViIts neighbor point VijAfter processing, skipping point VijJudgment of ViWhether other neighbor points of (1) satisfy the constraint condition;
if ViIts neighbor point VijUnprocessed, decision point VijIf the constraint condition is satisfied, if the point V isiWith its neighbour point VijIf the preset constraint condition is met, the point V is setijAlso added to the point cloud CoAnd will point VijAlso marked as processed;
if point ViAt a distance d0If there is no neighbor point in the range, then skip point ViPoint-to-point cloud CoThe other point of (a) performs step (C).
Further, in the step (C), a Kd search tree is generated according to the point cloud C, and the Kd search tree is used at a preset distance d0Search point within range ViNeighbor point of (V)i1,Vi2,...Vim}。
Point-to-point cloud C through step S2tAnd point cloud CsSampling is carried out to respectively obtain point clouds C after samplingtsAnd point cloud CssThen, considering that a certain deflection angle exists between the workpiece template point cloud and the actual workpiece point cloud in the placing posture, if the sampled point cloud C is directly usedtsAnd point cloud CssThe matching is carried out, the probability of successful matching is very low, so that the scheme shown in the invention is required to firstly obtain a certain amount of point clouds with converted angles through rough matching, and then output the template contour point cloud with the highest matching proportion as the matching result through accurate matching.
As a preferable solution, in this embodiment, step S3 uses a ppf (point Pair features) registration method to register point cloud CtsAnd point cloud CssPerforming rough matchingA bit, comprising:
s31 acquiring workpiece template C before samplingtMaximum workpiece radius rmax=‖Pmax-PminII/2 wherein PminAnd PmaxFor a workpiece template contour point cloud CtMinimum point P ofminAnd a maximum point Pmax
S32 is processed by the sampled workpiece template contour point cloud CtsInput point cloud, point cloud C as PPF feature estimatorssAs target point cloud, 2rmaxAs a distance threshold of the PPF hash map searcher, a PPF registration method is used to obtain a plurality of coarse matching results, namely transformation matrixes; t isi(i=0,...,K);
S33 uses each transformation matrix TiPoint-to-point cloud CtPerforming rotational translation to obtain K transformed point clouds Cti(i=0,...,K);
S34 point cloud CtiTurning around an x axis and rotating around a z axis according to conditions; or point cloud CtiTurning around the y axis and rotating around the z axis according to conditions to respectively obtain a plurality of template contour point cloud sets Sc
Since the actual workpiece placement positions and postures are often different, and even the situation completely opposite to the workpiece template may occur, in step S34, the point cloud C is usedtiConditional wrap transform matrix TiThe x-axis overturn and the z-axis rotation are carried out to obtain a plurality of template contour point cloud sets ScThe method comprises the following steps:
s341 according to the point cloud Cti(i ═ 0.... K.) corresponding transformation matrix TiCalculating its corresponding rotational z-axis zi
zi=Ti(0,2,3,1)
Wherein, Ti(0, 2, 3, 1) represents a number from TiStarting to take 3 numbers from the 0 th row and the 2 nd column to form 1 column;
s342, the point cloud Cti is turned around the x axis according to the condition, if the z axis z is rotatediContrary to the vertically downward direction, point cloud C is pointedtiRotated by 180 ° about the x-axis, which is the transformation matrix TiX axis of rotation xiI.e. by
xi=Ti(0,0,3,1)
Wherein, Ti(0, 0, 3, 1) represents a number from TiThe 0 th row and the 0 th column of the (1) form 1 column by taking 3 numbers;
s343 point cloud CtiRotation around the z-axis conditional: point cloud Cti(i ═ 0.., K) around the rotational z-axis zRotation nzEach time of rotation angle is
Figure BDA0003214900460000141
To obtain nzK new point clouds of which nzFor a predetermined number of rotation steps, and (n)z+1) K template contour point clouds are stored in the template point cloud set ScPerforming the following steps;
or, the point cloud CtiThe method comprises the following steps of turning around the y axis and rotating around the z axis according to conditions to obtain a plurality of template contour point clouds:
s341' from the point cloud Cti(i ═ 0.... K.) corresponding transformation matrix TiCalculating its corresponding rotational z-axis zi
zi=Ti(0,0,1,1);
Wherein, Ti(0, 2, 3, 1) represents a number from TiThe 0 th row and the 0 th column of the (1) form 1 column by taking 3 numbers;
s342' Point cloud CtiOptionally turning around the y-axis if the z-axis is rotatediContrary to the vertically downward direction, point cloud C is pointedtiRotated by 180 about the x-axis, the y-axis being the transformation matrix TiX axis y of rotation ofiI.e. by
yi=Ti(0,1,3,1)
Wherein, Ti(0, 0, 3, 1) represents a number from TiThe number of the row 0 and the column 1 is 3, and 1 column is formed.
S343' Point cloud CtiConditionally rotating about the z-axis, comprising: point cloud Cti(i ═ 0.., K) around the rotational z-axis zRotation nzEach time of rotation angle is
Figure BDA0003214900460000142
To obtain nzK new point clouds of which nzFor a predetermined number of rotation steps, and (n)z+1) K template contour point clouds are stored in the template point cloud set ScIn (1).
(n) can be obtained after the processing of steps S341 to S343 or steps S341' to S343z+1) K template contour point clouds, at this point, proceeding to step S4, and fitting a plurality of template contour point clouds ScAnd the actual workpiece contour point cloud CsCarrying out fine matching positioning, and outputting a transformation matrix of an optimal matching result to be recorded as TbAnd the matching result is used as the matching result.
Preferably, in this embodiment, the set S of ICP pairs is usedcTemplate point cloud and workpiece contour point cloud C insPerforming fine matching positioning, including:
s41 traversing set ScTemplate point cloud C injAnd respectively connected with the point cloud CsPerforming ICP registration, and if the registration is convergent, the matching degree is less than a preset value and the matching proportion is greater than the preset value, determining the point cloud CjAnd point cloud CsMatching is successful; obtaining a plurality of matching results which are successfully matched, including a transformation matrix TjMatching degree and matching proportion; and if the matching result of the matching is not successful, the 3D template matching is considered to be failed.
S42, according to the matching proportion, the matching results in the step S41 are sorted, and the transformation matrix of the output optimal matching result is recorded as TbThen T isbAnd matching an optimal result for the 3D plane workpiece template.
Example two
As shown in fig. 7, the present invention also discloses a template matching apparatus 10, comprising:
a point cloud obtaining module 11 for obtaining the actual workpiece contour point cloud CsAnd workpiece template contour point cloud Ct
A sampling module 12 for respectively obtaining the actual workpiece contour point clouds CsAnd the workpiece template contour point cloud CtCharacteristic normal vector N ofi=(nix,niy,niz) Removing the abnormal points based on the characteristic normal vector pair to obtain the actual workpiece contour point cloud CsAnd workpiece template contour point cloud CtSampling to obtain point cloud CtsAnd point cloud Css
A rough matching module 13 for matching the point cloud CtsAnd the point cloud CssCarrying out coarse matching positioning to obtain a plurality of coarse matching transformation matrixes Ti(i ═ 0.. times, K), and based on each of the transformation matrices TiFor the point cloud CtPerforming rotational translation to obtain K point clouds C after transformationti(i ═ 0.., K); k point clouds CtiOptionally rotating around x-axis and z-axis, or adding K point clouds CtiTurning around the y axis and rotating around the z axis according to conditions to obtain a plurality of template contour point clouds Sc
A fine matching module 14 for matching a plurality of said template contour point clouds ScAnd the actual workpiece contour point cloud CsCarrying out fine matching positioning, and outputting a transformation matrix of an optimal matching result to be recorded as Tb
Preferably, the point cloud obtaining module 11 includes an actual workpiece contour point cloud CsObtaining a sub-module, the actual workpiece contour point cloud CsThe acquisition submodule is used for acquiring an actual workpiece point cloud C1Based on a preset rule, the actual workpiece point cloud C is processed1Conversion into a tetragonal grid SM1And acquire the SM1Normal vector of each vertex in the vector; segmenting the SM based on the normal vector and a preset constraint condition1Removing the SM based on the segmentation result1Generating a four-corner grid SM after removing the side point cloud2(ii) a Searching for and acquiring the SM2All the edge points of (a), said edge points constituting a point cloud C3Namely the actual contour point cloud of the workpiece to be extracted.
Preferably, the point cloud obtaining module 11 comprises a workpiece template contour point cloud CtObtaining a sub-module, the workpiece template contour point cloud CtThe method comprises the steps of obtaining a 2D drawing of a submodule for analyzing a workpiece template, and enabling a straight line entity, an arc entity and a position of the 2D drawing,The round solid is converted into a line data structure, an arc data structure and a circle data structure according to preset rules respectively to obtain a plurality of template reference lines Si(i=1,2,..,Ns),NsRepresenting the total number of the reference lines; analyzing all the line data structure, the arc data structure and the circle data structure according to a given resolution l0Respectively dispersing to generate corresponding reference line point clouds; and merging all the reference line point clouds to obtain the workpiece template point cloud.
Preferably, the sampling module 12 includes a feature normal vector obtaining sub-module, and the feature normal vector obtaining sub-module is configured to obtain a geometric center point P of the point cloud CcenterGo through each point P of the point cloud CiFor each point PiIts characteristic normal vector
Figure BDA0003214900460000161
Preferably, the sampling module 12 includes an abnormal point obtaining sub-module, and the abnormal point obtaining sub-module is used for obtaining the point cloud CtAnd point cloud CsPoint P iniA point which is considered abnormal when any one of the following conditions is satisfied;
(a) if point PiIn the three-dimensional coordinates (x, y, z), x or y or z is NaN, the point PiIs an abnormal point;
(b) if point PiCharacteristic normal vector N ofi=(nix,niy,niz) In, nixOr niyOr nizIs NaN, then point PiIs an abnormal point.
Preferably, the sampling module 12 includes a sampling sub-module for removing the abnormal point from the actual workpiece contour point cloud C based on the feature normal vector pairsAnd workpiece template contour point cloud CtSampling is carried out, and the method comprises the following steps:
step (C): traverse all points { V ] in the point cloud C1,V2,...VnN represents the number of points in the point cloud C, and a judgment point ViIf it has already been processed, if it has not, ViAdding to the point cloud CoAnd will point ViMarked as processed, wherein CoIs a pre-created empty point cloud; if point ViProcessed, then skipping point Vi
For addition to CoPoint V iniSynchronously performing step (c) comprising: at a predetermined distance d0Search point within range ViNeighbor point of (V)i1,Vi2,...VimM denotes a point ViAnd judging ViIs a neighbor point VijWhether a preset constraint condition is met or not, wherein the preset condition is as follows: neighbor point VijUntreated and ViAnd VijAre not more than a preset angle threshold theta0
If ViIts neighbor point VijAfter processing, skipping point VijJudgment of ViWhether other neighbor points of (1) satisfy the constraint condition;
if ViIts neighbor point VijUnprocessed, decision point VijIf the constraint condition is satisfied, if the point V isiWith its neighbour point VijIf the preset constraint condition is met, the point V is setijAlso added to the point cloud CoAnd will point VijAlso marked as processed;
if point ViAt a distance d0If there is no neighbor point in the range, then skip point ViPoint-to-point cloud CoThe other point of (a) performs step (C).
Further, in the step (C), a Kd search tree is generated according to the point cloud C, and the Kd search tree is used at a preset distance d0Search point within range ViNeighbor point of (V)i1,Vi2,...Vim}。
Preferably, the coarse matching module 13 includes:
a maximum workpiece radius obtaining submodule for obtaining a workpiece template C before samplingtMaximum workpiece radius rmax=‖Pmax-PminII/2 wherein PminAnd PmaxFor a workpiece template contour point cloud CtMinimum point ofPminAnd a maximum point Pmax
PPF registration submodule for sampling workpiece template contour point cloud CtsInput point cloud, point cloud C as PPF feature estimatorssAs target point cloud, 2rmaxAs a distance threshold of the PPF hash map searcher, a PPF registration method is used to obtain a plurality of coarse matching results, namely transformation matrixes; t isi(i=0,...,K);
A rotation-translation submodule for using each transformation matrix TiPoint-to-point cloud CtPerforming rotational translation to obtain K transformed point clouds Cti(i=0,...,K);
A template contour point cloud set acquisition submodule for acquiring a point cloud CtiTurning around an x axis and rotating around a z axis according to conditions; or point cloud CtiTurning around the y axis and rotating around the z axis according to conditions to respectively obtain a plurality of template contour point cloud sets Sc
Further, in the template contour point cloud set acquisition submodule, the point cloud C is acquiredtiTurning around the x axis and rotating around the z axis according to conditions to obtain a plurality of template contour point cloud sets ScThe method comprises the following steps:
s341 according to the point cloud Cti(i ═ 0.... K.) corresponding transformation matrix TiCalculating its corresponding rotational z-axis zi
zi=Ti(0,2,3,1)
Wherein, Ti(0, 2, 3, 1) represents a number from TiStarting to take 3 numbers from the 0 th row and the 2 nd column to form 1 column;
s342 the point cloud CtiOptionally flipped about the x-axis if rotated by the z-axisiContrary to the vertically downward direction, point cloud C is pointedtiRotated by 180 ° about the x-axis, which is the transformation matrix TiX axis of rotation xiI.e. by
xi=Ti(0,0,3,1)
Wherein, Ti(0, 0, 3, 1) represents a number from TiThe 0 th row and the 0 th column of the (1) form 1 column by taking 3 numbers;
s343 point cloudCtiRotation around the z-axis conditional: point cloud Cti(i ═ 0.., K) around the rotational z-axis zRotation nzEach time of rotation angle is
Figure BDA0003214900460000171
To obtain nzK new point clouds of which nzFor a predetermined number of rotation steps, and (n)z+1) K template contour point clouds are stored in the template point cloud set ScPerforming the following steps;
or, the point cloud CtiThe method comprises the following steps of turning around the y axis and rotating around the z axis according to conditions to obtain a plurality of template contour point clouds:
s341' from the point cloud Cti(i ═ 0.... K.) corresponding transformation matrix TiCalculating its corresponding rotational z-axis zi
zi=Ti(0,0,1,1);
Wherein, Ti(0, 2, 3, 1) represents a number from TiThe 0 th row and the 0 th column of the (1) form 1 column by taking 3 numbers;
s342' Point cloud CtiOptionally turning around the y-axis if the z-axis is rotatediContrary to the vertically downward direction, point cloud C is pointedtRotated by 180 about the x-axis, the y-axis being the transformation matrix TiX axis y of rotation ofiI.e. by
yi=Ti(0,1,3,1)
Wherein, Ti(0, 0, 3, 1) represents a number from TiThe number of the row 0 and the column 1 is 3, and 1 column is formed.
S343' Point cloud CtiConditionally rotating about the z-axis, comprising: point cloud Cti(i ═ 0.., K) around the rotational z-axis ziRotation nzEach time of rotation angle is
Figure BDA0003214900460000181
To obtain nzK new point clouds of which nzFor a predetermined number of rotation steps, and (n)z+1) K template contour point clouds are stored in the template point cloud set ScIn (1).
Preferably, the fine matching module 14 includes:
a matching result obtaining submodule for traversing the set ScTemplate point cloud C injAnd respectively connected with the point cloud CsPerforming ICP registration, and if the registration is convergent, the matching degree is less than a preset value and the matching proportion is greater than the preset value, determining the point cloud CjAnd point cloud CsMatching is successful; obtaining a plurality of matching results which are successfully matched, including a transformation matrix TjMatching degree and matching proportion; and if the matching result of the matching is not successful, the 3D template matching is considered to be failed.
A matching result sorting module for sorting the matching results according to the matching proportion and outputting the transformation matrix of the optimal matching result as Tb
EXAMPLE III
Fig. 8 is a schematic structural diagram of a computer device according to an embodiment of the present invention, such as a smart phone, a tablet computer, a notebook computer, a desktop computer, a rack-mounted server, a blade server, a tower server, or a rack-mounted server (including an independent server or a server cluster formed by multiple servers) that can execute programs. The computer device 20 of the present embodiment includes at least, but is not limited to: a memory 21, a processor 22, which may be communicatively coupled to each other via a system bus, as shown in FIG. 8. It is noted that fig. 8 only shows a computer device 20 with components 21-22, but it is to be understood that not all shown components are required to be implemented, and that more or fewer components may be implemented instead.
In this embodiment, the memory 21 (i.e., the readable storage medium) includes a Flash memory, a hard disk, a multimedia Card, a Card-type memory (e.g., SD or DX memory, etc.), a Random Access Memory (RAM), a Static Random Access Memory (SRAM), a Read Only Memory (ROM), an Electrically Erasable Programmable Read Only Memory (EEPROM), and a Programmable Read Only Memory (PROM), and the memory 21 may also be an external storage device of the computer device 20, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash Card (Flash Card), and the like provided on the computer device 20. Of course, the memory 21 may also include both internal and external storage devices of the computer device 20. In this embodiment, the memory 21 is generally used for storing an operating system and various types of application software installed in the computer device 20, such as program codes of the template matching apparatus in the method embodiment. Further, the memory 21 may also be used to temporarily store various types of data that have been output or are to be output.
Processor 22 may be a Central Processing Unit (CPU), controller, microcontroller, microprocessor, or other data Processing chip in some embodiments. The processor 22 is typically used to control the overall operation of the computer device 20. In this embodiment, the processor 22 is configured to execute the program code stored in the memory 21 or process data, for example, execute the template matching apparatus 11, so as to implement the template matching method in the method embodiment.
Example four
The present application also provides a computer-readable storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory (e.g., SD or DX memory, etc.), a Random Access Memory (RAM), a Static Random Access Memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, an optical disk, a server, an App application mall, etc., on which a computer program is stored, which when executed by a processor implements corresponding functions. The computer-readable storage medium of the present embodiment is used for storing program codes of a template matching apparatus, and when executed by a processor, implements the template matching method in the method embodiment.
It should be noted that the embodiments and features of the embodiments of the present application may be combined with each other without conflict.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
The above description is only a preferred embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by using the contents of the present specification and the accompanying drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.

Claims (11)

1. A method for matching a flat workpiece template is characterized by comprising the following steps:
s1 obtaining actual workpiece contour point cloud CsAnd workpiece template contour point cloud Ct
S2, respectively acquiring the actual workpiece contour point cloud CsAnd the workpiece template contour point cloud CtCharacteristic normal vector N ofi=(nix,niy,niz) Removing the abnormal points based on the characteristic normal vector pair to obtain the actual workpiece contour point cloud CsAnd workpiece template contour point cloud CtSampling to obtain point cloud CtsAnd point cloud Css
S3 aligning the point cloud CtsAnd the point cloud CssCarrying out coarse matching positioning to obtain a plurality of coarse matching transformation matrixes Ti(i ═ 0.. times, K), and based on each of the transformation matrices TiFor the point cloud CtPerforming rotational translation to obtain K point clouds C after transformationti(i ═ 0.., K); k point clouds CtiOptionally rotating around x-axis and z-axis, or adding K point clouds CtiTurning around the y axis and rotating around the z axis according to conditions to obtain a plurality of template contour point clouds Sc
S4 matching multiple said template contour point clouds ScAnd the actual workpiece contour point cloud CsCarrying out fine matching positioning, and outputting a transformation matrix of an optimal matching result to be recorded as Tb
2. The method for matching a flat workpiece template according to claim 1, wherein in the step S2, the feature normal vector acquisition comprises the following steps: obtaining the geometric center point P of the point cloud CcentexGo through each point P of the point cloud CiFor each point PiIts characteristic normal vector
Figure FDA0003214900450000011
3. The method of claim 1, wherein in step S2, the point cloud C is obtainedtAnd point cloud CsPoint P iniA point which is considered abnormal when any one of the following conditions is satisfied;
(a) if point PiIn the three-dimensional coordinates (x, y, z), x or y or z is NaN, the point PiIs an abnormal point;
(b) if point PiCharacteristic normal vector N ofi=(nix,niy,niz) In, nixOr niyOr nizIs NaN, then point PiIs an abnormal point.
4. The method of claim 1, wherein in step S2, the point cloud C of the contour of the actual workpiece is obtained after removing the abnormal points based on the pairs of feature normal vectorssAnd workpiece template contour point cloud CtThe sampling comprises the following steps:
step (C): traverse all points { V ] in the point cloud C1,V2,...VnN represents the number of points in the point cloud C, and a judgment point ViIf it has already been processed, if it has not, ViAdding to the point cloud CoAnd will point ViMarked as processed, wherein CoIs a pre-created empty point cloud; if point ViProcessed, then skipping point Vi
For addition to CoPoint V iniSynchronously performing step (c) comprising: at a predetermined distance d0Search point within range ViNeighbor point of (V)i1,Vi2,...VimM denotes a point ViAnd judging ViIs a neighbor point VijWhether a preset constraint condition is met or not, wherein the preset condition is as follows: neighbor point VijUntreated and ViAnd VijAre not more than preSetting the angle threshold theta0
If ViIts neighbor point ViiAfter processing, skipping point ViiJudgment of ViWhether other neighbor points of (1) satisfy the constraint condition;
if ViIts neighbor point VijUnprocessed, decision point VijIf the constraint condition is satisfied, if the point V isiWith its neighbour point VijIf the preset constraint condition is met, the point V is setijAlso added to the point cloud CoAnd will point VijAlso marked as processed;
if point ViAt a distance d0If there is no neighbor point in the range, then skip point ViPoint-to-point cloud CoThe other point of (a) performs step (C).
5. The method for matching a flat workpiece template as claimed in claim 1, wherein in step S3, the point cloud C is registered by using a PPF registration methodtsAnd point cloud CssPerforming coarse matching positioning, including:
s31 acquiring workpiece template C before samplingtMaximum workpiece radius rmax=||Pmax-PminI/2, wherein PminAnd PmaxFor a workpiece template contour point cloud CtMinimum point P ofminAnd a maximum point Pmax
S32 is processed by the sampled workpiece template contour point cloud CtsInput point cloud, point cloud C as PPF feature estimatorssAs target point cloud, 2rmaxAs a distance threshold of the PPF hash map searcher, a PPF registration method is used to obtain a plurality of coarse matching results, namely transformation matrixes; t isi(i=0,...,K);
S33 uses each transformation matrix TiPoint-to-point cloud CtPerforming rotational translation to obtain K transformed point clouds Cti(i=0,...,K);
S34 point cloud CtiConditional wrap transform matrix TiX-axis flipping and z-axis rotation; or point cloud CtiOptionally rotating around the y-axis and the z-axisObtaining a plurality of template contour point cloud sets Sc
6. A method as claimed in claim 1 or 5, characterized in that the point cloud C is used as a template for matching planar workpiecestiTurning around the x axis and rotating around the z axis according to conditions to obtain a plurality of template contour point cloud sets ScThe method comprises the following steps:
s341 according to the point cloud Cti(i ═ 0.... K.) corresponding transformation matrix TiCalculating its corresponding rotational z-axis zi
zi=Ti(0,2,3,1)
Wherein, Ti(0, 2, 3, 1) represents a number from TiStarting to take 3 numbers from the 0 th row and the 2 nd column to form 1 column;
s342 the point cloud CtiOptionally flipped about the x-axis if rotated by the z-axisiContrary to the vertically downward direction, point cloud C is pointedtiRotated by 180 ° about the x-axis, which is the transformation matrix TiX axis of rotation xiI.e. by
xi=Ti(0,0,3,1)
Wherein, Ti(0, 0, 3, 1) represents a number from TiThe 0 th row and the 0 th column of the (1) form 1 column by taking 3 numbers;
s343 point cloud CtiRotation around the z-axis conditional: point cloud Cti(i ═ 0.., K) around the rotational z-axis ziRotation nzEach time of rotation angle is
Figure FDA0003214900450000021
To obtain nzK new point clouds of which nzFor a predetermined number of rotation steps, and (n)z+1) K template contour point clouds are stored in the template point cloud set ScPerforming the following steps;
or, the point cloud CtiConditional wrap transform matrix TiThe method comprises the following steps of turning over the y axis and rotating the z axis to obtain a plurality of template contour point clouds:
s341' from the point cloud Cti(i ═ 0.... K.) corresponding transformation matrix TiCalculate the pair thereofZ axis of rotation zi
zi=Ti(0,0,1,1);
Wherein, Ti(0, 2, 3, 1) represents a number from TiThe 0 th row and the 0 th column of the (1) form 1 column by taking 3 numbers;
s342' Point cloud CtiTurning around the y axis according to conditions: if the z-axis zi is rotated in a direction opposite to the vertical downward direction, the point cloud C is pointedtiRotated by 180 about the x-axis, the y-axis being the transformation matrix TiX axis y of rotation ofiI.e. by
yi=Ti(0,1,3,1)
Wherein, Ti(0, 0, 3, 1) represents a number from TiThe number of the 0 th row and the 1 st column is 3, so that 1 column is formed;
s343' Point cloud CtiConditionally rotating about the z-axis, comprising: point cloud Cti(i ═ 0.., K) around the rotational z-axis ziRotation nzEach time of rotation angle is
Figure FDA0003214900450000031
To obtain nzK new point clouds of which nzFor a predetermined number of rotation steps, and (n)z+1) K template contour point clouds are stored in the template point cloud set ScIn (1).
7. The method of claim 1, wherein in step S4, ICP is used to set ScTemplate point cloud and workpiece contour point cloud C insPerforming fine matching positioning, including:
s41 traversing set ScTemplate point cloud C injAnd respectively connected with the point cloud CsPerforming ICP registration, and if the registration is convergent, the matching degree is less than a preset value and the matching proportion is greater than the preset value, determining the point cloud CjAnd point cloud CsMatching is successful; obtaining a plurality of matching results which are successfully matched, including a transformation matrix TjMatching degree and matching proportion; if the matching result of the matching is not successful, the 3D template matching is considered to be failed;
s42, according to the matching proportion, the matching results in the step S41 are sorted, and the transformation matrix of the output optimal matching result is recorded as Tb
8. The method as claimed in claim 1, wherein in step S1, the actual workpiece contour point cloud C is obtainedsThe method comprises the following steps:
obtaining actual workpiece point cloud C1Based on a preset rule, the actual workpiece point cloud C is processed1Conversion into a tetragonal grid SM1And acquire the SM1Normal vector of each vertex in the vector;
segmenting the SM based on the normal vector and a preset constraint condition1Removing the SM based on the segmentation result1Generating a four-corner grid SM after removing the side point cloud2
Searching for and acquiring the SM2All the edge points of (a), said edge points constituting a point cloud C3The actual contour point cloud of the workpiece to be extracted is obtained;
and/or the workpiece template contour point cloud CtThe acquisition comprises the following steps:
analyzing a 2D drawing of a workpiece template, and converting a straight line entity, an arc entity and a circle entity of the 2D drawing into a line data structure, an arc data structure and a circle data structure according to preset rules respectively to obtain a plurality of template reference lines Si(i=1,2,..,Ns),NsRepresenting the total number of the reference lines;
analyzing all the line data structure, the arc data structure and the circle data structure according to a given resolution l0Respectively dispersing to generate corresponding reference line point clouds;
and merging all the reference line point clouds to obtain the workpiece template point cloud.
9. A planar workpiece template matching apparatus, comprising:
a point cloud obtaining module for obtaining the actual workpiece contour point cloud CsHe Gong workerPiece template contour point cloud Ct
A sampling module for respectively acquiring the actual workpiece contour point clouds CsAnd the workpiece template contour point cloud CtCharacteristic normal vector N ofi=(nix,niy,niz) Removing the abnormal points based on the characteristic normal vector pair to obtain the actual workpiece contour point cloud CsAnd workpiece template contour point cloud CtSampling to obtain point cloud CtsAnd point cloud Css
A rough matching module for matching the point cloud CtsAnd the point cloud CssCarrying out coarse matching positioning to obtain a plurality of coarse matching transformation matrixes Ti(i ═ 0.. times, K), and based on each of the transformation matrices TiFor the point cloud CtPerforming rotational translation to obtain K point clouds C after transformationti(i ═ 0.., K); k point clouds CtiOptionally rotating around x-axis and z-axis, or adding K point clouds CtiTurning around the y axis and rotating around the z axis according to conditions to obtain a plurality of template contour point clouds Sc
A fine matching module for matching a plurality of the template contour point clouds ScAnd the actual workpiece contour point cloud CsCarrying out fine matching positioning, and outputting a transformation matrix of an optimal matching result to be recorded as Tb
10. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the steps of the method of any of claims 1 to 8 are implemented by the processor when executing the computer program.
11. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 8.
CN202110940900.4A 2021-08-17 2021-08-17 Planar workpiece template matching method, device, medium and computer equipment Pending CN113627548A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110940900.4A CN113627548A (en) 2021-08-17 2021-08-17 Planar workpiece template matching method, device, medium and computer equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110940900.4A CN113627548A (en) 2021-08-17 2021-08-17 Planar workpiece template matching method, device, medium and computer equipment

Publications (1)

Publication Number Publication Date
CN113627548A true CN113627548A (en) 2021-11-09

Family

ID=78385927

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110940900.4A Pending CN113627548A (en) 2021-08-17 2021-08-17 Planar workpiece template matching method, device, medium and computer equipment

Country Status (1)

Country Link
CN (1) CN113627548A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115082547A (en) * 2022-07-27 2022-09-20 深圳市华汉伟业科技有限公司 Profile measuring method based on point cloud data and storage medium

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107507167A (en) * 2017-07-25 2017-12-22 上海交通大学 A kind of cargo pallet detection method and system matched based on a cloud face profile
DE102017201169A1 (en) * 2017-01-25 2018-07-26 Siemens Aktiengesellschaft Computer-aided image processing method
CN108564605A (en) * 2018-04-09 2018-09-21 大连理工大学 A kind of three-dimensional measurement spots cloud optimization method for registering
CN110202575A (en) * 2019-06-05 2019-09-06 武汉工程大学 A kind of robot target path accuracy compensation method for commercial measurement
CN111325837A (en) * 2020-01-23 2020-06-23 江西理工大学 Side slope DEM generation method based on ground three-dimensional laser point cloud
CN111598946A (en) * 2020-03-16 2020-08-28 华南理工大学 Object pose measuring method and device and storage medium
CN111932570A (en) * 2020-09-10 2020-11-13 熵智科技(深圳)有限公司 Edge detection method, device, medium and equipment based on grid data
CN112002015A (en) * 2020-09-10 2020-11-27 熵智科技(深圳)有限公司 Method, device, equipment and medium for generating grid data structure by using disordered point cloud
CN112017225A (en) * 2020-08-04 2020-12-01 华东师范大学 Depth image matching method based on point cloud registration
CN112215101A (en) * 2020-09-27 2021-01-12 武汉科技大学 Attention mechanism-based three-dimensional target identification method and system
CN112581457A (en) * 2020-12-23 2021-03-30 武汉理工大学 Pipeline inner surface detection method and device based on three-dimensional point cloud
CN112669359A (en) * 2021-01-14 2021-04-16 武汉理工大学 Three-dimensional point cloud registration method, device, equipment and storage medium
CN113034593A (en) * 2021-03-09 2021-06-25 深圳市广宁股份有限公司 6D pose marking method and system and storage medium
CN113649668A (en) * 2021-08-17 2021-11-16 熵智科技(深圳)有限公司 Workpiece template point cloud generation method and device, computer and storage medium

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017201169A1 (en) * 2017-01-25 2018-07-26 Siemens Aktiengesellschaft Computer-aided image processing method
CN107507167A (en) * 2017-07-25 2017-12-22 上海交通大学 A kind of cargo pallet detection method and system matched based on a cloud face profile
CN108564605A (en) * 2018-04-09 2018-09-21 大连理工大学 A kind of three-dimensional measurement spots cloud optimization method for registering
CN110202575A (en) * 2019-06-05 2019-09-06 武汉工程大学 A kind of robot target path accuracy compensation method for commercial measurement
CN111325837A (en) * 2020-01-23 2020-06-23 江西理工大学 Side slope DEM generation method based on ground three-dimensional laser point cloud
CN111598946A (en) * 2020-03-16 2020-08-28 华南理工大学 Object pose measuring method and device and storage medium
CN112017225A (en) * 2020-08-04 2020-12-01 华东师范大学 Depth image matching method based on point cloud registration
CN111932570A (en) * 2020-09-10 2020-11-13 熵智科技(深圳)有限公司 Edge detection method, device, medium and equipment based on grid data
CN112002015A (en) * 2020-09-10 2020-11-27 熵智科技(深圳)有限公司 Method, device, equipment and medium for generating grid data structure by using disordered point cloud
CN112215101A (en) * 2020-09-27 2021-01-12 武汉科技大学 Attention mechanism-based three-dimensional target identification method and system
CN112581457A (en) * 2020-12-23 2021-03-30 武汉理工大学 Pipeline inner surface detection method and device based on three-dimensional point cloud
CN112669359A (en) * 2021-01-14 2021-04-16 武汉理工大学 Three-dimensional point cloud registration method, device, equipment and storage medium
CN113034593A (en) * 2021-03-09 2021-06-25 深圳市广宁股份有限公司 6D pose marking method and system and storage medium
CN113649668A (en) * 2021-08-17 2021-11-16 熵智科技(深圳)有限公司 Workpiece template point cloud generation method and device, computer and storage medium

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
刘嘉敏等: "DWG图纸中零件轮廓线提取方法的研究与实现", 沈阳工业大学学报, vol. 28, no. 15, pages 553 - 556 *
崔水军等: "基于法向量特征的点云配准方法", 科技创新导报, vol. 14, no. 03, pages 134 - 137 *
张学昌等: "基于球面特征的点云配准方法研究", 机械科学与技术, vol. 34, no. 12, pages 1851 - 1856 *
张琮毅等: "尺度可变的快速全局点云配准方法", 计算机学报, vol. 42, no. 9, pages 1939 - 1952 *
李仁忠等: "基于方法库的点云去噪与精简算法", 激光与光电子学进展, vol. 55, no. 1, pages 251 - 257 *
潘博阳等: "基于SIFT和Affinity Propagation的遥感图像配准算法", 信息技术, no. 12, pages 25 - 32 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115082547A (en) * 2022-07-27 2022-09-20 深圳市华汉伟业科技有限公司 Profile measuring method based on point cloud data and storage medium
CN115082547B (en) * 2022-07-27 2022-11-15 深圳市华汉伟业科技有限公司 Profile measuring method based on point cloud data and storage medium

Similar Documents

Publication Publication Date Title
CN113751824B (en) Automatic generation method and device for groove cutting track, computer equipment and medium
CN107633192B (en) Bar code segmentation and reading method based on machine vision under complex background
US8590794B2 (en) Barcode recognion method and computer product thereof
CN110738273B (en) Image feature point matching method, device, equipment and storage medium
CN111598946B (en) Object pose measuring method and device and storage medium
CN109559346B (en) Method for positioning and dividing part to be measured in 3D point cloud measurement and scanner
CN112132907B (en) Camera calibration method and device, electronic equipment and storage medium
CN111400830B (en) Machining calibration method and device for three-dimensional blank workpiece
CN112686950B (en) Pose estimation method, pose estimation device, terminal equipment and computer readable storage medium
CN111815706A (en) Visual identification method, device, equipment and medium for single-article unstacking
CN111179433A (en) Three-dimensional modeling method and device for target object, electronic device and storage medium
CN113487633A (en) Point cloud contour extraction method and device, computer equipment and storage medium
CN112257721A (en) Image target region matching method based on Fast ICP
CN105405122A (en) Circle detection method based on data stationarity
CN107895166B (en) Method for realizing target robust recognition based on feature descriptor by geometric hash method
CN113627548A (en) Planar workpiece template matching method, device, medium and computer equipment
CN115147433A (en) Point cloud registration method
CN113159103A (en) Image matching method, image matching device, electronic equipment and storage medium
CN111832634A (en) Foreign matter detection method, system, terminal device and storage medium
CN113111741B (en) Assembly state identification method based on three-dimensional feature points
CN114453981A (en) Workpiece alignment method and device
CN114781417A (en) Two-dimensional code identification method, two-dimensional code identification device and electronic equipment
Guo et al. Automatic shape-based target extraction for close-range photogrammetry
CN113649668A (en) Workpiece template point cloud generation method and device, computer and storage medium
CN109801334B (en) Workpiece positioning method, standard point determining method, device and equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination