Full text: Papers accepted on the basis of peer-reviewed full manuscripts (Part A)

In: Paparoditis N., Pierrot-Deseilligny M.. Mallet C. Tournaire O. (Eds). IAPRS. Vol. XXXVIII. Part ЗА - Saint-Mandé, France. September 1-3. 2010 
177 
Merging is similar to region growing in computer vision 
problems, in which Weingaiten(2004), proposed a dynamic list 
structure of cubes and the computation complexity is O(n) after 
sorting. In our design, we adopted the dynamic linked list tree 
structure to present the data set plane merging in 0(n) without 
sorting. By run-time encoding of planes, we only pass the 
normal vectors and the point of geometric center according to 
the index to the merging decision maker. The merging of 
planar patches is based on two criterions: proximity and the 
surface normal disparity (Stamos and Allen 2000). The 
proximity matrix is created by combining one dimension 
distance vectors of individual point to planes. denotes the 
distance from the geometric center of i-th patch to j-th patch. 
D\ i D n •••" 
Taking advantage of the symmetric property, we can reduce the 
matrix memory access by creating the mutual distance matrix 
M such as 
M = P + P T , (11) 
where the superscript T denotes the matrix transpose. For each 
element //?;, in M, a threshold value 1 is chosen to merge the 
similar patches. Thus, a set m is then obtained according to 
m = Vm..</ (12) 
The final step is to merge the planar patches with similar 
surface normal vectors. 
2.4 Boundary Extraction Based on Planar Convex-hull 
In definition, the convex hull for a points set X in a real vector 
space V is the minimal convex set containing X. For a planar 
convex-hull, the boundary can be used to present an edge of 
some plane. In a 2D points set, there exists a convex for all the 
point in R~. After a plane in R' is rotated to x-y plane, the 3D 
planar edge detection problem is reduced to a 2D convex hull 
problem. By experiment, the computation cost of 3D convex 
hull is two times larger than in 2D space. The following 
procedure shows the detail to extract the edges of each merged 
planes. 
Step 1. For each points P" (/ = 1 ...M), we can evaluate the 
orthographic projected points P e R' on the distributed plane 
0 fi alone the direction of N“. In the 3D-Euclid space, Pmust 
be constrained by the following condition: 
P'f-N" = C“,V/' e [l,Af] > (12) 
where C 1 is a constant. Figure 3 show's the projection of P,"to 
p 7 
Step 2. For constructing the planar convex-hull in R~. it is 
desired to find a rigid transformation (a rotation matrix 
O"(0, <$<^)<eS03 and a translation vector t"(//, t- a )) which is 
able to transform P ’" from 0" to P, aT on x-y plane, such as 
P“ 7 - z = 0 -»(O" • P'“+t")-z = 0, (13) 
where z = [0,0,1] is an unit vector along Z axis. The 
corresponding ®" and t" can be determined by solving the 
above equation through “Levenberg Marquardf algorithm and 
“Rodrigues” algebra. Then, the points P,“ 7 have the form [p x aT , 
p " T , p” r =0] since Pj aT e [x-y plane]. We can choose the first 
two elements to create new points P" = [ p xl aT , p y !' J ] g R‘. A 
new set P" which contains P" (/' = 1...A/) is established for 
developing the planar convex-hull. 
Step 3. There are various convex-hull algorithms considering 
many aspects of constraints, including floating number 
precision, computational cost, and the implementation 
complexity. The one we adopt is the “2D qliull” (Barber 1996), 
the complexity of qhull is 0(/?log(/?)), it works with double 
precision numbers, and it is fairly robust. The basic idea is 
applying “Divide-and-Conquer” method after sorting the points 
set in the fashion: 
(x 0 ,,v 0 )<(*„) or (x 0 = x,, To <>’,)• (14) 
The merge component takes linear time O(n), therefore, the 
overall complexity is 0(A7log(/?)). The procedure below' shows 
the detail of merge algorithm: 
Algorithm 2DConvexHullMerge(H L .Hr) 
Function arguments: H L \ left convex polygon, H R . right convex 
polygon 
1. Pi = fmdMaxX(Hi); 
2. Qi =findMinX(H R ); 
3. while ( not tangent(Pi, ()■,)) 
4. = fmdMaxX{H L -{/*, }); 
5. Q i+I = jindMinX(H R - { O,}); 
6. end w hile 
7. Hull = mergeTwoHull(Hi,H R ); 
8. return createCounterClockHuII(Y{u\Y); 
In order to draw the planar polygon more easily, it is important 
to produce a counter-clockwise permuted hull. From above, the 
geometric boundary of a plane can be extracted by applying 2D 
qhull algorithm. In most cases, the boundary can be considered 
as a good approximation to the real geometry shape; it can be a 
good starting point w'hen there is an occlusion happened in the 
LiDAR data which hull helps to complement some point loss. 
The overall algorithm proposed in this paper can be 
summarized in the following pipeline. 
I Laser scan I 
i , , 
|Segmentationf-jT Planar patch extraction j|Project P" to planeQ^I 
[Create new points P a e R~|(-(Project P ‘> X ~ Y plane | 
["Create planar convex-hull }—jfEdpc detection | 
Figure 4. Processing pipeline
	        
Waiting...

Note to user

Dear user,

In response to current developments in the web technology used by the Goobi viewer, the software no longer supports your browser.

Please use one of the following browsers to display this page correctly.

Thank you.