CN110111378B - Point cloud registration optimization method and device based on indoor three-dimensional data - Google Patents

Point cloud registration optimization method and device based on indoor three-dimensional data Download PDF

Info

Publication number
CN110111378B
CN110111378B CN201910270158.3A CN201910270158A CN110111378B CN 110111378 B CN110111378 B CN 110111378B CN 201910270158 A CN201910270158 A CN 201910270158A CN 110111378 B CN110111378 B CN 110111378B
Authority
CN
China
Prior art keywords
point
ground
points
determining
parameter matrix
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.)
Active
Application number
CN201910270158.3A
Other languages
Chinese (zh)
Other versions
CN110111378A (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.)
Beike Technology Co Ltd
Original Assignee
Beike 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 Beike Technology Co Ltd filed Critical Beike Technology Co Ltd
Priority to CN201910270158.3A priority Critical patent/CN110111378B/en
Publication of CN110111378A publication Critical patent/CN110111378A/en
Application granted granted Critical
Publication of CN110111378B publication Critical patent/CN110111378B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/35Determination of transform parameters for the alignment of images, i.e. image registration using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/32Indexing scheme for image data processing or generation, in general involving image mosaicing
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Ladders (AREA)

Abstract

The application provides a point cloud registration optimization method and device based on indoor three-dimensional data, and the method comprises the following steps: acquiring point clouds before splicing and an external parameter matrix for pre-splicing, wherein the point clouds are acquired by acquisition equipment; determining points with steps in the point cloud and step heights of the points with steps; based on the external parameter matrix which is spliced in advance, dividing the points with the connection relation into the same connected domain, and dividing the points without the connection relation into different connected domains; taking the ground containing the point with the minimum included angle between the ground normal vector and the Y axis in the connected domain with the maximum number of points as a reference surface; the ground of the point is coincided with the reference surface by adjusting the external parameter matrix of the point in the connected domain; adjusting the external parameter matrix of all the points in other connected domains according to the step heights of the points in the reference plane and other connected domains; and splicing the point clouds by using the adjusted external parameter matrix. The method can improve the accuracy of point cloud splicing.

Description

Point cloud registration optimization method and device based on indoor three-dimensional data
Technical Field
The invention relates to the technical field of computers, in particular to a point cloud registration optimization method and device based on indoor three-dimensional data.
Background
In the building process of the indoor three-dimensional model of the house source, data acquisition needs to be carried out by using acquisition equipment (such as a camera) to obtain a depth panoramic image, the obtained depth panoramic image is a large amount of discrete point data (the camera shooting point is taken as an origin, and the position of each point in a three-dimensional space is discrete), and a large amount of planes, such as a wall surface, a desktop, a ceiling, a ground surface and the like, are determined in the specific environment of indoor shooting.
Due to the problem of the precision of hardware equipment, in the data acquisition process, it is impossible to ensure that the acquired points on the same plane are also accurately positioned in the same plane in the point cloud, and the situations of skew and unevenness of the ground can occur through the primary camera splicing or the three-dimensional modeling realized by some existing splicing methods.
Disclosure of Invention
In view of this, the present application provides a point cloud registration optimization method and apparatus based on indoor three-dimensional data, which can improve the accuracy of point cloud registration.
In order to solve the technical problem, the technical scheme of the application is realized as follows:
in one embodiment, a method for optimizing point cloud registration based on indoor three-dimensional data is provided, and the method comprises the following steps:
acquiring point clouds before splicing and an external parameter matrix for pre-splicing, wherein the point clouds are acquired by acquisition equipment;
determining points with steps in the point cloud and step heights of the points with steps;
determining whether a connection relation exists between any two points in the point cloud or not based on the external reference matrix for pre-splicing; dividing the points with the connection relation into the same connected domain, and dividing the points without the connection relation into different connected domains;
taking the ground containing the point with the minimum included angle between the ground normal vector and the Y axis in the connected domain with the maximum number of points as a reference surface; the ground of the point is coincided with the reference surface by adjusting the external parameter matrix of the point in the connected domain;
adjusting the external parameter matrix of all the points in other connected domains according to the step heights of the points in the reference plane and other connected domains;
splicing the point clouds by using the adjusted external parameter matrix;
the Y axis is vertical to the ground, and the ground of the point with the step is a surface which has the smallest difference with the preset threshold value and the vertical height difference with the central position of the acquisition equipment smaller than the preset threshold value; the ground surface where no step point exists is the surface where the point is the lowest.
In another embodiment, there is provided an apparatus for optimizing point cloud registration based on indoor three-dimensional data, the apparatus including: the device comprises an acquisition unit, a first determination unit, a second determination unit, an adjustment unit and a splicing unit;
the acquisition unit is used for acquiring the point cloud before splicing acquired by the acquisition equipment and the external parameter matrix for pre-splicing;
the first determining unit is used for determining points with steps in the point cloud acquired by the acquiring unit and step heights of the points with steps;
the second determining unit is used for determining whether a connection relation exists between any two points in the point cloud based on the external reference matrix for pre-splicing acquired by the acquiring unit; dividing points with connection relations into the same connected domain; dividing points without connection relation into different connected domains;
the adjusting unit is used for taking the ground containing the point with the smallest included angle between the ground normal vector and the Y axis in the connected domain with the largest number of points determined by the second determining unit as a reference plane; the ground of the point is coincided with the reference surface by adjusting the external parameter matrix of the point in the connected domain; adjusting an external parameter matrix of all points in other connected domains according to the reference surface and the step heights of the points in the other connected domains determined by the first determining unit;
the splicing unit is used for splicing the point cloud by using the external parameter matrix adjusted by the adjusting unit; the Y axis is vertical to the ground, and the ground of the point with the step is a surface which has the smallest difference with the preset threshold value and the vertical height difference with the central position of the acquisition equipment smaller than the preset threshold value; the ground surface where no step point exists is the surface where the point is the lowest.
In another embodiment, a computer-readable storage medium is also provided, on which a computer program is stored, which, when being executed by a processor, carries out the method steps of the method for optimizing a point cloud registration based on indoor three-dimensional data.
According to the technical scheme, the points with steps in the point cloud are searched, and the step height of the points with steps is calculated; and dividing the points with connection into the same connected domain, finding out the point with the smallest included angle between the ground normal vector and the Y axis from the connected domain containing the largest number of points, taking the ground of the point as a reference, adjusting the external parameter matrix of other points in the point cloud, splicing the point cloud again by using the adjusted external parameter matrix, and realizing the point cloud registration optimization of the indoor three-dimensional data. According to the method, the accuracy of splicing can be improved by adjusting the external parameter matrix. Further overcoming the problem of the ground deflection and unevenness in the three-dimensional modeling.
Drawings
The following drawings are only schematic illustrations and explanations of the present invention, and do not limit the scope of the present invention:
fig. 1 is a schematic view of a point cloud registration optimization process based on indoor three-dimensional data in an embodiment of the present application;
FIG. 2 is a schematic view of a step where there is a point correspondence of step heights;
FIG. 3 is a schematic diagram illustrating the determination of whether a connection exists between point A and point B;
FIGS. 4a and 4b are schematic diagrams of ground rotation and translation in an embodiment of the present invention;
FIG. 5 is a schematic diagram of the three-dimensional effect of the acquisition device and the stitching;
FIG. 6 is a schematic diagram illustrating the adjusted three-dimensional effect of FIG. 5 using the adjustment method provided herein;
fig. 7 is a schematic structural diagram of an apparatus applied to the above-described technology in the embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In the acquisition stage of indoor three-dimensional data, special hardware equipment is used for acquiring data of each shooting point in a room, and the shooting points are pre-spliced on acquisition equipment.
Therefore, the point cloud before splicing and the external parameter matrix of each point can be obtained.
In the embodiment of the application, the external parameter matrix is adjusted on the basis of pre-spliced point clouds, so that the spliced point cloud plane is adjusted.
For a plurality of groups of point clouds to be spliced, for example, a plurality of groups of point clouds shot in a certain direction are taken as a group of point clouds.
The following describes in detail a point cloud registration optimization process based on indoor three-dimensional data in the embodiments of the present application with reference to the accompanying drawings.
The device for implementing point cloud registration optimization based on indoor three-dimensional data in the embodiment of the present application may be a device with computing processing capability, such as a PC, and may be referred to as an optimization device for short for convenience of description.
Referring to fig. 1, fig. 1 is a schematic view of a point cloud registration optimization process based on indoor three-dimensional data in an embodiment of the present application. The method comprises the following specific steps:
step 101, acquiring a point cloud before splicing acquired by acquisition equipment and an external parameter matrix for pre-splicing by optimization equipment.
The specific method for obtaining the point cloud before the mosaicing and the external parameter matrix for the mosaicing is not limited in the present application, and the point cloud before the mosaicing and the external parameter matrix for the mosaicing may be obtained from an acquisition device through a wired or wireless network, or may be obtained through a hard disk copy.
Step 102, determining points with steps in the point cloud and step heights of the points with steps.
The specific process of determining the points with steps in the point cloud in the step is as follows:
firstly, determining a plane with the lowest point height for each point in the point cloud;
determining the plane with the lowest point height comprises the following steps:
taking a plane with an included angle between a normal vector and a Y axis in a plane corresponding to the point smaller than a preset angle threshold value as a first plane set;
here, the plane corresponding to one point refers to all planes passing through the point.
And determining the plane with the largest vertical distance from the center of the acquisition equipment in the first plane set as the plane with the lowest height of the point.
When point clouds before splicing are obtained, position information of positions where the point clouds are collected by the collection equipment, namely coordinate information of a central point of the collection equipment is obtained.
Secondly, if the vertical height between the plane with the lowest height and the central position of the acquisition equipment is greater than a preset threshold value, determining the point as a point with steps;
thirdly, determining that the vertical height difference between the point with the step and the central position of the acquisition equipment is smaller than a preset threshold value, and the surface with the minimum distance difference with the preset threshold value is used as the ground of the point;
for a point where no step exists, the plane with the lowest height of the point serves as the ground.
And fourthly, calculating the vertical height difference between the ground of the point and the plane with the lowest height as the step height of the point.
Referring to fig. 2, fig. 2 is a schematic diagram of a point corresponding to a step height. In fig. 2, taking the example that the height difference between the lowest surface of a point and the center position of the collecting device is greater than a preset threshold (for example, 10cm in fig. 2, the preset threshold may be set according to the height between the collecting device and the ground in a specific application), it is described that a step height exists at the point, then the ground of the point is found, and the height difference between the ground and the lowest surface is taken as the step height of the point.
103, determining whether a connection relation exists between any two points in the point cloud or not based on the external parameter matrix for pre-splicing; dividing points with connection relations into the same connected domain; and dividing the points without connection relation into different connected domains.
In this step, determining whether a connection relationship exists between any two points in the point cloud based on the pre-stitched external reference matrix includes:
at any two points in the point cloud: a first point (point a) and a second point (point B) are taken as examples;
transforming the point A through an external parameter matrix of the point A, and transforming the point B through an external parameter matrix of the point B;
determining whether the transformed point A and the transformed point B are intersected, and if so, determining that a connection relation exists between the point A and the point B; otherwise, determining that no connection relation exists between the point A and the point B.
Referring to fig. 3, fig. 3 is a schematic diagram illustrating a determination of whether a connection relationship exists between a point a and a point B. Assume that the external reference matrix at point a in fig. 3 includes the following contents: rotated 90 deg. clockwise and translated 2 units to the left. The external parameter matrix of the point B comprises the following contents: rotated 180 deg. counterclockwise and translated 1 unit to the right.
The point a transformed by the external reference matrix of the point a and the point B transformed by the external reference matrix of the point B are connected as shown in fig. 3, that is, the two points are intersected.
The division of points into corresponding connected domains may also be achieved by:
and (3) establishing an undirected graph for the points with the connection relationship, wherein if the points 1 and 2 have the connection relationship, the points 2 and 3 have the connection relationship, the points 4 and 5 have the connection relationship, and the points 5 and 6 have the connection relationship, the points 1, 2 and 3 establish an undirected graph, and the points 4, 5 and 6 establish an undirected graph.
Each undirected graph corresponds to one connected domain, all points in the same undirected graph are divided into one connected domain, and points in different undirected graphs are divided into different connected domains.
Step 104, taking the ground containing the point with the minimum included angle between the ground normal vector and the Y axis in the connected domain with the maximum number of points as a reference plane; the ground of other points is made to coincide with the reference plane by adjusting the external reference matrix of other points in the connected domain.
The definition of the ground of the point in the embodiment of the application is as follows:
the ground surface of the point with the step is a surface with the vertical height difference with the central position of the acquisition equipment smaller than a preset threshold value and the minimum distance difference with the preset threshold value; the ground surface where no step point exists is the surface where the point is the lowest.
In the embodiment of the application, the Y axis is vertical to the ground; the X0Z plane is parallel to the ground, here X, Y, Z is the three-dimensional coordinates, here the ground can be the ground corresponding to the acquisition device.
In the embodiment of the present application, a plurality of connected domains are established according to the processing procedure, and when the processing is specifically performed in the embodiment of the present application, the connected domain containing the most point data is used as a reference connected domain;
if the number of the connected domains containing the largest number of points is larger than 1, randomly selecting one connected domain as a reference connected domain;
and taking the ground of the point with the smallest included angle between the ground normal vector and the Y axis in the reference connected domain as a reference plane.
In this step, the adjusting the external parameter matrix of other points in the connected domain to make the ground of other points coincide with the reference plane includes:
recording the point with the smallest included angle between the ground normal vector and the Y axis as a third point, and recording any point except the third point in the connected domain as a fourth point;
adjusting the external parameter matrix of the fourth point to enable the ground of the fourth point to coincide with the ground of the third point, specifically:
determining a minimum included angle between the ground of the fourth point and the ground of the third point, and updating the rotation angle in the external parameter matrix of the fourth point by using the degree of the minimum included angle;
rotating the ground of a fourth point by a minimum angle to be parallel to the ground of a third point, and during specific implementation, if the ground of the fourth point rotates clockwise in a positive direction of any axis to be parallel to the ground of the third point, adding the degree of the minimum included angle to the original rotation angle when updating the rotation angle in the external parameter matrix; if the ground of the fourth point is parallel to the ground of the third point by clockwise rotation in the positive direction of any axis, the degree of the minimum included angle is reduced on the original rotation angle.
And determining the height difference between the ground of the fourth point and the ground of the third point after rotating by the updated rotation angle, and updating the translation amount in the external reference matrix of the fourth point by using the height difference.
If the ground of the fourth point translates towards the positive direction of the Y axis and is coincident with the ground of the third point, the height difference is a negative value; if the ground of the fourth point translates negatively in the Y-axis to coincide with the ground of the third point, the height difference is positive.
Based on the above description, the adjustment of the external parameter matrix including each point in the connected domain having the largest number of points is realized.
And 105, adjusting the external reference matrix of all the points in the other connected domains according to the step heights of the reference surface and the points in the other connected domains.
Taking the first communication domain as a reference communication domain and the ground of the third point in the first communication domain as a reference plane, the method adjusts the external reference matrix of all the points in the second communication domain, specifically as follows:
the second connected domain is any connected domain except the connected domain containing the largest number of points.
Taking the adjustment of the external reference matrixes of a fifth point and a sixth point in the second connected domain as an example, wherein the fifth point and the sixth point are any two points in the second connected domain; the fifth point has determined the step height, the sixth point is not determined to be a step point, there is no step height:
the adjustment of the extrinsic parameter matrix for the fifth point is:
determining a minimum included angle between the ground of the fifth point and the ground of the third point, and updating the rotation angle in the external parameter matrix of the fifth point by using the minimum included angle;
rotating the ground of a fifth point by a minimum angle to be parallel to the ground of a third point, and during specific implementation, if the ground of the fifth point rotates clockwise in a positive direction of any axis to be parallel to the ground of the third point, adding the degree of the minimum included angle to the original rotation angle when updating the rotation angle in the external parameter matrix; and if the ground of the fifth point is parallel to the ground of the third point by clockwise rotation in the positive direction of any axis, reducing the degree of the minimum included angle on the original rotation angle.
Determining a height difference between the ground of the fifth point and the ground of the third point rotated using the updated rotation angle, and updating the translation amount of the external reference matrix of the fifth point using the determined height difference and the step height of the fifth point.
In a specific implementation, if the ground of the fifth point rotated by the updated rotation angle is translated in the positive Y-axis direction and coincides with the ground of the third point, the height difference between the ground of the fifth point rotated by the updated rotation angle and the ground of the third point is a negative value, and when the ground of the fifth point and the ground of the third point are translated in the negative Y-axis direction and coincide, the height difference between the ground of the fifth point and the ground of the third point is a positive value.
Adjustment of the external parameter matrix for the sixth point:
determining a minimum included angle between the ground of the sixth point and the ground of the third point, and updating the rotation angle in the external parameter matrix of the sixth point by using the minimum included angle;
rotating the ground of a sixth point by a minimum angle to be parallel to the ground of a third point, and during specific implementation, if the ground of the sixth point rotates clockwise in a positive direction of any axis to be parallel to the ground of the third point, adding the degree of the minimum included angle to the original rotation angle when updating the rotation angle in the external parameter matrix; if the ground of the sixth point is parallel to the ground of the third point by the positive anticlockwise rotation of any axis, the degree of the minimum included angle is reduced on the original rotation angle.
If the sixth point does not have a step height, the step height of the point having a step in the same connected domain as the sixth point is used as the step height of the sixth point, and the translation amount of the external reference matrix of the sixth point is updated using the determined height difference and the step height of the sixth point.
In a specific implementation, if the ground of the sixth point rotated by the updated rotation angle is translated in the positive Y-axis direction to coincide with the ground of the third point, the height difference between the ground of the sixth point rotated by the updated rotation angle and the ground of the third point is a negative value, and when the ground of the sixth point and the ground of the third point are translated in the negative Y-axis direction to coincide with each other, the height difference between the ground of the sixth point and the ground of the third point is a positive value.
And step 106, splicing the point cloud by using the adjusted external parameter matrix.
According to the embodiment of the application, the point cloud before pre-splicing is spliced through the adjusted external reference matrix, the point cloud plane adjustment of the pre-spliced indoor three-dimensional point cloud data is realized, and then the point cloud registration optimization of the indoor three-dimensional data is realized.
The method and the device for realizing the point cloud splicing adjustment have the advantages that the spliced point cloud is adjusted by adjusting the external parameter matrix used for splicing, the point cloud is spliced and fused by using the adjusted external parameter matrix, the process of model reconstruction is completed when the triangular mesh is generated, and the method and the device can be realized according to the existing implementation mode.
The following describes in detail the process of implementing the point cloud plane adjustment with reference to specific examples:
assume that there are five points for a set of point clouds: point a, point B, point C, point D and point E, respectively.
Determining whether a step height exists for each point, and assuming that the step height exists at the point C and is a, and the step heights do not exist at other points, the lowest surfaces of the points A, B, D and E are the ground surfaces of the points A, B, D and E; the ground of the point C is a surface with the height difference smaller than a preset threshold value and the distance difference with the preset threshold value is the smallest.
And determining whether any two points in the five points exist connection, and if the connection exists among the point A, the point B and the point E, dividing the points into a connected domain (a first connected domain), the connection exists between the point C and the point D, dividing the points into a connected domain (a second connected domain), and the connection does not exist between the point in the first connected domain and the point in the second connected domain.
Since the point data in the first communication domain is the most, assuming that the included angle between the ground normal vector of the point a in the first communication domain and the y-axis is the smallest, the adjustment of the extrinsic matrix of the point in each communication domain is performed by using the ground of the point a as a reference plane:
calculating the rotation angle difference of B cm and c degrees of the ground height difference of the point A and the point B; the ground height difference between the point A and the point E is tcm, and the rotation angle difference is m degrees;
the ground height difference between the point C and the point A is k cm, and the angle difference between the point C and the point A is d degrees; the ground height difference between point D and point A is n cm, and the rotation angle is z °.
For the external reference matrix (translation is in the y-axis direction);
the original external reference matrix of each point is:
point A: translating for e cm and rotating for f degrees;
point B: translating by g cm and rotating by h degrees;
point C: translating by i cm and rotating by j degrees;
point D: translating by s cm and rotating by a degrees;
point E: p cm is translated and o is rotated.
The external parameter matrix after each point adjustment is as follows:
point A: by translating e cm and rotating f °
Point B: translating by g + b cm and rotating by (h + c) °
Point C: translating by g + k + a cm and rotating by (j + d) °
Point D: translating by s + k + n cm and rotating by (a + z) °;
point E: translate p + t cm, rotate (o + m) °.
Here, if the point D and the point C belong to the same connected component although there is no step height, the step height of the point D is determined to be the same as the point C.
Fig. 4a and 4b are schematic diagrams of ground rotation and translation in an embodiment of the invention. Wherein, fig. 4B is a schematic view of an included angle between the ground of point B and the ground of point a; FIG. 4a is a schematic view of the height difference between the ground at point B and the ground at point A.
Firstly, as shown in fig. 4a, the ground of point B is ground B, the ground of point a is ground a, ground B rotates to be parallel to ground a, the minimum included angle required to rotate is assumed to be c °, and when c ° is increased by clockwise rotation with the X-axis direction as the axis shown in fig. 4a, the increased angle value is a positive value; if the direction is opposite, a negative value is determined.
Referring to fig. 4B again, taking the ground a and the rotated ground B in fig. 4a as an example, if the rotated ground B needs to translate along the positive direction of the Y axis to coincide with the height difference (absolute value of B) of the two grounds, the value of B added by the external reference matrix is a negative value; if the translation is needed to be carried out along the negative direction of the Y axis, the value of the translation increase in the external reference matrix is a positive value.
In the embodiment of the application, the points with steps in the point cloud are searched, and the step height of the points with steps is calculated; and dividing the points with connection into the same connected domain, finding out the point with the smallest included angle between the ground normal vector and the Y axis from the connected domain containing the largest number of points, taking the ground of the point as a reference, adjusting the external parameter matrix of other points in the point cloud, and splicing the point cloud again by using the adjusted external parameter matrix. According to the method, the accuracy of splicing can be improved by adjusting the external parameter matrix. Further overcoming the problem of the ground deflection and unevenness in the three-dimensional modeling.
Referring to fig. 5, fig. 5 is a schematic diagram of a three-dimensional effect of the acquisition device and the stitching.
As can be seen from fig. 5, the part close to the ground is inclined, uneven and bad in visual effect.
Referring to fig. 6, fig. 6 is a schematic diagram of the three-dimensional effect of fig. 5 adjusted by using the adjusting method provided by the present application.
In comparison with fig. 5, fig. 6 shows that the edge portion of the entire three-dimensional effect map is relatively flat and also relatively aligned.
Based on the same inventive concept, the embodiment of the application also provides a point cloud registration optimization device based on indoor three-dimensional data. Referring to fig. 7, fig. 7 is a schematic structural diagram of an apparatus applied to the above technology in the embodiment of the present application. The device includes: an acquisition unit 701, a first determination unit 702, a second determination unit 703, an adjustment unit 704 and a splicing unit 705;
an obtaining unit 701, configured to obtain a point cloud before stitching and an external reference matrix for pre-stitching, where the point cloud is collected by a collection device;
a first determining unit 702 configured to determine a point where a step exists in the point cloud acquired by the acquiring unit 701 and a step height of the point where the step exists;
a second determining unit 703, configured to determine whether a connection relationship exists between any two points in the point cloud based on the pre-stitched external reference matrix acquired by the acquiring unit 701; dividing points with connection relations into the same connected domain; dividing points without connection relation into different connected domains;
an adjusting unit 704 configured to use, as a reference plane, the ground including the point with the smallest included angle between the ground normal vector and the Y-axis in the connected domain with the largest number of points determined by the second determining unit 703; the ground of the point is coincided with the reference surface by adjusting the external parameter matrix of the point in the connected domain; adjusting the external parameter matrix of all the points in the other connected domains according to the reference plane and the step heights of the points in the other connected domains determined by the first determining unit 702;
a splicing unit 705, configured to splice the point cloud using the external parameter matrix adjusted by the adjusting unit 704; the Y axis is vertical to the ground, and the ground with the stepped point is a surface which has the vertical height difference with the center of the acquisition equipment smaller than a preset threshold value and has the smallest distance difference with the preset threshold value; the ground surface where no step point exists is the surface where the point is the lowest.
Preferably, the first and second electrodes are formed of a metal,
a first determining unit 702, configured to determine a point in the point cloud where a step exists and a step height of the point where the step exists, and determine, for each point in the point cloud, a plane with a lowest point height; if the vertical height between the surface with the lowest height and the central position of the acquisition equipment is greater than a preset threshold value, determining that the point is a point with steps; the step height at a point where a step exists is calculated as the difference in vertical height between the ground surface and the surface having the lowest height.
Preferably, the first and second electrodes are formed of a metal,
a first determining unit 702, configured to determine, when the point is the lowest in height, a plane in which an included angle between a normal vector and a Y axis in a plane corresponding to the point is smaller than a preset angle threshold is used as a first plane set; and determining the plane with the largest vertical distance from the center of the acquisition equipment in the first plane set as the plane with the lowest height of the point.
Preferably, the first and second electrodes are formed of a metal,
the second determining unit 703 is specifically configured to, when determining whether a connection relationship exists between any two points in the point cloud based on the pre-stitched external reference matrix, transform the first point through the external reference matrix of the first point, and transform the second point through the external reference matrix of the second point; determining whether the transformed first point and the transformed second point intersect, and if so, determining that a connection relation exists between the first point and the second point; otherwise, determining that no connection relation exists between the first point and the second point; the first point and the second point are any two points in the point cloud.
Preferably, the first and second electrodes are formed of a metal,
an adjusting unit 704, configured to, when the ground of a point in the connected domain is made to coincide with the reference plane by adjusting an external reference matrix of the point, designate a point where an included angle between the ground normal vector and the Y axis is the smallest as a third point, and designate any point other than the third point in the connected domain as a fourth point; determining a minimum included angle between the ground of the fourth point and the ground of the third point, and updating the rotation angle in the external parameter matrix of the fourth point by using the degree of the minimum included angle; and determining the height difference between the ground of the fourth point and the ground of the third point after rotating by the updated rotation angle, and updating the translation amount in the external reference matrix of the fourth point by using the height difference.
Preferably, the first and second electrodes are formed of a metal,
an adjusting unit 704, configured to, when adjusting the extrinsic parameter matrix of all the points in the other connected domains according to the step heights of the points in the reference plane and the other connected domains, mark any point in any connected domain except the connected domain with the largest number of points as a fifth point; determining a minimum included angle between the ground of the fifth point and the ground of the third point, and updating the rotation angle in the external parameter matrix of the fifth point by using the minimum included angle; and determining the height difference between the ground of the fifth point and the ground of the third point after rotating by using the updated rotation angle, and if the fifth point has a step height, updating the translation amount of the external parameter matrix of the fifth point by using the determined height difference and the step height of the fifth point.
Preferably, the first and second electrodes are formed of a metal,
and an adjusting unit 704, further configured to, if it is determined that the fifth point does not have the step height, use the step height of the point having the step in the same connected domain as the fifth point as the step height of the fifth point, and update the translation amount of the external reference matrix of the fifth point using the determined height difference and the step height of the fifth point.
The units of the above embodiments may be integrated into one body, or may be separately deployed; may be combined into one unit or further divided into a plurality of sub-units.
Furthermore, the present application also provides a computer-readable storage medium, on which a computer program is stored, which program, when being executed by a processor, carries out the method steps of the method for point cloud registration optimization based on indoor three-dimensional data as described above.
In summary, the method searches points with steps in the point cloud, and calculates the step height with the step points; and dividing the points with connection into the same connected domain, finding out the point with the smallest included angle between the ground normal vector and the Y axis from the connected domain containing the largest number of points, taking the ground of the point as a reference, adjusting the external parameter matrix of other points in the point cloud, splicing the point cloud again by using the adjusted external parameter matrix, and realizing the point cloud registration optimization of the indoor three-dimensional data. According to the method, the accuracy of splicing can be improved by adjusting the external parameter matrix. Further overcoming the problem of the ground deflection and unevenness in the three-dimensional modeling.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (9)

1. A point cloud registration optimization method based on indoor three-dimensional data is characterized by comprising the following steps:
acquiring point clouds before splicing and an external parameter matrix for pre-splicing, wherein the point clouds are acquired by acquisition equipment;
determining points with steps in the point cloud and step heights of the points with steps;
determining whether a connection relation exists between any two points in the point cloud or not based on the external reference matrix for pre-splicing; dividing the points with the connection relation into the same connected domain, and dividing the points without the connection relation into different connected domains;
taking the ground containing the point with the minimum included angle between the ground normal vector and the Y axis in the connected domain with the maximum number of points as a reference surface; the ground of the point is coincided with the reference surface by adjusting the external parameter matrix of the point in the connected domain;
adjusting the external parameter matrix of all the points in other connected domains according to the step heights of the points in the reference plane and other connected domains;
splicing the point clouds by using the adjusted external parameter matrix;
the Y axis is vertical to the ground, and the ground of the point with the step is a surface which has the smallest difference with the preset threshold value and the vertical height difference with the central position of the acquisition equipment smaller than the preset threshold value; the ground surface where no step point exists is the surface where the point is the lowest.
2. The method of claim 1, wherein the determining the points in the point cloud where steps exist and the step heights of the points where steps exist comprises:
for each point in the point cloud, determining a plane with the lowest point height;
if the vertical height between the surface with the lowest height and the central position of the acquisition equipment is greater than the preset threshold value, determining that the point is a point with steps;
and calculating the vertical height difference value of the ground surface and the surface with the lowest height of the point with the step as the step height of the point.
3. The method of claim 2, wherein determining the lowest point of the point comprises:
taking a plane with an included angle between a normal vector and a Y axis in a plane corresponding to the point smaller than a preset angle threshold value as a first plane set;
and determining the plane with the largest vertical distance from the center of the acquisition equipment in the first plane set as the plane with the lowest height of the point.
4. The method of claim 1, wherein the determining whether a connection relationship exists between any two points in the point cloud based on the external reference matrix for pre-stitching comprises:
transforming the first point through the external parameter matrix of the first point, and transforming the second point through the external parameter matrix of the second point;
determining whether the transformed first point and the transformed second point intersect, and if so, determining that a connection relation exists between the first point and the second point; otherwise, determining that no connection relation exists between the first point and the second point;
the first point and the second point are any two points in the point cloud; the first point is a first shooting point, and the second point is a second shooting point.
5. The method according to any one of claims 1-4, wherein said making the ground of a point in the connected domain coincide with the reference plane by adjusting an external reference matrix of the point comprises:
recording the point with the smallest included angle between the ground normal vector and the Y axis as a third point, and recording any point except the third point in the connected domain as a fourth point;
determining a minimum included angle between the ground of the fourth point and the ground of the third point, and updating the rotation angle in the external parameter matrix of the fourth point by using the degree of the minimum included angle;
and determining the height difference between the ground of the fourth point and the ground of the third point after rotating by the updated rotation angle, and updating the translation amount in the external reference matrix of the fourth point by using the height difference.
6. The method of claim 5, wherein adjusting the extrinsic matrix for all points in the other connected components based on the step heights of the points in the reference plane and the other connected components comprises:
any point in any connected domain except the connected domain with the largest number of points is recorded as a fifth point;
determining a minimum included angle between the ground of the fifth point and the ground of the third point, and updating the rotation angle in the external parameter matrix of the fifth point by using the minimum included angle;
and determining the height difference between the ground of the fifth point and the ground of the third point after rotating by using the updated rotation angle, and if the fifth point has a step height, updating the translation amount of the external parameter matrix of the fifth point by using the determined height difference and the step height of the fifth point.
7. The method of claim 6, further comprising:
if the fifth point does not have the step height, the step height of the point having the step in the same connected domain as the fifth point is used as the step height of the fifth point, and the translation amount of the external reference matrix of the fifth point is updated using the determined height difference and the step height of the fifth point.
8. A point cloud registration optimization device based on indoor three-dimensional data is characterized by comprising: the device comprises an acquisition unit, a first determination unit, a second determination unit, an adjustment unit and a splicing unit;
the acquisition unit is used for acquiring the point cloud before splicing acquired by the acquisition equipment and the external parameter matrix for pre-splicing;
the first determining unit is used for determining points with steps in the point cloud acquired by the acquiring unit and step heights of the points with steps;
the second determining unit is used for determining whether a connection relation exists between any two points in the point cloud based on the external reference matrix for pre-splicing acquired by the acquiring unit; dividing points with connection relations into the same connected domain; dividing points without connection relation into different connected domains;
the adjusting unit is used for taking the ground containing the point with the smallest included angle between the ground normal vector and the Y axis in the connected domain with the largest number of points determined by the second determining unit as a reference plane; the ground of the point is coincided with the reference surface by adjusting the external parameter matrix of the point in the connected domain; adjusting an external parameter matrix of all points in other connected domains according to the reference surface and the step heights of the points in the other connected domains determined by the first determining unit;
the splicing unit is used for splicing the point cloud by using the external parameter matrix adjusted by the adjusting unit; the Y axis is vertical to the ground, and the ground of the point with the step is a surface which has the smallest difference with the preset threshold value and the vertical height difference with the central position of the acquisition equipment smaller than the preset threshold value; the ground surface where no step point exists is the surface where the point is the lowest.
9. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method steps of any one of claims 1 to 7.
CN201910270158.3A 2019-04-04 2019-04-04 Point cloud registration optimization method and device based on indoor three-dimensional data Active CN110111378B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910270158.3A CN110111378B (en) 2019-04-04 2019-04-04 Point cloud registration optimization method and device based on indoor three-dimensional data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910270158.3A CN110111378B (en) 2019-04-04 2019-04-04 Point cloud registration optimization method and device based on indoor three-dimensional data

Publications (2)

Publication Number Publication Date
CN110111378A CN110111378A (en) 2019-08-09
CN110111378B true CN110111378B (en) 2021-07-02

Family

ID=67485152

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910270158.3A Active CN110111378B (en) 2019-04-04 2019-04-04 Point cloud registration optimization method and device based on indoor three-dimensional data

Country Status (1)

Country Link
CN (1) CN110111378B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866449A (en) * 2019-10-21 2020-03-06 北京京东尚科信息技术有限公司 Method and device for identifying target object in road
CN111325779B (en) * 2020-02-07 2020-12-11 贝壳找房(北京)科技有限公司 Point cloud registration method and device, electronic equipment and storage medium
CN111310818B (en) * 2020-02-10 2021-05-18 贝壳找房(北京)科技有限公司 Feature descriptor determining method and device and computer-readable storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103322911A (en) * 2013-05-27 2013-09-25 吴晓军 Characteristic building elevation surveying and mapping method based on images
JP6091560B2 (en) * 2014-07-25 2017-03-08 株式会社東芝 Image analysis method
CN109035422A (en) * 2018-06-06 2018-12-18 链家网(北京)科技有限公司 In a kind of extraction chamber in threedimensional model plane domain method and system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9118905B2 (en) * 2011-12-30 2015-08-25 Google Inc. Multiplane panoramas of long scenes
CN108981604B (en) * 2018-07-11 2020-06-09 天津工业大学 Line laser-based three-dimensional full-view measurement method for precision part

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103322911A (en) * 2013-05-27 2013-09-25 吴晓军 Characteristic building elevation surveying and mapping method based on images
JP6091560B2 (en) * 2014-07-25 2017-03-08 株式会社東芝 Image analysis method
CN109035422A (en) * 2018-06-06 2018-12-18 链家网(北京)科技有限公司 In a kind of extraction chamber in threedimensional model plane domain method and system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Error Metric for Indoor 3D Point Cloud Registration;Lachhani, K, Duan, J, Baghsiahi;《Irish Machine Vision & Image Processing Conference》;20141215;第1-6页 *
一种城市环境三维点云配准的;赵凯,徐友春,王任栋;《光电工程》;20181215;第1-8页 *

Also Published As

Publication number Publication date
CN110111378A (en) 2019-08-09

Similar Documents

Publication Publication Date Title
CN110111378B (en) Point cloud registration optimization method and device based on indoor three-dimensional data
CN112771573B (en) Depth estimation method and device based on speckle images and face recognition system
CN109493375B (en) Data matching and merging method and device for three-dimensional point cloud and readable medium
US10706567B2 (en) Data processing method, apparatus, system and storage media
US11042973B2 (en) Method and device for three-dimensional reconstruction
US9311756B2 (en) Image group processing and visualization
TWI748409B (en) Data processing method, processor, electronic device and computer readable medium
CN113393577B (en) Oblique photography terrain reconstruction method
CN109613974B (en) AR home experience method in large scene
JPWO2020188799A1 (en) Camera calibration device, camera calibration method, and program
CN113793387A (en) Calibration method, device and terminal of monocular speckle structured light system
CN111400830A (en) Machining and calibrating method and device for three-dimensional blank workpiece
Jelinek et al. Fast total least squares vectorization
CN114202632A (en) Grid linear structure recovery method and device, electronic equipment and storage medium
CN115546371A (en) Point cloud optimization method and system, electronic device and storage medium
WO2023010565A1 (en) Method and apparatus for calibrating monocular speckle structured light system, and terminal
CN114612631A (en) High-precision loopless DSM extraction method based on InSAR technology
Chen et al. Multi-stage matching approach for mobile platform visual imagery
CN110378948B (en) 3D model reconstruction method and device and electronic equipment
CN116468632A (en) Grid denoising method and device based on self-adaptive feature preservation
Cai et al. Two-view curve reconstruction based on the snake model
Han et al. 3D reconstruction of dense model based on the sparse frames using RGBD camera
CN117557623B (en) Accurate and rapid alignment method for frozen electron microscope image sequence
Xiao et al. Image completion using belief propagation based on planar priorities
CN112884901B (en) Three-dimensional point cloud data normal global consistency method for semi-closed space scene

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