CN112446952A - Three-dimensional point cloud normal vector generation method and device, electronic equipment and storage medium - Google Patents

Three-dimensional point cloud normal vector generation method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN112446952A
CN112446952A CN202011232483.XA CN202011232483A CN112446952A CN 112446952 A CN112446952 A CN 112446952A CN 202011232483 A CN202011232483 A CN 202011232483A CN 112446952 A CN112446952 A CN 112446952A
Authority
CN
China
Prior art keywords
dimensional
normal vector
point cloud
points
dimensional point
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.)
Granted
Application number
CN202011232483.XA
Other languages
Chinese (zh)
Other versions
CN112446952B (en
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.)
Hangzhou Yixian Advanced Technology Co ltd
Original Assignee
Hangzhou Yixian Advanced Technology 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 Hangzhou Yixian Advanced Technology Co ltd filed Critical Hangzhou Yixian Advanced Technology Co ltd
Priority to CN202011232483.XA priority Critical patent/CN112446952B/en
Publication of CN112446952A publication Critical patent/CN112446952A/en
Application granted granted Critical
Publication of CN112446952B publication Critical patent/CN112446952B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

The invention relates to a method and a device for generating a three-dimensional point cloud normal vector, electronic equipment and a computer storage medium, wherein the method for generating the three-dimensional point cloud normal vector comprises the following steps: filtering the collected point cloud through voxel filtering and filtering based on the track of a collection object to obtain the filtered point cloud, wherein the collection object comprises a collector and a sensor; calculating normal vectors of all three-dimensional points in the filtered point cloud; for each three-dimensional point in the filtered point cloud: the method comprises the steps of searching a track according to a neighbor algorithm to obtain track nodes, calculating according to the track nodes and normal vectors of three-dimensional points to obtain first radian values corresponding to the three-dimensional points, and adjusting the normal vectors of the three-dimensional points according to the first radian values and a preset radian interval to obtain target normal vectors of the three-dimensional points. By the method and the device, the problem of low efficiency in calculating the normal vector of each three-dimensional point in the point cloud is solved, and the efficiency of generating the normal vector of each three-dimensional point in the point cloud is improved.

Description

Three-dimensional point cloud normal vector generation method and device, electronic equipment and storage medium
Technical Field
The invention relates to the technical field of computer vision, in particular to a method and a device for generating a three-dimensional point cloud normal vector, electronic equipment and a storage medium.
Background
For the three-dimensional reconstruction of any scene, generally, a normal vector of each three-dimensional point in a point cloud is calculated first, then a polygonal mesh is generated by surface reconstruction, and after the polygonal mesh is constructed, the three-dimensional reconstruction is realized by subsequent texture mapping. And the correct calculation of the normal vector of each three-dimensional point is an important basis for generating the polygon mesh. In the related technology, an octree is used for dividing point cloud, the divided point cloud is clustered according to unadjusted normal vectors, then noise points which do not accord with observation errors are eliminated in the fitting process through local quadric surface fitting, voting is carried out on the direction of the normal vectors, and after the voting, the fitting and voting steps are iterated until no noise points exist, so that three-dimensional points which accord with the observation errors and normal vectors thereof are obtained. However, the clustering algorithm is slow, and requires iteration for multiple times of fitting and eliminating noise points and voting steps, resulting in low efficiency of obtaining normal vectors.
Aiming at the problem of low efficiency in calculating the normal vector of each three-dimensional point in the point cloud in the related technology, an effective solution is not provided at present.
Disclosure of Invention
The embodiment of the application provides a method and a device for generating a normal vector of a three-dimensional point cloud, electronic equipment and a computer storage medium, and aims to at least solve the problem of low efficiency in calculating the normal vector of each three-dimensional point in the point cloud in the related art.
In a first aspect, an embodiment of the present application provides a method for generating a normal vector of a three-dimensional point cloud, where the method includes:
filtering the collected point cloud through voxel filtering and filtering based on the track of a collection object to obtain the filtered point cloud, wherein the collection object comprises a collector and a sensor;
calculating normal vectors of all three-dimensional points in the filtered point cloud;
for each three-dimensional point in the filtered point cloud: searching the track according to a neighbor algorithm to obtain track nodes, calculating according to the track nodes and normal vectors of the three-dimensional points to obtain first arc values corresponding to the three-dimensional points, and adjusting the normal vectors of the three-dimensional points according to the first arc values and a preset arc interval to obtain target normal vectors of the three-dimensional points.
In some embodiments, the acquiring the point cloud includes a plurality of acquiring points, and the filtering the acquired point cloud by voxel filtering and based on the track of the acquiring object to obtain the filtered point cloud includes:
obtaining intermediate point clouds by voxel filtering of the collected point clouds;
and filtering the acquisition points of the intermediate point cloud in an enclosing body track space to obtain the filtered point cloud, wherein the enclosing body track space is obtained according to the movement of a minimum enclosing body along the track, and the minimum enclosing body is a cube or a sphere which minimally encloses the acquisition object.
In some embodiments, the obtaining an intermediate point cloud by voxel filtering the acquired point cloud comprises:
counting the number of the acquisition points in each voxel, wherein the side length of each voxel is obtained according to the consistency of the acquired point cloud;
obtaining a first voxel and a second voxel according to the number of the acquisition points and a preset number threshold, wherein the number of the acquisition points in the first voxel is smaller than the number threshold, and the number of the acquisition points in the second voxel is larger than or equal to the number threshold;
and filtering the acquired point cloud to obtain acquisition points in the first voxel, and replacing the spatial positions of all the acquisition points in the second voxel with the position average value of all the acquisition points in the second voxel to obtain the intermediate point cloud.
In some embodiments, the filtered point cloud comprises a plurality of three-dimensional points, and the calculating normal vectors for the three-dimensional points in the filtered point cloud comprises:
and searching each three-dimensional point according to a neighbor algorithm and a preset first neighbor radius to obtain a first neighbor point, and calculating according to the first neighbor point based on a PCA algorithm to obtain a normal vector of each three-dimensional point.
In some embodiments, the searching according to the nearest neighbor algorithm and the trajectory to obtain a trajectory node, and the calculating according to the trajectory node and a normal vector of the three-dimensional point to obtain a first arc value corresponding to the three-dimensional point includes:
searching on the track according to a neighbor algorithm to obtain the first m track nodes closest to the three-dimensional point, wherein the track nodes comprise the pose of the acquisition object, and m is the preset number of nodes;
subtracting the positions of the m track nodes and the positions of the three-dimensional points respectively to obtain m first vectors, performing inverse cosine calculation on the m first vectors and the normal vector of the three-dimensional points respectively, and then solving an absolute value to obtain m first radian values.
In some embodiments, the adjusting the normal vector of the three-dimensional point according to the first radian value and a preset radian interval to obtain a target normal vector of the three-dimensional point includes:
under the condition that the m first radian values are within a preset first radian interval, reversing the normal vector of the three-dimensional point to obtain a target normal vector of the three-dimensional point;
determining the normal vector of the three-dimensional point as a target normal vector of the three-dimensional point under the condition that the m first radian values are within a preset second radian interval;
when a plurality of first arc values in m first arc values are in the first arc interval and other first arc values are in the second arc interval, or when m first arc values are in a preset third arc interval, voting is carried out based on a normal vector of the three-dimensional point and a plurality of second adjacent points of the three-dimensional point, and the normal vector of the three-dimensional point is adjusted according to a voting result to obtain a target normal vector of the three-dimensional point, wherein each second adjacent point is obtained by searching according to an adjacent algorithm and a preset second adjacent area radius.
In some embodiments, the voting based on the normal vector of the three-dimensional point and a plurality of second neighboring points of the three-dimensional point, and adjusting the normal vector of the three-dimensional point according to a voting result to obtain a target normal vector of the three-dimensional point includes:
subtracting the positions of the second adjacent points and the positions of the three-dimensional points respectively to obtain a plurality of second vectors, and performing inverse cosine calculation on the second vectors and normal vectors of the three-dimensional points respectively to obtain a plurality of second arc values;
counting the number of the second radian values smaller than a preset radian threshold value to obtain a first vote number, and counting the number of the second radian values larger than or equal to the radian threshold value to obtain a second vote number;
when the voting result is that the first voting number is larger than the second voting number, reversing the normal vector of the three-dimensional point to obtain a target normal vector of the three-dimensional point;
and determining the normal vector of the three-dimensional point as a target normal vector of the three-dimensional point when the voting result is that the first voting number is less than or equal to the second voting number.
In a second aspect, an embodiment of the present application provides an apparatus for generating a normal vector of a three-dimensional point cloud, where the apparatus includes: the device comprises a filtering module, a normal vector calculation module and a normal vector adjustment module;
the filtering module is used for filtering the acquired point cloud through voxel filtering and filtering based on the track of an acquisition object to obtain the filtered point cloud, wherein the acquisition object comprises an acquirer and a sensor;
the normal vector calculation module is used for calculating normal vectors of all three-dimensional points in the filtered point cloud;
the normal vector adjustment module is configured to, for each three-dimensional point in the filtered point cloud: searching the track according to a neighbor algorithm to obtain track nodes, calculating according to the track nodes and normal vectors of the three-dimensional points to obtain first arc values corresponding to the three-dimensional points, and adjusting the normal vectors of the three-dimensional points according to the first arc values and a preset arc interval to obtain target normal vectors of the three-dimensional points.
In a third aspect, an embodiment of the present application provides an electronic device, which includes a memory, a processor, and a computer program stored on the memory and running on the processor, where the processor, when executing the computer program, implements the method for generating a normal vector of a three-dimensional point cloud as described in the first aspect.
In a fourth aspect, the present application provides a computer storage medium, on which a computer program is stored, which when executed by a processor, implements the method for generating a normal vector of a three-dimensional point cloud as described in the first aspect.
Compared with the related technology, the method for generating the normal vector of the three-dimensional point cloud provided by the embodiment of the application obtains the filtered point cloud by filtering the acquired point cloud through voxel filtering and filtering based on the track of the acquisition object, wherein the acquisition object comprises an acquirer and a sensor, the normal vector of each three-dimensional point in the filtered point cloud is calculated, and for each three-dimensional point in the filtered point cloud: the method comprises the steps of searching a track according to a neighbor algorithm to obtain track nodes, calculating according to the track nodes and normal vectors of three-dimensional points to obtain first arc values corresponding to the three-dimensional points, adjusting the normal vectors of the three-dimensional points according to the first arc values and a preset arc interval to obtain target normal vectors of the three-dimensional points, solving the problem that the efficiency of calculating the normal vectors of the three-dimensional points in the point cloud in the related art is low, and improving the efficiency of generating the normal vectors of the three-dimensional points in the point cloud.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application. In the drawings:
FIG. 1 is a flow chart of a method for generating a normal vector of a three-dimensional point cloud according to an embodiment of the present application;
FIG. 2 is a schematic diagram of a voxel according to an embodiment of the present application;
FIG. 3 is a schematic diagram of a pose during movement of an acquisition object according to an embodiment of the application;
FIG. 4 is a schematic diagram of an observation of a three-dimensional point on a trajectory by an acquisition object according to an embodiment of the present application;
FIG. 5 is a flow chart of a method of computing normal vectors for three-dimensional points according to an embodiment of the present application;
FIG. 6 is a flow chart of a method of calculating a first camber value according to an embodiment of the present application;
FIG. 7 is a diagram illustrating adjustment of normal vectors of three-dimensional points according to voting results according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of a device for generating a normal vector of a three-dimensional point cloud according to an embodiment of the present application;
fig. 9 is an internal structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application will be described and illustrated below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments provided in the present application without any inventive step are within the scope of protection of the present application.
It is obvious that the drawings in the following description are only examples or embodiments of the present application, and that it is also possible for a person skilled in the art to apply the present application to other similar contexts on the basis of these drawings without inventive effort. Moreover, it should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation-specific decisions must be made to achieve the developers' specific goals, such as compliance with system-related and business-related constraints, which may vary from one implementation to another.
Reference in the specification to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the specification. The appearances of the phrase in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Those of ordinary skill in the art will explicitly and implicitly appreciate that the embodiments described herein may be combined with other embodiments without conflict.
Unless defined otherwise, technical or scientific terms referred to herein shall have the ordinary meaning as understood by those of ordinary skill in the art to which this application belongs. Reference to "a," "an," "the," and similar words throughout this application are not to be construed as limiting in number, and may refer to the singular or the plural. The present application is directed to the use of the terms "including," "comprising," "having," and any variations thereof, which are intended to cover non-exclusive inclusions; for example, a process, method, system, article, or apparatus that comprises a list of steps or modules (elements) is not limited to the listed steps or elements, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus. Reference to "connected," "coupled," and the like in this application is not intended to be limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. The term "plurality" as referred to herein means two or more. "and/or" describes an association relationship of associated objects, meaning that three relationships may exist, for example, "A and/or B" may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship. Reference herein to the terms "first," "second," "third," and the like, are merely to distinguish similar objects and do not denote a particular ordering for the objects.
The embodiment provides a method for generating a normal vector of a three-dimensional point cloud. Fig. 1 is a flowchart of a method for generating a normal vector of a three-dimensional point cloud according to an embodiment of the present application, and as shown in fig. 1, the flowchart includes the following steps:
and S110, filtering the collected point cloud through voxel filtering and filtering based on the track of the collected object to obtain the filtered point cloud. The point cloud (point cloud) refers to a point data set of the appearance surface of the product obtained by a measuring instrument in the reverse engineering. Generally, the number of points obtained by using a three-dimensional coordinate measuring machine is small, and the distance between the points is large, so that the method is called sparse point cloud. The point clouds obtained by using the three-dimensional laser scanner or the photographic scanner have larger and denser point quantities, and are called dense point clouds. In this embodiment, the sensor is not limited to one of 16-line, 32-line, and 64-line laser radar sensors, so that the generation method provided in this embodiment can deal with point clouds of different densities collected by various laser radars. The acquisition object comprises an acquirer and a sensor, wherein the acquirer refers to a carrier or/and a user carrying the sensor to move. Any scene is collected by a sensor to obtain collected point clouds such as indoor multi-room point clouds and outdoor multi-tree point clouds. The acquired point cloud includes a plurality of three-dimensional acquisition points.
The voxel filtering refers to the point cloud data being voxelized by using an AABB bounding box, and generally, the denser the point cloud in the voxel, the more the information is, the noise points and outliers can be removed by the voxel. On the other hand, if the density of the collected point cloud is high, the excessive point cloud data can reduce the efficiency of the subsequent data processing. The down-sampling is realized through voxel filtering, so that the number of the point clouds can be reduced, and the shape characteristics of the point clouds can not be damaged. Preferably, the number of acquisition points in each voxel is counted. Fig. 2 is a schematic diagram of a voxel according to an embodiment of the application. As shown in fig. 2, each voxel is a cube, and the side length of each voxel is obtained from the consistency of the acquired point cloud. And obtaining a first voxel with the number of the acquisition points smaller than the number threshold and a second voxel with the number of the acquisition points larger than or equal to the number threshold according to the number of the acquisition points in each voxel and a preset number threshold. The preset number threshold is obtained according to the density of the collected point cloud. And filtering the collected point cloud to remove all the collection points in the first voxel, and replacing the spatial positions of all the collection points in the second voxel by using the position average value of all the collection points in the second voxel, namely finally representing all the points in the second voxel by using a gravity center point to obtain the intermediate point cloud. Position refers to the position of an object in a scene in a given three-dimensional coordinate system (cartesian coordinate system), generally denoted by (x, y, z).
In practical application, the acquired object and the point cloud acquired in any scene cannot meet each other, so that the intermediate point cloud is filtered based on the track of the acquired object to filter out all acquisition points encountered by the acquired object in the intermediate point cloud through the track. The trajectory is generated by the motion of the acquisition object when acquiring an arbitrary scene. Preferably, all the acquisition points in the bounding volume trajectory space are filtered out of the intermediate point cloud to obtain a filtered point cloud. The bounding volume trajectory space refers to a space obtained by the movement of a minimum bounding volume along a trajectory, and the minimum bounding volume is a cube or a sphere which minimally encloses the acquisition object. In the case where the shape information of the acquisition object cannot be obtained, a simple sphere can be used as the minimum bounding volume.
And S120, calculating normal vectors of all three-dimensional points in the filtered point cloud. Normal vector (normal) is a concept of a space-resolved geometry, and a vector represented by a straight line perpendicular to a plane is a normal vector of the plane. The normal vector included angle and the curvature value of each three-dimensional point in the point cloud are not changed along with the motion of an object in a scene, and the point cloud has rigid motion invariance. The filtered point cloud includes a plurality of three-dimensional points, and the normal vector of each three-dimensional point can be obtained by using a neighborhood calculation method (i.e., PCA algorithm) based on feature vectors, a triangulation method based on triangulation, or a method based on robust statistics, which is not limited herein.
S130, aiming at each three-dimensional point in the filtered point cloud: the method comprises the steps of searching a track according to a neighbor algorithm to obtain track nodes, calculating according to the track nodes and normal vectors of three-dimensional points to obtain first radian values corresponding to the three-dimensional points, and adjusting the normal vectors of the three-dimensional points according to the first radian values and a preset radian interval to obtain target normal vectors of the three-dimensional points.
The neighbor algorithm is to find a plurality of data items closest to the target data according to the distance between the data. And recording the number of the three-dimensional points included in the filtered point cloud as N, searching the ith three-dimensional point on the motion track of the acquisition object according to a neighbor algorithm to obtain a plurality of track nodes closest to the ith three-dimensional point, wherein i is 1, 2. Each trajectory node includes a pose of the acquisition object. Pose (position) refers to position and attitude (orientation), for example: typically (x, y, yaw) in two dimensions and (x, y, z, yaw, pitch, roll) in three dimensions, the last three elements describing the pose of the object. Fig. 3 is a schematic diagram of a pose during movement of an acquisition object according to an embodiment of the present application. As shown in FIG. 3, where yaw is the heading angle, rotating about the Z-axis, pitch is the pitch angle, rotating about the Y-axis, roll is the roll angle, rotating about the X-axis.
In this embodiment, the angle of the included angle is expressed by a radian, so that a plurality of first radian values corresponding to the ith three-dimensional point can be obtained. The number of the first arc values is the same as the number of the track nodes. And then, substantially judging whether the ith three-dimensional point can be observed by the acquisition object on a plurality of track nodes by judging whether a plurality of first arc values representing the included angles are distributed in a preset arc interval, and adjusting the normal vector of the ith three-dimensional point to obtain the target normal vector of the ith three-dimensional point under the condition that the ith three-dimensional point cannot be observed, can be observed on one side or can be observed on both sides on the plurality of track nodes. Fig. 4 is a schematic diagram of an observation of a three-dimensional point on a trajectory by an acquisition object according to an embodiment of the present application. As shown in fig. 4, three-dimensional points observed on one side can be observed by the object on one side at a plurality of track nodes, three-dimensional points observed on the other side cannot be observed by the plurality of track nodes, and three-dimensional points observed on the other side can be observed by the object on both sides at a plurality of track nodes. And respectively adjusting each three-dimensional point according to the observation condition of the collected object on each three-dimensional point on a plurality of track nodes, and finally obtaining the target normal vectors of the N three-dimensional points.
Through the steps, noise points in the collected point cloud can be filtered out through voxel filtering and filtering based on track prior of the collected object, data amount calculated by normal vectors is reduced, shape characteristics of the collected point cloud are stored at the same time, then normal vectors of all three-dimensional points in the filtered point cloud are calculated, and then a plurality of first arc values corresponding to all three-dimensional points are obtained based on the track prior of the collected object and the normal vectors of all three-dimensional points, namely observation conditions of the collected object on all three-dimensional points in the process of moving on the track, and the normal vectors of all three-dimensional points are adjusted according to the observation conditions to obtain target vectors of all three-dimensional points. Compared with the related technology, the method provided by the application does not need to cluster the point cloud, does not need to eliminate noise points through a repeated fitting iteration process so as to calculate the normal vector, can eliminate the noise points more quickly based on the track prior of the acquisition object, and adjusts the normal vector based on the track prior of the acquisition object after the normal vector of each three-dimensional point is obtained through one-time fitting calculation, so that the generation efficiency of the normal vector of each three-dimensional point in the point cloud can be improved, and the problem of low efficiency in calculating the normal vector of each three-dimensional point in the point cloud in the related technology is solved.
In some embodiments, fig. 5 is a flowchart of a method for calculating a normal vector of each three-dimensional point according to an embodiment of the present application, and as shown in fig. 5, the flowchart includes the following steps:
s510, searching each three-dimensional point according to a neighbor algorithm and a preset first neighborhood radius to obtain a first neighbor point. The value of the radius of the first neighbourhood may be determined according to factors such as the resolution of the point, the degree of refinement of the object details and the purpose. Preferably, the first neighborhood radius is a times the voxel side length, in this embodiment, a is 3. Searching is respectively carried out in the first neighborhood radius range based on the position of each three-dimensional point, and a kd-tree (namely a k-dimensional tree) can be used for acceleration to respectively obtain the first neighbor points of each three-dimensional point. The kd-Tree is a tree data structure that stores instance points in k-dimensional space for fast retrieval, and can speed up the search. In this embodiment, the number of three-dimensional points included in the filtered point cloud is recorded as N, and the ith three-dimensional point is searched to obtain Ni first neighboring points, i is 1, 2.
And S520, calculating based on a PCA algorithm according to the first neighboring point to obtain a normal vector of each three-dimensional point. A plane can be estimated by utilizing Ni first neighbor points of the ith three-dimensional point, and then the normal vector of the ith three-dimensional point is calculated. According to a Principal Component Analysis (PCA) algorithm, subtracting each first adjacent point from the ith three-dimensional point to obtain a matrix, then decomposing the matrix by using Singular Value Decomposition (SVD), and taking the eigenvector with the minimum eigenvalue as the normal vector of the ith three-dimensional point. The PCA algorithm has high efficiency, is beneficial to integrally improving the generation efficiency of the normal vector, and is suitable for large-scale point cloud scenes.
In some embodiments, fig. 6 is a flowchart of a method for calculating a first arc value according to an embodiment of the present application, and as shown in fig. 6, a process of calculating the first arc value of an i (i ═ 1, 2., N) th three-dimensional point by taking the number of three-dimensional points included in the filtered point cloud as N includes the following steps:
s610, searching is carried out on the track according to a neighbor algorithm, and the first m track nodes closest to the ith three-dimensional point are obtained. And constructing a kd-tree for the track of the acquisition object, and quickly searching the front m track nodes closest to the ith three-dimensional point on the track based on a neighbor algorithm, wherein each track node comprises the pose of the acquisition object, and m is the preset number of nodes. Preferably, m is an odd number. In this example, m is 15.
S620, subtracting the positions of the m track nodes and the position of the ith three-dimensional point to obtain m first vectors. Recording the positions of m track nodes as pos _ traj _1, pos _ traj _2, … and pos _ traj _ m respectively, and calculating the position of each track node and the position of the ith three-dimensional point through a formula 1 to obtain m first vectors:
vec _ traj _ j ═ pos _ traj _ j-pt _3d formula 1
Wherein pos _ traj _ j represents the position of the jth track node (x _ j, y _ j, z _ j), j is 1.. another, m, pt _3d represents the position of the ith three-dimensional point, and vec _ traj _ j represents the jth first vector.
S630, performing inverse cosine calculation on the m first vectors and the normal vector of the ith three-dimensional point, and then solving an absolute value to obtain m first arc values. Calculating each first vector and the normal vector of the ith three-dimensional point through a formula 2 to obtain m first arc values:
deg _ dot _ j ═ arccos (dot (normal _ pt _3d, vec _ traj _ j)) | equation 2
Wherein, vec _ traj _ j represents the jth first vector, j is 1,.. the m, normal _ pt _3d represents the ith three-dimensional point normal vector (nx, ny, nz), the normal vector and the first vector are normalized vectors, dot (·) represents a point multiplication function, arccos (·) represents an arccos function, and deg _ dot _ j represents the jth first arc value, and the value range is [0, π ].
Through the m first arc values obtained in the steps S610 to S630, the observation condition of the acquisition object at the first m track nodes closest to the ith three-dimensional point can be accurately reflected, and then the normal vector of the ith three-dimensional point is correspondingly adjusted according to the actual observation condition of the acquisition object to the ith three-dimensional point.
In some embodiments, the three-dimensional points under different observation conditions are adjusted based on the trajectory prior of the acquisition object to obtain the target normal vector of each three-dimensional point, and the target normal vector is obtained without repeated fitting iteration, so that the efficiency is higher. Adjusting the normal vector of the ith three-dimensional point according to the m first arc values, and the method comprises the following steps:
and under the condition that the m first radian values are all within a preset first radian interval, reversing the normal vector of the ith three-dimensional point to obtain the target normal vector of the ith three-dimensional point. The first radian interval is [0, theta ], theta is a predetermined radian, in this embodiment, theta is (5 pi/12), and the corresponding angle value is 75 °. Under the condition that the m first arc values are all distributed in [0, 5 pi/12 ], the ith three-dimensional point can be observed on one side of the m track nodes only by the acquired object, but the normal vector of the ith three-dimensional point points to the inner side, and the normal vector of the ith three-dimensional point needs to be reversed to obtain the target normal vector of the ith three-dimensional point after adjustment.
And under the condition that the m first radian values are all within a preset second radian interval, determining the normal vector of the ith three-dimensional point as the target normal vector of the ith three-dimensional point. The second radian interval is [ theta x 2, pi ]. Under the condition that the m first arc values are all distributed in [5 pi/6, pi ], the ith three-dimensional point can be observed on one side of the m track nodes only by the acquired object, the direction of a normal vector of the ith three-dimensional point is correct, the ith three-dimensional point points point to the outside, and the normal vector of the ith three-dimensional point is directly determined as a target normal vector of the ith three-dimensional point without adjustment.
Under the condition that a plurality of first radian values in the m first radian intervals and other first radian values are in the second radian interval, namely a part of first radian values in the m first radian values are distributed in [0, 5 pi/12 ] and other first radian values are distributed in [5 pi/6, pi ], the situation that the ith three-dimensional point cannot be observed on the m track nodes by the collected object is indicated, and the normal vector of the ith three-dimensional point is adjusted according to the voting result of the normal vector of the ith three-dimensional point and a plurality of second adjacent points of the ith three-dimensional point.
Under the condition that the m first radian values are all in a preset third radian interval, the third radian interval is [ theta, theta x 2], namely the m first radian values are all distributed in [5 pi/12, 5 pi/6 ], which indicates that the ith three-dimensional point can be observed on both sides of the m track nodes by the collected object, and the normal vector of the ith three-dimensional point is adjusted according to the voting result of the normal vector of the ith three-dimensional point and a plurality of second adjacent points of the ith three-dimensional point.
Fig. 7 is a schematic diagram of adjusting normal vectors of three-dimensional points according to voting results according to an embodiment of the present application, and as shown in fig. 7, a real wall is thick, and the collected point cloud is also noisy, but most points should be near the real wall (if not, it indicates that the point cloud is erroneous, but not noisy). And searching according to the neighbor algorithm and the preset second neighbor radius to obtain each second neighbor point. Preferably, the radius of the second neighbourhood is b times the radius of the first neighbourhood, in this embodiment, b is 1.1. Searching in the second neighborhood radius range based on the position of the ith three-dimensional point, and accelerating by using a kd-tree to obtain a plurality of second neighbor points of the ith three-dimensional point.
Preferably, the position of each second neighboring point and the position of the ith three-dimensional point are subtracted by formula 3 to obtain a plurality of second vectors:
vec _ k ═ pt _ neighbors _ k-pt _3d formula 3
Wherein pt _ neighbors _ k represents the position of the kth second neighboring point, k is 1.,. Ki, Ki represents the number of second neighboring points of the ith three-dimensional point, pt _3d represents the position of the ith three-dimensional point, and vec _ k represents the kth second vector. Calculating each second vector and the normal vector of the ith three-dimensional point through a formula 4 to obtain a plurality of second arc values:
deg _ dot _ k ═ arccos (dot (normal _ pt _3d, vec _ k)) formula 4
Wherein vec _ k represents the kth second vector, k is 1.. the Ki, and normal _ pt _3d represents the ith three-dimensional point normal vector (nx, ny, nz), the normal vector and the second vector are normalized vectors, dot (·) represents a point multiplication function, arccos (·) represents an inverse cosine function, and deg _ dot _ k represents the kth second arc value.
And counting the number of the second radian values smaller than a preset radian threshold value to obtain a first vote number, and counting the number of the second radian values larger than or equal to the radian threshold value to obtain a second vote number. In this embodiment, the threshold radian is π/2. The number of the first votes, namely the number of the second radian values smaller than pi/2 in the Ki second radian values, and the number of the second votes, namely the number of the second radian values larger than or equal to pi/2 in the Ki second radian values. And when the voting result is that the first voting number is greater than the second voting number, the normal vector of the ith three-dimensional point points to the inner side, and the normal vector of the ith three-dimensional point is reversed to obtain the target normal vector of the ith three-dimensional point. And when the voting result is that the first voting number is less than or equal to the second voting number, the normal vector of the ith three-dimensional point points to the outer side, and the normal vector of the ith three-dimensional point is determined as the target normal vector of the ith three-dimensional point. The normal vector of the ith three-dimensional point is adjusted to obtain a target normal vector according to the relation between the plurality of second neighbor points of the ith three-dimensional point and the normal vector of the ith three-dimensional point in the space, the target normal vector is not required to be obtained through repeated fitting iteration, and the efficiency is higher.
The embodiment of the application provides a device for generating a normal vector of a three-dimensional point cloud. Fig. 8 is a schematic structural diagram of an apparatus for generating a normal vector of a three-dimensional point cloud according to an embodiment of the present application, and as shown in fig. 8, the apparatus includes a filtering module 810, a normal vector calculation module 820, and a normal vector adjustment module 830: the filtering module 810 is configured to filter the acquired point cloud by voxel filtering and based on a track of an acquisition object to obtain a filtered point cloud, where the acquisition object includes an acquirer and a sensor; the normal vector calculation module 820 is used for calculating normal vectors of all three-dimensional points in the filtered point cloud; the normal vector adjustment module 830 is configured to, for each three-dimensional point in the filtered point cloud: the method comprises the steps of searching a track according to a neighbor algorithm to obtain track nodes, calculating according to the track nodes and normal vectors of three-dimensional points to obtain first radian values corresponding to the three-dimensional points, and adjusting the normal vectors of the three-dimensional points according to the first radian values and a preset radian interval to obtain target normal vectors of the three-dimensional points.
For specific limitation of the device for generating the three-dimensional point cloud normal vector, reference may be made to the above limitation on the method for generating the three-dimensional point cloud normal vector, and details are not repeated here. All or part of the modules in the device for generating the normal vector of the three-dimensional point cloud can be realized by software, hardware and a combination thereof. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
An embodiment of the present application further provides an electronic device, which includes a memory and a processor, where the memory stores a computer program, and the processor is configured to execute the computer program to perform the steps in any of the method embodiments described above.
Optionally, the electronic device may further include a transmission device and an input/output device, wherein the transmission device is connected to the processor, and the input/output device is connected to the processor.
It should be noted that, for specific examples in this embodiment, reference may be made to examples described in the foregoing embodiments and optional implementations, and details of this embodiment are not described herein again.
In addition, in combination with the method for generating the normal vector of the three-dimensional point cloud in the above embodiment, the embodiment of the present application may provide a storage medium to implement. The storage medium having stored thereon a computer program; when being executed by a processor, the computer program realizes the method for generating the normal vector of the three-dimensional point cloud in any one of the above embodiments.
In an embodiment, fig. 9 is a schematic internal structure diagram of an electronic device according to an embodiment of the present application, and as shown in fig. 9, there is provided an electronic device, which may be a server, and its internal structure diagram may be as shown in fig. 9. The electronic device includes a processor, a memory, a network interface, and a database connected by a system bus. Wherein the processor of the electronic device is configured to provide computing and control capabilities. The memory of the electronic equipment comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The database of the electronic device is used for storing data. The network interface of the electronic device is used for connecting and communicating with an external terminal through a network. The computer program is executed by a processor to realize a method for generating a normal vector of a three-dimensional point cloud.
Those skilled in the art will appreciate that the configuration shown in fig. 9 is a block diagram of only a portion of the configuration relevant to the present application, and does not constitute a limitation on the electronic device to which the present application is applied, and a particular electronic device may include more or less components than those shown in the drawings, or combine certain components, or have a different arrangement of components.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by hardware instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium used in the embodiments provided herein may include non-volatile and/or volatile memory, among others. Non-volatile memory can include read-only memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), Rambus Direct RAM (RDRAM), direct bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
It should be understood by those skilled in the art that various features of the above-described embodiments can be combined in any combination, and for the sake of brevity, all possible combinations of features in the above-described embodiments are not described in detail, but rather, all combinations of features which are not inconsistent with each other should be construed as being within the scope of the present disclosure.
The above-mentioned embodiments only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (10)

1. A method for generating a normal vector of a three-dimensional point cloud, the method comprising:
filtering the collected point cloud through voxel filtering and filtering based on the track of a collection object to obtain the filtered point cloud, wherein the collection object comprises a collector and a sensor;
calculating normal vectors of all three-dimensional points in the filtered point cloud;
for each three-dimensional point in the filtered point cloud: searching the track according to a neighbor algorithm to obtain track nodes, calculating according to the track nodes and normal vectors of the three-dimensional points to obtain first arc values corresponding to the three-dimensional points, and adjusting the normal vectors of the three-dimensional points according to the first arc values and a preset arc interval to obtain target normal vectors of the three-dimensional points.
2. The method of claim 1, wherein the acquired point cloud comprises a plurality of acquisition points, and wherein filtering the acquired point cloud through voxel filtering and based on a trajectory of an acquisition object to obtain a filtered point cloud comprises:
obtaining intermediate point clouds by voxel filtering of the collected point clouds;
and filtering the acquisition points of the intermediate point cloud in an enclosing body track space to obtain the filtered point cloud, wherein the enclosing body track space is obtained according to the movement of a minimum enclosing body along the track, and the minimum enclosing body is a cube or a sphere which minimally encloses the acquisition object.
3. The method of claim 2, wherein the passing the acquired point clouds through voxel filtering to obtain intermediate point clouds comprises:
counting the number of the acquisition points in each voxel, wherein the side length of each voxel is obtained according to the consistency of the acquired point cloud;
obtaining a first voxel and a second voxel according to the number of the acquisition points and a preset number threshold, wherein the number of the acquisition points in the first voxel is smaller than the number threshold, and the number of the acquisition points in the second voxel is larger than or equal to the number threshold;
and filtering the acquired point cloud to obtain acquisition points in the first voxel, and replacing the spatial positions of all the acquisition points in the second voxel with the position average value of all the acquisition points in the second voxel to obtain the intermediate point cloud.
4. The method of any of claims 1 to 3, wherein the filtered point cloud comprises a plurality of three-dimensional points, and wherein the calculating normal vectors for each three-dimensional point in the filtered point cloud comprises:
and searching each three-dimensional point according to a neighbor algorithm and a preset first neighbor radius to obtain a first neighbor point, and calculating according to the first neighbor point based on a PCA algorithm to obtain a normal vector of each three-dimensional point.
5. The method of claim 1, wherein the searching according to the nearest neighbor algorithm and the trajectory to obtain a trajectory node, and the calculating according to the trajectory node and a normal vector of the three-dimensional point to obtain a first arc value corresponding to the three-dimensional point comprises:
searching on the track according to a neighbor algorithm to obtain the first m track nodes closest to the three-dimensional point, wherein the track nodes comprise the pose of the acquisition object, and m is the preset number of nodes;
subtracting the positions of the m track nodes and the positions of the three-dimensional points respectively to obtain m first vectors, performing inverse cosine calculation on the m first vectors and the normal vector of the three-dimensional points respectively, and then solving an absolute value to obtain m first radian values.
6. The method of claim 5, wherein the adjusting the normal vector of the three-dimensional point according to the first radian value and a preset radian interval to obtain a target normal vector of the three-dimensional point comprises:
under the condition that the m first radian values are within a preset first radian interval, reversing the normal vector of the three-dimensional point to obtain a target normal vector of the three-dimensional point;
determining the normal vector of the three-dimensional point as a target normal vector of the three-dimensional point under the condition that the m first radian values are within a preset second radian interval;
when a plurality of first arc values in m first arc values are in the first arc interval and other first arc values are in the second arc interval, or when m first arc values are in a preset third arc interval, voting is carried out based on a normal vector of the three-dimensional point and a plurality of second adjacent points of the three-dimensional point, and the normal vector of the three-dimensional point is adjusted according to a voting result to obtain a target normal vector of the three-dimensional point, wherein each second adjacent point is obtained by searching according to an adjacent algorithm and a preset second adjacent area radius.
7. The method of claim 6, wherein voting based on the normal vector of the three-dimensional point and a plurality of second neighboring points of the three-dimensional point, and adjusting the normal vector of the three-dimensional point according to the voting result to obtain the target normal vector of the three-dimensional point comprises:
subtracting the positions of the second adjacent points and the positions of the three-dimensional points respectively to obtain a plurality of second vectors, and performing inverse cosine calculation on the second vectors and normal vectors of the three-dimensional points respectively to obtain a plurality of second arc values;
counting the number of the second radian values smaller than a preset radian threshold value to obtain a first vote number, and counting the number of the second radian values larger than or equal to the radian threshold value to obtain a second vote number;
when the voting result is that the first voting number is larger than the second voting number, reversing the normal vector of the three-dimensional point to obtain a target normal vector of the three-dimensional point;
and determining the normal vector of the three-dimensional point as a target normal vector of the three-dimensional point when the voting result is that the first voting number is less than or equal to the second voting number.
8. An apparatus for generating a normal vector of a three-dimensional point cloud, the apparatus comprising: the device comprises a filtering module, a normal vector calculation module and a normal vector adjustment module;
the filtering module is used for filtering the acquired point cloud through voxel filtering and filtering based on the track of an acquisition object to obtain the filtered point cloud, wherein the acquisition object comprises an acquirer and a sensor;
the normal vector calculation module is used for calculating normal vectors of all three-dimensional points in the filtered point cloud;
the normal vector adjustment module is configured to, for each three-dimensional point in the filtered point cloud: searching the track according to a neighbor algorithm to obtain track nodes, calculating according to the track nodes and normal vectors of the three-dimensional points to obtain first arc values corresponding to the three-dimensional points, and adjusting the normal vectors of the three-dimensional points according to the first arc values and a preset arc interval to obtain target normal vectors of the three-dimensional points.
9. An electronic device comprising a memory, a processor, and a computer program stored on the memory and run on the processor, wherein the processor implements the method of generating a three-dimensional point cloud normal vector of any one of claims 1 to 7 when executing the computer program.
10. A computer storage medium on which a computer program is stored, characterized in that the program, when executed by a processor, implements the method of generating a normal vector for a three-dimensional point cloud according to any one of claims 1 to 7.
CN202011232483.XA 2020-11-06 2020-11-06 Three-dimensional point cloud normal vector generation method and device, electronic equipment and storage medium Active CN112446952B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011232483.XA CN112446952B (en) 2020-11-06 2020-11-06 Three-dimensional point cloud normal vector generation method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011232483.XA CN112446952B (en) 2020-11-06 2020-11-06 Three-dimensional point cloud normal vector generation method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112446952A true CN112446952A (en) 2021-03-05
CN112446952B CN112446952B (en) 2024-01-26

Family

ID=74736228

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011232483.XA Active CN112446952B (en) 2020-11-06 2020-11-06 Three-dimensional point cloud normal vector generation method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112446952B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114897895A (en) * 2022-07-12 2022-08-12 深圳市信润富联数字科技有限公司 Point cloud leveling method and device, electronic equipment and storage medium

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130108143A1 (en) * 2011-11-01 2013-05-02 Hon Hai Precision Industry Co., Ltd. Computing device and method for analyzing profile tolerances of products
CN103544728A (en) * 2013-08-23 2014-01-29 武汉海达数云技术有限公司 Method for filtering out detected surface in live-action map on basis of normal vector
US20140334670A1 (en) * 2012-06-14 2014-11-13 Softkinetic Software Three-Dimensional Object Modelling Fitting & Tracking
CN104200507A (en) * 2014-08-12 2014-12-10 南京理工大学 Estimating method for normal vectors of points of three-dimensional point clouds
KR20140141174A (en) * 2013-05-31 2014-12-10 한국과학기술원 Method and apparatus for recognition and segmentation object for 3d object recognition
US20150199850A1 (en) * 2014-01-16 2015-07-16 Canon Kabushiki Kaisha Information processing apparatus and information processing method
US9251417B1 (en) * 2014-10-15 2016-02-02 Hrl Laboratories, Llc Fast open doorway detection for autonomous robot exploration
US20170046868A1 (en) * 2015-08-14 2017-02-16 Samsung Electronics Co., Ltd. Method and apparatus for constructing three dimensional model of object
CN107127755A (en) * 2017-05-12 2017-09-05 华南理工大学 A kind of real-time acquisition device and robot polishing method for planning track of three-dimensional point cloud
US20180364717A1 (en) * 2017-06-14 2018-12-20 Zoox, Inc. Voxel Based Ground Plane Estimation and Object Segmentation
CN109186608A (en) * 2018-09-27 2019-01-11 大连理工大学 A kind of rarefaction three-dimensional point cloud towards reorientation ground drawing generating method
CN109308737A (en) * 2018-07-11 2019-02-05 重庆邮电大学 A kind of mobile robot V-SLAM method of three stage point cloud registration methods
CN109685080A (en) * 2018-12-27 2019-04-26 中国科学院大学 Multiple dimensioned plane extracting method based on Hough transformation and region growing
US20190130630A1 (en) * 2016-04-12 2019-05-02 Quidient, Llc Quotidian scene reconstruction engine
CN110288706A (en) * 2019-07-02 2019-09-27 哈尔滨工业大学 A kind of approximating method of the irregular point cloud surface of small curvature
CN110363838A (en) * 2019-06-06 2019-10-22 浙江大学 Big field-of-view image three-dimensionalreconstruction optimization method based on more spherical surface camera models
CN110599506A (en) * 2019-10-16 2019-12-20 湖南大学 Point cloud segmentation method for three-dimensional measurement of complex special-shaped curved surface robot
CN110906950A (en) * 2018-09-14 2020-03-24 高德软件有限公司 Calibration method and device for laser coordinate system and inertial navigation coordinate system and storage medium
CN111553409A (en) * 2020-04-27 2020-08-18 哈尔滨工程大学 Point cloud identification method based on voxel shape descriptor
US20200311963A1 (en) * 2019-03-28 2020-10-01 Topcon Corporation Point cloud data processing method and point cloud data processing device

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130108143A1 (en) * 2011-11-01 2013-05-02 Hon Hai Precision Industry Co., Ltd. Computing device and method for analyzing profile tolerances of products
US20140334670A1 (en) * 2012-06-14 2014-11-13 Softkinetic Software Three-Dimensional Object Modelling Fitting & Tracking
KR20140141174A (en) * 2013-05-31 2014-12-10 한국과학기술원 Method and apparatus for recognition and segmentation object for 3d object recognition
CN103544728A (en) * 2013-08-23 2014-01-29 武汉海达数云技术有限公司 Method for filtering out detected surface in live-action map on basis of normal vector
US20150199850A1 (en) * 2014-01-16 2015-07-16 Canon Kabushiki Kaisha Information processing apparatus and information processing method
CN104200507A (en) * 2014-08-12 2014-12-10 南京理工大学 Estimating method for normal vectors of points of three-dimensional point clouds
US9251417B1 (en) * 2014-10-15 2016-02-02 Hrl Laboratories, Llc Fast open doorway detection for autonomous robot exploration
US20170046868A1 (en) * 2015-08-14 2017-02-16 Samsung Electronics Co., Ltd. Method and apparatus for constructing three dimensional model of object
US20190130630A1 (en) * 2016-04-12 2019-05-02 Quidient, Llc Quotidian scene reconstruction engine
CN107127755A (en) * 2017-05-12 2017-09-05 华南理工大学 A kind of real-time acquisition device and robot polishing method for planning track of three-dimensional point cloud
US20180364717A1 (en) * 2017-06-14 2018-12-20 Zoox, Inc. Voxel Based Ground Plane Estimation and Object Segmentation
CN109308737A (en) * 2018-07-11 2019-02-05 重庆邮电大学 A kind of mobile robot V-SLAM method of three stage point cloud registration methods
CN110906950A (en) * 2018-09-14 2020-03-24 高德软件有限公司 Calibration method and device for laser coordinate system and inertial navigation coordinate system and storage medium
CN109186608A (en) * 2018-09-27 2019-01-11 大连理工大学 A kind of rarefaction three-dimensional point cloud towards reorientation ground drawing generating method
CN109685080A (en) * 2018-12-27 2019-04-26 中国科学院大学 Multiple dimensioned plane extracting method based on Hough transformation and region growing
US20200311963A1 (en) * 2019-03-28 2020-10-01 Topcon Corporation Point cloud data processing method and point cloud data processing device
CN110363838A (en) * 2019-06-06 2019-10-22 浙江大学 Big field-of-view image three-dimensionalreconstruction optimization method based on more spherical surface camera models
CN110288706A (en) * 2019-07-02 2019-09-27 哈尔滨工业大学 A kind of approximating method of the irregular point cloud surface of small curvature
CN110599506A (en) * 2019-10-16 2019-12-20 湖南大学 Point cloud segmentation method for three-dimensional measurement of complex special-shaped curved surface robot
CN111553409A (en) * 2020-04-27 2020-08-18 哈尔滨工程大学 Point cloud identification method based on voxel shape descriptor

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
PASTUCHA, E.: "Point cloud classification and track centre determination in point cloud collected by MMS on rail", INGEO 2017-7TH INTERNATIONAL CONFERENCE ON ENGINEERING SURVERYING *
庞正雅;周志峰;王立端;叶珏磊;: "改进的点云数据三维重建算法", 激光与光电子学进展, no. 02 *
张铁;张美辉;邹焱飚;: "基于三维点云的机器人加工轨迹规划", 中国激光, no. 05 *
殷江;林建德;孔令华;邹诚;游通飞;易定容;: "基于激光雷达的移动机器人三维建图与定位", 福建工程学院学报, no. 04 *
涂志强: "激光熔覆与再制造过程中的三维模型重构", 中国优秀硕士学位论文全文数据库 (工程科技Ⅰ辑), no. 07 *
王丽;: "基于kd_tree算法和法向量估计的点云数据精简方法", 宿州学院学报, no. 12 *
陈超;张伟伟;徐军;: "一种基于三维视觉的移动机器人定位与建图方法", 现代电子技术, no. 06 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114897895A (en) * 2022-07-12 2022-08-12 深圳市信润富联数字科技有限公司 Point cloud leveling method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN112446952B (en) 2024-01-26

Similar Documents

Publication Publication Date Title
CN111443359B (en) Positioning method, device and equipment
EP2385496A1 (en) Extraction of 2D surfaces from a 3D point cloud
CN114677418B (en) Registration method based on point cloud feature point extraction
CN112651944B (en) 3C component high-precision six-dimensional pose estimation method and system based on CAD model
CN112356019B (en) Object shape analysis method and device for smart hand grabbing
CN108961385B (en) SLAM composition method and device
CN111415379A (en) Three-dimensional point cloud data registration method based on cuckoo optimization
CN114783068A (en) Gesture recognition method, gesture recognition device, electronic device and storage medium
Jelinek et al. Fast total least squares vectorization
CN111736167B (en) Method and device for obtaining laser point cloud density
CN112446952B (en) Three-dimensional point cloud normal vector generation method and device, electronic equipment and storage medium
CN111765883B (en) Robot Monte Carlo positioning method, equipment and storage medium
EP3072084A1 (en) System and method for constructing a statistical shape model
CN110706288A (en) Target detection method, device, equipment and readable storage medium
CN116486371A (en) Obstacle detection method and obstacle detection device based on laser point cloud
CN115424046A (en) Method, device, equipment and medium for tracking flight path of unmanned aerial vehicle group
Li et al. An SLAM algorithm based on laser radar and vision fusion with loop detection optimization
CN113029166B (en) Positioning method, positioning device, electronic equipment and storage medium
CN113920180B (en) Point cloud registration optimization method based on normal distribution transformation hypothesis verification
CN118052840B (en) Real-time attitude information calculation method, device, equipment and storage medium
CN117351157B (en) Single-view three-dimensional scene pose estimation method, system and equipment
CN113592976B (en) Map data processing method and device, household appliance and readable storage medium
CN117274645A (en) Workpiece pose estimation method and system
CN117726641A (en) Ground segmentation method, device, equipment and storage medium
CN113033270A (en) 3D object local surface description method and device adopting auxiliary axis and storage medium

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
GR01 Patent grant
GR01 Patent grant