Indoor structure segmentation method based on laser measurement point cloud

Information

  • Patent Grant
  • 12175596
  • Patent Number
    12,175,596
  • Date Filed
    Tuesday, March 7, 2023
    a year ago
  • Date Issued
    Tuesday, December 24, 2024
    8 days ago
  • Inventors
    • Su; Fei
    • Liu; Yaohui
    • Du; Yingkun
    • Bi; Jingxue
    • Zheng; Guoqiang
    • Yu; Mingyang
  • Original Assignees
  • Examiners
    • Wu; Sing-Wai
    • Vu; Khoa
    Agents
    • CM Law PLLC
    • Klinger; Robert C.
Abstract
The present disclosure discloses an indoor structure segmentation method based on a laser measurement point cloud. The method includes the following steps: inputting an indoor three-dimensional point cloud, and performing supervoxel segmentation of the point cloud using a toward better boundary preserved supervoxel (TBBPS) segmentation method based on a given initial resolution r to extract a plane supervoxel unit; extracting surface point units in surface supervoxels by means of curvatures and normal vector changes; fitting an indoor plane model based on plane supervoxels; fitting an indoor surface model using a cylindrical simplex based on surface points; and based on an α-expansion optimization algorithm, allocating the extracted supervoxel units and surface point units to an optimal model, so as to realize unit classification and segmentation.
Description
TECHNICAL FIELD

The present disclosure belongs to the technical field of cartography, and in particular, to an indoor structure segmentation method based on a laser measurement point cloud.


BACKGROUND

With the rapid development of economic activities, the number of buildings has increased substantially, and human indoor activities have increased significantly. In addition, the internal structure of the building is also gradually enlarged and complicated.


Therefore, the understanding and cognitive needs of indoor environment is also increasing, and understanding and recognition of indoor scenes has aroused extensive attention. Indoor structure extraction and segmentation, as the basic part and main component of indoor scene understanding, is of great significance in indoor environment cognition and understanding.


It is time-consuming and laborious to manually segment and recognize indoor structures by traditional measuring means. With the development of laser sensor technology, the segmentation and recognition of indoor structures based on laser point cloud has the advantages of high speed and high precision, and has become a research hotspot of indoor scene understanding and recognition. However, there are still some problems in indoor structure segmentation based on indoor three-dimensional point cloud, such as large area missing of wall information caused by mutual occlusion of indoor facilities, noise and measurement errors caused by strong reflective surfaces such as indoor windows and glass, and surface oversegmentation caused by difficulty of surface structure fitting. The above problems bring great difficulties to the automatic segmentation and recognition of indoor structures.


SUMMARY

In order to solve the above technical problems, the present disclosure provides a technology to realize automatic segmentation of indoor structures by taking an indoor three-dimensional point cloud containing noise and occlusion as an input, and provides an effective data basis for subsequent indoor scene understanding and three-dimensional modeling.


A technical solution adopted by the present disclosure is an indoor structure segmentation method based on a laser measurement point cloud, including the following steps:

    • step 1, inputting an indoor three-dimensional point cloud, and pre-segmenting the point cloud based on multi-resolution supervoxels to extract plane supervoxels, where the step includes the following sub-steps:
    • step 1.1, performing supervoxel segmentation of the point cloud using a toward better boundary preserved supervoxel (TBBPS) segmentation method based on a given initial resolution r to generate a supervoxel set;
    • step 1.2, classifying the supervoxels into plane supervoxels and surface supervoxels, and storing the plane supervoxels in a plane supervoxel set PC and the surface supervoxels in a new point set NPC;
    • step 1.3, based on a current resolution r=r*rdio, performing TBBPS segmentation on points in the NPC to generate a new supervoxel set C′, and emptying the points in the NPC;
    • step 1.4, repeating step 1.2 for the new set C′; and
    • step 1.5, if the NPC is not empty after execution, repeating steps 1.3 and 1.4; and repeating iteration until the NPC is empty or the current resolution r is less than a given resolution threshold rmin to obtain the plane supervoxel set PC;
    • step 2, extracting a surface supervoxel interior point set based on the TBBPS segmentation method, where the step includes the following sub-steps:
    • step 2.1, performing supervoxel segmentation of the point cloud using the TBBPS segmentation method based on a given resolution r to generate a supervoxel set of the point cloud; and
    • step 2.2, for each supervoxel, storing interior points of the surface supervoxels in a surface point set NP using the method of step 1.2;
    • step 3, extracting a plane model by taking the plane supervoxel as a unit, where the step includes the following sub-steps:
    • step 3.1, calculating a curvature of each supervoxel pci ∈PC, and sorting the curvatures from small to large;
    • step 3.2, selecting a supervoxel pcs with a minimum curvature, calculating a central point and normal vector of pcs, and establishing a plane model ηs;
    • step 3.3, traversing other supervoxels pci ∈PC in the supervoxel set, and if an included angle of normal vectors between pci and ηs is less than an angle threshold θth, and a distance between pci and ηs on the ηs normal vector is less than a distance threshold θth, classifying pci into ηs;
    • step 3.4, if a number of supervoxels in ηs is greater than a number threshold Nmax, reserving ηs; otherwise, deleting ηs, finding pcs′ ∈PC with a second minimum curvature, establishing a plane model ηs′, and repeating steps 3.3 and 3.4;
    • step 3.5, for unclassified supervoxels in the PC, running steps 3.2 to 3.4 iteratively until all the supervoxels are classified;
    • step 3.6, reserving a model with a largest number of supervoxels, storing the model in a plane model set MS, and deleting the remaining models; and
    • step 3.7, repeating steps 3.2 to 3.6 until all of the supervoxels in PC are classified or the plane model set MS is no longer added with a model;
    • step 4, fitting a surface model in a surface unit by taking points in the NP as the surface unit and a cylindrical model as a model monomer and using a RANdom SAmple Consensus (RANSAC) method, and saving a surface model set MC; and
    • step 5, based on α-expansion optimization, allocating the supervoxel units and surface point units extracted in steps 1 and 2 to an optimal model, namely the surface or plane model established in steps 3 and 4, to realize unit classification, so as to realize extraction and segmentation of the indoor structure, where the step includes the following sub-steps:
    • step 5.1, calculating a distance from each supervoxel pci ∈PC to each model, and normalizing the distance to 0-1;
    • step 5.2, calculating a distance from each surface point pi ∈NP to each model, and normalizing the distance to 0-1;
    • step 5.3, regarding matching of the supervoxel unit and the surface point unit with the surface model and the plane model as searching a matrix x* which minimizes a matching error on the basis of ensuring a minimum number of models, and minimizing the objective function by the α-expansion algorithm to achieve optimal matching of the unit and the model; and
    • step 5.4, marking matched segmented units with different colors, and outputting segmentation results to complete indoor structure segmentation.


Preferably, a method for classifying the supervoxels in step 1.2 is as follows:

    • step 1.2.1, for each supervoxel ci, calculating a central point pc of the supervoxel using Σj=1npj/n, and solving a covariance matrix C3×3 of a point set in ci about the central point pc according to coordinates of the central point; and
    • step 1.2.2, calculating three eigenvalues λ1C, λ2C and λ3C of the covariance matrix C3×3, where λ1C≤λ2C≤λ3C; and if the eigenvalues of ci satisfy Formula 1 and Formula 2, classifying the supervoxel ci into plane supervoxels; otherwise, classifying the supervoxel ci into surface supervoxels:












λ
2
C


>




λ
3
C


+


λ
1
C



2


,
and




(
1
)














λ
2
C


>

2
*



λ
1
C


.






(
2
)







Preferably, a method for calculating the distance from the supervoxel to the model and normalizing the distance in step 5.1 is as follows:

    • step 5.1.1, calculating a distance from each point pk ∈pc in the supervoxel to the model distance distance(pk, mi), where a formula is as follows:










distance
(


p
k

,

m
i


)

=

{








"\[LeftBracketingBar]"





n
m

·

p
k


-


n
m

·

p
m






"\[LeftBracketingBar]"


n
m



"\[RightBracketingBar]"





"\[RightBracketingBar]"


,


m
i


MS








W
·



"\[LeftBracketingBar]"







"\[LeftBracketingBar]"



p
k

-

p
t




"\[RightBracketingBar]"


·
sin


θ

-
r



"\[RightBracketingBar]"



,


m
i


MC








2
*

γ
th


,


if



distance
(


p
k

,

m
i


)


>

2
*

γ
th







,






(
3
)









    • where nm represents the normal vector of the plane model, pm represents coordinates of a central point, pk represents coordinates of the surface point, pt represents a central point of the cylindrical model, r represents a radius of the cylinder, θ represents an included angle between a pk normal vector and an axial direction vector of the cylinder, W is a weight ranging from 0.2 to 0.5,











"\[LeftBracketingBar]"





n
m

·

p
k


-


n
m

·

p
m






"\[LeftBracketingBar]"


n
m



"\[RightBracketingBar]"





"\[RightBracketingBar]"






represents a shortest distance from the surface point pk to the plane model mi ∈MS, ∥pk−pt|·sin θ−r| represents that a distance from pk to the surface model mi ∈MC is regarded as a difference between a minimum distance from the point to the central axis of the cylindrical model and the radius of the cylinder, γth represents the distance threshold and is influenced by precision of a three-dimensional point cloud acquisition device, and if the acquisition device is based on fixed station scanning, γth is valued within 0.5-1 cm; and if the acquisition device is a mobile measuring device, γth is valued within 2-5 cm;

    • step 5.1.2, regarding a distance from the supervoxel pc to the model mi as a sum of distances from points pk ∈pc in the supervoxel to the model mi, where a calculation formula is shown in Formula 4:

      dist(pc,mi)=Σpk∈pc distance(pk,mi),mi∈MS or MC  (4); and
    • step 5.1.3, normalizing a distance from the supervoxel to the model dist(pc, mi) to 0-1, where a normalization equation is shown in Formula 5:











dist

(

pc
,

m
i


)

=



dist

(

pc
,

m
i


)

-

min



(
dist
)





max

(
dist
)

-

min

(
dist
)




,




(
5
)









    • where max (dist) and min(dist) respectively represent maximum and minimum distances from the supervoxel to the model.





Preferably, a method for calculating the distance from the surface point to the model and normalizing the distance in step 5.2 is as follows:

    • step 5.2.1, calculating a distance from the surface point to the model distance (pi, mi), where a formula is as follows:










distance
(


p
i

,

m
i


)

=

{








"\[LeftBracketingBar]"





n
m

·

p
i


-


n
m

·

p
m






"\[LeftBracketingBar]"


n
m



"\[RightBracketingBar]"





"\[RightBracketingBar]"


,


m
i


MS








W
·



"\[LeftBracketingBar]"







"\[LeftBracketingBar]"



p
i

-

p
t




"\[RightBracketingBar]"


·
sin


θ

-
r



"\[RightBracketingBar]"



,


m
i


MC








2
*

γ
th


,


if



distance
(


p
i

,

m
i


)


>

2
*

γ
th







,






(
6
)









    • where pi represents coordinates of the surface point, θ represents an included angle between a pi normal vector and an axial direction vector of the cylinder, W is a weight ranging from 0.2 to 0.5,











"\[LeftBracketingBar]"





n
m

·

p
i


-


n
m

·

p
m






"\[LeftBracketingBar]"


n
m



"\[RightBracketingBar]"





"\[RightBracketingBar]"






represents a shortest distance from the surface point pi to the plane model mi ∈MS, ∥pi−pt|·sin θ−r| represents that a distance from pi to the surface model mi ∈MC is regarded as a difference between a minimum distance from the point to the central axis of the cylindrical model and the radius of the cylinder, γth represents the distance threshold and is influenced by precision of the three-dimensional point cloud acquisition device, and if the acquisition device is based on fixed station scanning, γth is valued within 0.5-1 cm; and if the acquisition device is a mobile measuring device, γth is valued within 2-5 cm; and

    • step 5.2.2, normalizing a distance from each surface point pi ∈NP to each model mi distance(pi, mi) using Formula 7:











distance
(

p
,

m
i


)

=



distance
(

p
,

m
i


)

-

min



(
distance
)





max

(
distance
)

-

min

(
distance
)




,




(
7
)









    • where max (distance) and min(distance) respectively represent maximum and minimum distances from the surface point to the model.





Preferably, a process of searching a matrix x* in step 5.3 is set as follows:











x
*

=


argmin
x

(








i
=
1

N






p
i

-

m
li





+

β
·
K


)


,

x



{

0
,
1

}


N
×
K



,




(
8
)









    • where N is a total number of the supervoxel units and the surface point units, and K is a total number of the surface models and the plane models.





Compared with the prior art, the present disclosure has the following beneficial effects: a simple and effective indoor structure extraction and segmentation technique is provided, which ensures the segmentation stability of indoor surface structure. Existing point cloud segmentation methods focus on plane structure rather than surface structure. Although the RANSAC method can achieve surface segmentation through regular model fitting, it is affected by the random sampling uncertainty and cannot effectively counteract the noise and outliers in the data, which is easy to produce false surface errors. In order to ensure the sampling consistency of the same structure, the method uses multi-resolution supervoxels as the unit to fit the model to avoid false models. Based on the framework of “pre-segmentation-surface separate fitting-model matching”, the indoor structure segmentation and extraction can be realized quickly and efficiently. The method is also suitable for indoor positioning and indoor mapping.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a flow chart of indoor structure segmentation in an embodiment of the present disclosure;



FIG. 2 shows an example of indoor structure segmentation in the embodiment of the present disclosure;



FIG. 3 show an indoor point cloud input in the embodiment of the present disclosure; and



FIG. 4 shows indoor segmentation results output in the embodiment of the present disclosure.





DETAILED DESCRIPTION OF THE EMBODIMENTS

In order to facilitate the understanding and implementation of the present disclosure by those of ordinary skill in the art, the present disclosure is further described in detail in combination with the accompanying drawings and embodiments. It should be understood that the embodiments described here are only used to illustrate and explain the present disclosure, not to limit the present disclosure.


Indoor scene understanding through point cloud has always been the focus of research, and indoor structure segmentation and extraction has always been the prerequisite and research basis of indoor scene understanding. In this context, the present disclosure provides an indoor structure segmentation method based on a laser measurement point cloud, which transforms the segmentation of indoor structure into supervoxel segmentation and matching by pre-segmentation of supervoxel, so as to further refine the problem. The method of present disclosure includes the following steps.


Step 1, An indoor three-dimensional point cloud is input, and the point cloud is pre-segmented based on multi-resolution supervoxels to extract plane supervoxels. The step includes the following sub-steps.


Step 1.1, Supervoxel segmentation of the point cloud is performed using a TBBPS [1] supervoxel segmentation method based on a given initial resolution r to generate a supervoxel set ci ∈C. Each segmented point cloud cluster represents a supervoxel.


Step 1.2. For each supervoxel ci ∈C, a central point pc of the supervoxel is calculated using Σj=1npj/n, and a covariance matrix C3×3 of a point set about the central point pc is solved according to coordinates of the central point. Three eigenvalues λ1C, λ2C and λ3C of C3×3 are calculated, where λ1C≤λ2C≤λ3C. If the eigenvalues of ci satisfy Formula 1 and Formula 2, the supervoxel ci is stored in the plane supervoxel set PC. Otherwise, the supervoxel ci is stored in the surface supervoxel set NPC:












λ
2
C


>




λ
3
C


+


λ
1
C



2


,
and




(
1
)














λ
2
C


>

2
*



λ
1
C


.






(
2
)







Step 1.3, A current resolution r is modified to r*rdio. For points in the NPC, the TBBPS [1] supervoxel segmentation method is used again based on the current resolution r to generate a new supervoxel set ci′∈C′. Supervoxels in the NPC are emptied.


Step 1.4, Step 1.2 is repeated for the new set C′.


Step 1.5, If the NPC is not empty after execution, steps 1.3 and 1.4 are repeated. Iteration is repeated until the NPC is empty or the current resolution r is less than a given resolution threshold rmin to obtain the plane supervoxel set PC.


Step 2, A surface supervoxel interior point set is extracted based on the TBBPS segmentation method. The step includes the following sub-steps.


Step 2.1, Supervoxel segmentation of the point cloud is performed using the TBBPS [1] segmentation method based on a given resolution r to generate a supervoxel set of the point cloud ci ∈C. Each segmented point cloud cluster represents a supervoxel.


Step 2.2, For each supervoxel ci ∈C, a central point pc of the supervoxel is calculated using Σj=1npj/n, and a covariance matrix C3×3 of a point set about the central point pc is solved according to coordinates of the central point. Three eigenvalues λ1C, λ2C and λ3C of C3×3 are calculated. If the eigenvalues of ci do not satisfy Formula 1 or Formula 2, the supervoxel ci is stored in the surface supervoxel set NPC. The point set in each surface supervoxel ci ∈NPC is stored in the point set NP.


Step 3, A plane model is extracted by taking the plane supervoxel pci ∈PC as a unit. The step includes the following sub-steps.


Step 3.1. In the PC, a curvature of each pci ∈PC is calculated, the curvature Curve is calculated as shown in Formula 3, and the curvatures Curve are sorted from small to large:









Curve
=


λ
1
C

/


(


λ
1
C

+

λ
2
C

+

λ
3
C


)

.






(
3
)







Step 3.2, A supervoxel pcs ∈PC with a minimum curvature is selected, a central point and normal vector of pcs are calculated, and a plane model ηs is established. The plane model is shown in Formula 4:










η
s

=

{






F
1

=

centerpoint
(


x
s

,

y
s

,

z
s


)








F
2

=

normal
(


nx
s

,

ny
s

,

nz
s


)





,






(
4
)









    • where ηs has two parameters F1 and F2. F1 represents the coordinates of the central point of the plane, where xs, ys, and Zs respectively represent the coordinates of the x-axis, y-axis and z-axis of the central point. F2 represents the normal vector of the plane, where nxs, nys, and nzs describe the direction and length information of the normal vector.





Step 3.3, Other supervoxels pci εPC in the PC are traversed. If an included angle of normal vectors between pci and ηs is less than an angle threshold θth, and a distance between pci and ηs on the ηs normal vector is less than a distance threshold γth, pci is classified into ηs.


Step 3.4, If a number of supervoxels in ηs is greater than a number threshold Nmax, ηs is reserved. Otherwise, ηs is deleted, pcs′ ∈PC with a second minimum curvature is found, a plane model ηs′ is established, and steps 3.3 and 3.4 are repeated.


Step 3.5, For unclassified supervoxels in the PC, steps 3.2 to 3.4 are run iteratively until all the supervoxels are classified.


Step 3.6, A model with a largest number of supervoxels ηmax is reserved and is stored in a plane model set MS, and the remaining models are deleted.


Step 3.7, Steps 3.2 to 3.6 are repeated until all of the supervoxels in PC are classified or the plane model set MS is no longer added with a model.


Step 4, A surface model in a surface unit is fit by taking a surface point npi ∈NP as a unit and a cylindrical model as a model monomer and using an RANSAC method [2], and a surface model set MC is saved.


Step 5, Based on α-expansion optimization, the supervoxel units and surface point units extracted in steps 1 and 2 are allocated to an optimal model (the surface or plane model established in steps 3 and 4), so as to classify and segment the units, thus realizing extraction and segmentation of the indoor structure. The step includes the following sub-steps.


Step 5.1, A distance from each supervoxel pc ∈PC to each model dist(pc, mi) is calculated, and the distance calculation is shown in Formula 5. The supervoxel pc to the model mi can be described as: the sum of distances from each point pk ∈pc in the pc to the model mi, while the distance from point to model is shown in Formula 6:

dist(pc,mi)=Σpk∈pc distance(pk,mi),mi∈MS or MC,  (5) and










distance
(


p
k

,

m
i


)

=

{








"\[LeftBracketingBar]"





n
m

·

p
k


-


n
m

·

p
m






"\[LeftBracketingBar]"


n
m



"\[RightBracketingBar]"





"\[RightBracketingBar]"


,


m
i


MS








W
·



"\[LeftBracketingBar]"







"\[LeftBracketingBar]"



p
k

-

p
t




"\[RightBracketingBar]"


·
sin


θ

-
r



"\[RightBracketingBar]"



,


m
i


MC








2
*

γ
th


,


if



distance
(


p
k

,

m
i


)


>

2
*

γ
th







,






(
6
)









    • where nm represents the normal vector of the plane model, pm represents coordinates of a central point, pk represents coordinates of the surface point, pt represents a central point of the cylindrical model, r represents a radius of the cylinder, θ represents an included angle between a pk normal vector and an axial direction vector of the cylinder, W is a weight ranging from 0.2 to 0.5,











"\[LeftBracketingBar]"





n
m

·

p
k


-


n
m

·

p
m






"\[LeftBracketingBar]"


n
m



"\[RightBracketingBar]"





"\[RightBracketingBar]"






represents a shortest distance from the surface point pk to the plane model mi ∈MS, ∥pk−pt|·sin θ−r| represents that a distance from pk to the surface model mi ∈MC is regarded as a difference between a minimum distance from the point to the central axis of the cylindrical model and the radius of the cylinder, γth represents the distance threshold and is influenced by precision of a three-dimensional point cloud acquisition device, if the acquisition device is based on fixed station scanning. γth is valued within 0.5-1 cm, and if the acquisition device is a mobile measuring device, γth is valued within 2-5 cm.


After calculation, the distance from the supervoxel to the model dist (pc, mi) is normalized to 0-1. A normalization equation is shown in Formula 7. In the formula, max (dist) and min(dist) respectively represent maximum and minimum distances from the supervoxel to the model.










dist

(

pc
,

m
i


)

=



dist

(

pc
,

m
i


)

-

min

(
dist
)




max

(
dist
)

-

min

(
dist
)







(
7
)







Step 5.2, A distance from each surface point pi ∈NP to each model mi distance (pi, mi) is calculated, as shown in Formula 8. A distance from each surface point pi to the plane model mi ∈MS can be regarded as the shortest distance from the point to the plane, namely









"\[LeftBracketingBar]"





n
m

·

p
i


-


n
m

·

p
m






"\[LeftBracketingBar]"


n
m



"\[RightBracketingBar]"





"\[RightBracketingBar]"


,





where nm and pm respectively represent the normal vector and central point coordinates of the plane model, while pi represents the coordinates of the surface point. The distance from pi to the surface model mi ∈MC can be regarded as a difference between a minimum distance from the point to the central axis of the cylindrical model and the radius of the cylinder, namely ∥pi−pt|·sin θ−r|, where pt and r represent the central point and radius of the cylindrical model respectively, and θ represents an included angle between a pi normal vector and an axial direction vector of the cylinder. Since the fitting accuracy of the plane model is higher than that of the surface model, the distance from the point to the surface model needs to be multiplied by the weight W in order to balance the fitting error. If the distance from the point to the model is greater than twice the distance threshold value γth, this point can be regarded as the outlier of the model. Therefore, the distance is set as 2*γth.










distance



(


p
i

,

m
i


)


=

{








"\[LeftBracketingBar]"





n
m

·

p
i


-


n
m

·

p
m






"\[LeftBracketingBar]"


n
m



"\[RightBracketingBar]"





"\[RightBracketingBar]"


,


m
i



M

S









W
·



"\[LeftBracketingBar]"







"\[LeftBracketingBar]"



p
i

-

p
t




"\[RightBracketingBar]"


·
sin


θ

-
r



"\[RightBracketingBar]"



,


m
i


MC








2
*

γ
th


,


if


distance



(


p
i

,

m
i


)


>

2
*

γ
th







,






(
8
)









    • where pi represents coordinates of the surface point, θ represents an included angle between a pi normal vector and an axial direction vector of the cylinder, W is a weight ranging from 0.2 to 0.5,











"\[LeftBracketingBar]"





n
m

·

p
i


-


n
m

·

p
m






"\[LeftBracketingBar]"


n
m



"\[RightBracketingBar]"





"\[RightBracketingBar]"






represents a shortest distance from the surface point pi to the plane model mi ∈MS, ∥pi−pt|·sin θ−r| represents that a distance from pi to the surface model mi ∈MC is regarded as a difference between a minimum distance from the point to the central axis of the cylindrical model and the radius of the cylinder, γth represents the distance threshold and is influenced by precision of the three-dimensional point cloud acquisition device, and if the acquisition device is based on fixed station scanning. γth is valued within 0.5-1 cm; and if the acquisition device is a mobile measuring device, γth is valued within 2-5 cm.


After calculation, the distance from each surface point pi ∈NP to each model mi distance(pi, mi) is normalized to 0-1. A normalization method is shown in Formula 9 in step 5.1.











distance



(

p
,

m
i


)


=



distance



(

p
,

m
i


)


-

min

(
distance
)




max

(
distance
)

-

min

(
distance
)




,




(
9
)









    • where max (distance) and min(distance) respectively represent maximum and minimum distances from the surface point to the model.





Step 5.3, Unit segmentation (supervoxel units and surface point units, total number of N units) has been completed in steps 1 and 2, model fitting (surface models and plane models, total number of K models) has been completed in steps 3 and 4, and the matching distance between each unit and the model have been calculated in steps 5.1 and 5.2. Therefore, the structure segmentation of point cloud can be regarded as searching an N-row and K-column matrix x* which minimizes a matching error on the basis of ensuring a minimum number of models, as shown in Formula 8.











x
*

=


argmin
x

(







i
=
1

N







p
i

-

m

l

i





++



β
·
K


)


,

x



{

0
,
1

}


N
×
K







(
8
)







The α-expansion optimization algorithm is used to minimize Formula 8, so as to find the optimal corresponding model for each unit.


Step 5.4, The segmented units are marked with different colors, and the segmentation results are output to complete indoor structure segmentation.


When implemented, the above method can be automatically operated by computer software technology, and the device running the method of the present disclosure shall also be within the scope of protection.


The above descriptions show merely one embodiment of the present disclosure, and is not intended to limit the present disclosure. Any modifications, improvements, etc. made within the spirit and principle of the present disclosure should be included within the protection scope of the present disclosure.

Claims
  • 1. An indoor structure segmentation method based on a laser measurement point cloud, comprising the following steps: step 1, inputting an indoor three-dimensional point cloud, and pre-segmenting the point cloud based on multi-resolution supervoxels to extract plane supervoxels, wherein the step comprises the following sub-steps:step 1.1, performing supervoxel segmentation of the point cloud using a toward better boundary preserved supervoxel (TBBPS) segmentation method based on a given initial resolution r to generate a supervoxel set;step 1.2, classifying the supervoxels into plane supervoxels and surface supervoxels, and storing the plane supervoxels in a plane supervoxel set PC and the surface supervoxels in a new point set NPC;step 1.3, based on a current resolution r=r*rdio, performing TBBPS segmentation on points in the NPC to generate a new supervoxel set C′, and emptying the points in the NPC;step 1.4, repeating step 1.2 for the new set C′; andstep 1.5, if the NPC is not empty after execution, repeating steps 1.3 and 1.4; and repeating iteration until the NPC is empty or the current resolution r is less than a given resolution threshold rmin to obtain the plane supervoxel set PC;step 2, extracting a surface supervoxel interior point set based on the TBBPS segmentation method, wherein the step comprises the following sub-steps:step 2.1, performing supervoxel segmentation of the point cloud using the TBBPS segmentation method based on a given resolution r to generate a supervoxel set of the point cloud; andstep 2.2, for each supervoxel, storing interior points of the surface supervoxels in a surface point set NP using the method of step 1.2;step 3, extracting a plane model by taking the plane supervoxel as a unit, wherein the step comprises the following sub-steps:step 3.1, calculating a curvature of each supervoxel pci ∈PC, and sorting the curvatures from small to large;step 3.2, selecting a supervoxel pcs with a minimum curvature, calculating a central point and normal vector of pcs, and establishing a plane model ηs;step 3.3, traversing other supervoxels pci ∈PC in the supervoxel set, and if an included angle of normal vectors between pci and ηs is less than an angle threshold θth, and a distance between pci and ηs on the ηs normal vector is less than a distance threshold γth, classifying pci into ηs;step 3.4, if a number of supervoxels in ηs is greater than a number threshold Nmax, reserving ηs; otherwise, deleting ηs, finding pcs′ ∈PC with a second minimum curvature, establishing a plane model ηs′, and repeating steps 3.3 and 3.4;step 3.5, for unclassified supervoxels in the PC, running steps 3.2 to 3.4 iteratively until all the supervoxels are classified;step 3.6, reserving a model with a largest number of supervoxels, storing the model in a plane model set MS, and deleting the remaining models; andstep 3.7, repeating steps 3.2 to 3.6 until all of the supervoxels in PC are classified or the plane model set MS is no longer added with a model;step 4, fitting a surface model in a surface unit by taking points in the NP as the surface unit and a cylindrical model as a model monomer and using a RANdom SAmple Consensus (RANSAC) method, and saving a surface model set MC; andstep 5, based on α-expansion optimization, allocating the supervoxel units and surface point units extracted in steps 1 and 2 to an optimal model, namely the surface or plane model established in steps 3 and 4, to realize unit classification, so as to realize extraction and segmentation of the indoor structure, wherein the step comprises the following sub-steps:step 5.1, calculating a distance from each supervoxel pci ∈PC to each model, and normalizing the distance to 0-1;step 5.2, calculating a distance from each surface point pi ∈NP to each model, and normalizing the distance to 0-1;step 5.3, regarding matching of the supervoxel unit and the surface point unit with the surface model and the plane model as searching a matrix x* which minimizes a matching error on the basis of ensuring a minimum number of models, and minimizing the objective function by the α-expansion algorithm to achieve optimal matching of the unit and the model; andstep 5.4, marking matched segmented units with different colors, and outputting segmentation results to complete indoor structure segmentation.
  • 2. The indoor structure segmentation method based on a laser measurement point cloud according to claim 1, wherein a method for classifying the supervoxels in step 1.2 is as follows: step 1.2.1, for each supervoxel ci, calculating a central point pc of the supervoxel using Σj=1npj/n, and solving a covariance matrix C3×3 of a point set in ci about the central point pc according to coordinates of the central point; andstep 1.2.2, calculating three eigenvalues λ1C, λ2C and λ3C of the covariance matrix C3×3, wherein λ1C≤λ2C≤λ3C; and if the eigenvalues of ci satisfy Formula 1 and Formula 2, classifying the supervoxel ci into plane supervoxels; otherwise, classifying the supervoxel ci into surface supervoxels:
  • 3. The indoor structure segmentation method based on a laser measurement point cloud according to claim 1, wherein a method for calculating the distance from the supervoxel to the model and normalizing the distance in step 5.1 is as follows: step 5.1.1, calculating a distance from each point pk ∈pc in the supervoxel to the model distance(pk, mi), wherein a formula is as follows:
  • 4. The indoor structure segmentation method based on a laser measurement point cloud according to claim 3, wherein a method for calculating the distance from the surface point to the model and normalizing the distance in step 5.2 is as follows: step 5.2.1, calculating a distance from the surface point to the model distance (pi, mi), wherein a formula is as follows:
  • 5. The indoor structure segmentation method based on a laser measurement point cloud according to claim 1, wherein a process of searching a matrix x* in step 5.3 is set as follows:
US Referenced Citations (3)
Number Name Date Kind
20160154999 Fan Jun 2016 A1
20170116781 Babahajiani Apr 2017 A1
20230186647 Mahata Jun 2023 A1
Foreign Referenced Citations (3)
Number Date Country
112288857 Jan 2021 CN
117197159 Dec 2023 CN
118135220 Aug 2024 CN
Related Publications (1)
Number Date Country
20240303916 A1 Sep 2024 US