researcharticle 3d maps representation using gng · 2016-05-05 · researcharticle 3d maps...
TRANSCRIPT
Research Article3D Maps Representation Using GNG
Vicente Morell Miguel Cazorla Sergio Orts-Escolano and Jose Garcia-Rodriguez
University Institute for Computing Research University of Alicante PO Box 99 03080 Alicante Spain
Correspondence should be addressed to Miguel Cazorla miguelcazorlauaes
Received 6 March 2014 Accepted 24 July 2014 Published 27 August 2014
Academic Editor Yi Chen
Copyright copy 2014 Vicente Morell et al This is an open access article distributed under the Creative Commons Attribution Licensewhich permits unrestricted use distribution and reproduction in any medium provided the original work is properly cited
Current RGB-D sensors provide a big amount of valuable information for mobile robotics tasks like 3D map reconstruction butthe storage and processing of the incremental data provided by the different sensors through time quickly become unmanageableIn this work we focus on 3D maps representation and propose the use of the Growing Neural Gas (GNG) network as a model torepresent 3D input data GNG method is able to represent the input data with a desired amount of neurons or resolution whilepreserving the topology of the input space Experiments show how GNGmethod yields a better input space adaptation than otherstate-of-the-art 3D map representation methods
1 Introduction
A 3D point is comprised of (119883 119884 and119885) values representingthe spatial coordinates Moreover if color information (RG and B) is available for each point it is referred to asRGB-D data RGB-D cameras provide this kind of data andhave become very popular due to their low cost like theKinect sensor This sensor could provide more than 3000003D points per capture That feature is very useful to carryout a fundamental task in mobile robotics mapping [1]Mapping is a task that builds a map from the observationsand movements of the robot Each time the robot moves anobservation is linked to that movementThen using differentmethods for example registration the map can be builttransforming each observation with respect to a commoncoordinates frame This map is useful to develop subsequenttasks like localization navigation and recognition The useof RGB-D data as observations is referred to as RGB-Dmapping and RGB-D maps
The amount of data in RGB-D maps is huge since thenumber of poses is high In a typical map with 10000 posesthe data could consist of more than 3 billion of 3D pointswhich are unaffordable for representation and other tasks
Furthermore as acquisitions frame rate is high for a commonarea a huge amount of redundant points is used to representthe input space Due to the huge quantity of data severalmethods have been proposed to reduce the number of pointsin the map while preserving the main features of the data asit would be used in further tasks
Elevation maps were a commonly used structure in thepast [2]These elevationmaps are represented using a regular2D cell grid where each cell value represents the elevationor height of the surface of that space This compact modelallows a simple representation of large areas but with lowlevel of detail Triebel et al [3] presented an extension ofthe height maps to represent different surfaces at differentheights This multilevel surface map (MLS map) allows therepresentation of vertical structures and different surfaces ina 2D cell-based structure like the ones used in the traditionalheight maps This approach focuses on the representation ofplanar surfaces to help mobile robotics tasks like roboticsnavigation
Following this idea of 3D space representation someother structures have been proposed like occupancy grids orOctrees Occupancy grids represent the entire space as 3Dcell grids The cell information could consist of a single value
Hindawi Publishing CorporationMathematical Problems in EngineeringVolume 2014 Article ID 972304 11 pageshttpdxdoiorg1011552014972304
2 Mathematical Problems in Engineering
of occupancy or contain more complex information as theprobability of occupancy Several works in mobile roboticshave used this structure as a base for their applications [4ndash6]Another common structure is the Octree [7] The Octree is atree structure in which each internal node has eight childrenEach node of the tree is recursively subdivided into eightnew nodes until a certain condition is fulfilled like the sizeof the area represented by a node This structure representsboth occupied and empty space in the area representedby the Octree It also allows some optimized operationslike closest point searching or occupancy checking In [8]an Octree based framework called OctoMap is presentedIt uses probabilistic occupancy estimation where areas ofthe space are represented as occupied empty or uncertainAnother commonly used structure is the voxel grid (VG)The VG downsampling technique is based on the input spacesampling using a grid of 3D voxels This technique has beentraditionally employed in the area of computer graphics tosubdivide the input space and reduce the number of points[7 9]
Wang et al [10] presented a feature based 3D pointcloud simplification method They detect the points withmore information (big curvature) and subsample the restof the points using a uniform spherical sampling methodTherefore they preserve the keypoints and subsample thosepoints with less curvature informationThismethod is able tosubsample 3D point clouds obtained from object surfaces Itdoes not work on scene maps since the spherical samplingand the feature selection process is usually harder andproblem dependent
Other approaches use self-organizing maps in order toreduce the input space Viejo et al [11] used a GrowingNeural Gas (GNG) algorithm to filter and reduce singlefrontal point clouds In this paper we propose the extensionof that work to manage complete maps The GNG adapts itsstructure to the complete map reducing its size preservingthe input space topology and providing better adjustmentthan existing methods To validate our method we presentseveral experiments comparing our method with map sizereduction state-of-the-art methods
The rest of this work is organized as follows First inSection 2 we introduce and describe the proposed GNGapplication and the Octree and voxel grid methods thatwe will use in the experimentation Next in Section 3 thevalidation of our method is carried out comparing it with thetwo previous mentioned methods Finally conclusions andfuture works are drawn
2 3D Representation Methods
One way of selecting points of interest in 3D point clouds isthe use of a topographic mapping where a low-dimensionalmap is fitted to the high dimensional manifold of the modelwhilst preserving the topographic structure of the data
In this section we review some typical methods torepresent and compress 3D data First we propose the use ofa Growing Neural Gas algorithm to reduce and represent 3D
point cloud maps Then we briefly describe two well-knowndata structures in order to compare them with our method
21 GNGMethod A commonway to achieve data dimensionreduction is by using self-organising neural networks whereinput patterns are projected onto a network of neural unitssuch that similar patterns are projected onto units adjacentin the network and vice versa As a result of this projectiona representation of the input patterns is achieved whichin postprocessing stages allows exploiting the similarityrelations of the input patterns
However most common approaches do not providegood neighborhood and topology preservation if the logicalstructure of the input pattern is not known a priori Infact the most common approaches specify in advance thenumber of neurons in the network and a graph that representstopological relationships between them for example a two-dimensional grid and seek the best match to the given inputpattern manifold When this is not the case the networksfail to provide good topology preservation as in the case ofKohonenrsquos algorithm [12]
The approach presented in this paper is based on self-organising networks trained using the Growing Neural Gaslearningmethod [13] an incremental training algorithmThelinks between the neurons in the network are establishedthrough competitive Hebbian learning [14] As a result thealgorithm is suitable in cases where the topological structureof the input pattern is not known a priori and yields topologypreserving maps of feature manifold [15]
In GNG the nodes of the network compete to determinethe ones with the highest similarity to the input distributionIn our case the input distribution is a finite set of 3Dpoints extracted from different types of sensors The highestsimilarity reflects which node together with its topologicalneighbors is the closest one to the input sample point whichis the pattern generated by the network The 119899-dimensionalinput signals are randomly generated from a finite inputdistribution
The nodes move towards the input distribution byadapting their position to the input data geometry Duringthe learning process local error measures are gathered todeterminewhere to insert new nodes New nodes are insertednear the node with the highest accumulated error At eachadaptation step a connection between the winner and itstopological neighbors is created as dictated by the compet-itive Hebbian learning method This is continued until anending condition is fulfilled for example the evaluation ofthe optimal network topology a predefined network size or adeadline
The network is specified as follows
(i) It is a set 119873 of nodes (neurons) Each neuron 119888 isin119873 has its associated reference vector 119908
119888isin 119877119889 The
reference vectors can be regarded as positions in theinput space of their corresponding neurons
Mathematical Problems in Engineering 3
(ii) It is a set of edges (connections) between pairs ofneurons These connections are not weighted and itspurpose is to define the topological structure Theedges are determined using the competitive Hebbianlearning algorithm An edge-aging scheme is used toremove connections that are invalid due to the activa-tion of the neuron during the adaptation process
The GNG learning algorithm is as follows
(1) Start with two neurons 119886 and 119887 at random positions119908119886and 119908
119887in 119877119889
(2) Generate a random input signal 120585 according to adensity function 119875(120585)
(3) Find the nearest neuron (winner neuron) 1199041and the
second nearest 1199042
(4) Increase the age of all the edges emanating from 1199041
(5) Add the squared distance between the input signaland the winner neuron to a counter error of 119904
1
Δerror (1199041) =
100381710038171003817100381710038171199081199041
minus 12058510038171003817100381710038171003817
2
(1)
(6) Move the winner neuron 1199041and its topological neigh-
bours (neurons connected to 1199041) towards 120585 by learning
steps 120576119908and 120576119899 respectively of the total distance
Δ1199081199041
= 120576119908(120585 minus 119908
1199041
)
Δ119908119904119899
= 120576119899(120585 minus 119908
119904119899
)
(2)
(7) If 1199041and 1199042are connected by an edge set the age of
this edge to 0 If it does not exist create it
(8) Remove the edges larger than 119886max If this results inisolated neurons (without emanating edges) removethem as well
(9) With every certain number 120582 of input signals gener-ated insert a new neuron as follows
(i) Determine the neuron 119902 with the maximumaccumulated error
(ii) Insert a new neuron 119903 between 119902 and its furtherneighbor119891
119908119903= 05 (119908
119902+ 119908119891) (3)
(iii) Insert new edges connecting the neuron 119903 withneurons 119902 and119891 removing the old edge between119902 and 119891
(iv) Decrease the error variables of neurons 119902 and119891multiplying them with a constant 120572 Initializethe error variable of 119903 with the new value of theerror variable of 119902 and 119891
(10) Decrease all error variables by multiplying them witha constant 120573
(11) If the stopping criterion is not yet achieved go to step2
In summary the adaptation of the network to the inputspace takes place in step 6The insertion of connections (step7) between the two closest neurons to the input patternsestablishes an induced Delaunay triangulation in the inputspace The elimination of connections (step 8) eliminates theedges that no longer comprise the triangulationThis is madeby eliminating the connections between neurons that are nolonger activated or isolated Finally the accumulated error(step 5) allows the identification of those areas in the inputspace where it is necessary to increase the number of neuronsto improve the mapping
Using a Growing Neural Gas model to represent 3D datahas some advantages over the traditionally usedmethods likevoxel grid or Octrees For example we specify the numberof neurons (representative points of the map) while othermethods like the voxel grid or Octree get different number ofoccupied cells depending on the distribution and resolutionof the cells (voxels on voxel grid and leaves on Octree basedmethods)
22 Octree Based Method Most 3D point cloud mappingalgorithms typically use the spatial organization of the pointsto encode them in a structure like an Octree to reduce theamount of information An Octree is a tree data structurein which their internal nodes have exactly eight childrenOctrees make a partition of the three-dimensional space byrecursively subdividing it into eight octants It starts froma user specified volume space or it computes the boundingbox of the input set Then each node or cell is subdividedinto 8 children nodes until a certain condition is reachedThese conditions vary depending on the problem or theOctree implementation A commonly used condition is tostop producing new children nodes when the volume or sizeof the corresponding cell node reaches the desired precision
One of the main features of the Octree representationis that nodes not containing input space points are notsubdivided and therefore those leaf nodes represent anempty volume of the space This feature is useful for somemobile applications as robot navigation There exist differentapproaches to select the representative point of the occupiednodes A simple one is to get the center of the node cell butusing the mean or centroid of the cell inner points improvesthe preservation of the topology This approach offers betterresults but it has a higher computational and memory cost
23 Voxel Grid Method The VG downsampling technique isbased on the input space sampling using a grid of 3D voxels[16] VG algorithm defines a voxel grid in the 3D space andfor each voxel a point is chosen as the representative of allpoints that lie on that voxel It is necessary to define the size ofthe voxels as this size establishes the resolution of the filteredpoint cloud and therefore the number of points that formthe new point cloud The representative of each cell couldbe chosen by using one of the approaches described in the
4 Mathematical Problems in Engineering
Figure 1 Partial point cloud example
previous sectionThus a subset of the input space is obtainedthat roughly represents the underlying surface
The VG method as the Octree based methods presentsthe same problems compared to other subsampling tech-niques it is not possible to define the final number of pointswhich represents the surface geometric information loss dueto the reduction of the points within a voxel and sensitivity tonoisy input spaces
24 Discussion In this subsection we briefly describe themain differences of the above-described methods Figures 23 and 4 show several examples of using the three describedmethods The GNG representation provides a set of neu-rons and their neighbors These representatives and theirconnections can be used in some algorithms like 3D meshreconstruction or feature extraction
Both voxel grid and Octree methods should providesimilar results due to their final representation of the pointsIn a point cloud reduction application the Octree gets theirrepresentatives of the leaf nodes and if we use the sameresolution as the voxel grid method we get a similar divisionof the space in cubes or cells of the same dimensionThe voxelgrid method is the most simple and fastest reduction methodbut it does not have any of the advantages of the Octreestructure or GNG model like neighbor searching facilities
Figure 5 shows a 2D description of the representativepoints of the described methods We observe that the GNGmethod assigns more neurons on high density input areas(bottom left area) than the voxel grid and Octree methodsWe also observe how the GNG is able to eliminate somenoisy values like the point near the center in contrast withthe representatives used in the VG and Octree methods
(a) (b)
(c)
Figure 2 GNG representation example of the partial point cloudshown in Figure 1 Front side and top views are shown from (a) to(c) respectively
3 Experimentation
In this section we test the quality of adaptation of the threedescribed methods We first describe the data used in theexperiments and then we analyze the results of the testedmethods both quantitatively and qualitatively
31 Experimentation Setup To test the implemented scenemapping systems on room map scenarios we used theTUM RGB-D dataset [17] This dataset provides RGB-Dand ground-truth data with the goal of evaluating visualodometry and visual SLAM systems The dataset containsthe color and depth images obtained using a MicrosoftKinect sensor along the ground-truth trajectory of the sensorIt provides images at full frame rate (30Hz) and sensorresolution (640 times 480) The ground-truth trajectory wasobtained from a high-accuracy motion-capture system witheight high-speed tracking cameras (100Hz)
This dataset contains 39 sequences recorded in twodifferent scenariosThe fr1 datasets were recorded in a typicaloffice environment (first scenario) and the fr2 datasets were
Mathematical Problems in Engineering 5
(a) (b) (c)
Figure 3 Octree representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to (c)respectively
(a) (b) (c)
Figure 4 Voxel grid representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to(c) respectively
Table 1 Number of points of each ground-truth map dataset
Dataset Number of input pointsfr1 xyz 1049739fr1 desk 1952544fr1 360 2357039fr1 desk2 2751402fr2 xyz 3492032fr2 desk 5841800fr3 long 1636623
recorded in a large industrial hall (second scenario) Figures 6and 7 show the ground-truth reconstruction maps of the ldquofr1360rdquo and ldquofr2 deskrdquo respectively
Table 1 shows the number of points of the inputmaps usedin the experimentation We can observe that the number ofinput points ranges from one million (ldquofr1 119909119910119911rdquo) to 6 million(ldquofr2 deskrdquo)
32 Quality Adaptation Experiment As we previously men-tioned we are going to compare the proposed GNG adapta-tion with two commonly used data structures in the state-of-the-art Octree and voxel grid The implementation of bothmethods is included in the Point Cloud Library (PCL) (thePoint Cloud Library (or PCL) is a large scale open project[18] for 2D3D image and point cloud processing)TheOctreeimplementation uses the center of the leaf nodes as rep-resentative points However the voxel grid implementationuses the centroid of the points of each nonempty voxel Bothimplementations use a resolution parameter that representsthe size of the voxel in the VG method and the side of the
6 Mathematical Problems in Engineering
00
10
10
20
20
30
30
40
40
Voxel grid
Input pointsVoxel centroid
Voxel centerVoxel
(a)
Octree
0
10
20
30
40
0 10 20 30 40
Input pointsLeaf centerLeaf node
(b)
GNG
GNG
0
10
20
30
40
0 10 20 30 40
Input points
(c)
Figure 5 Two-dimensional examples of the three tested methods
Figure 6 Example of the ldquofr1 360rdquo ground-truth point cloud map
Mathematical Problems in Engineering 7
Figure 7 Example of the ldquofr3 longrdquo ground-truth point cloud map
leaf cell of the Octree implementation The GNG results areobtained using 10000120582 input patterns
We extensively tested the implemented methods usingdifferent number of representatives Since the three testedmethods reduce the amount of noise in the generated mapit is needed to know the real distance from the selectedrepresentatives to the original input space The followingmeasure specifies how close the representations are from theoriginal model
A quantitative measure of the input space adaptationof the generated map is obtained by computing the meanerror (ME) of the reducedmap against sampled points (inputspace)
ME = 1
|119881|sum
119901isin119881
min119902isin119860
1003817100381710038171003817119901 minus 1199021003817100381710038171003817 (4)
where 119881 is the input space 119901 is a point that belongs tothe input space and 119902 is the representative point with theminimum distance to 119901 Euclidean distances to closest pointsare averaged over the entire input space
Figure 8 shows the RMS errors of the three methodson the six different tested maps We observe that the threemethods have similar behavior on the different datasets TheOctree method gets the worse results probably due to theselection of its cell-node center as representative The voxelgrid gets lower errors than Octree due to the use of thecentroid of the inner points instead of using the center of thevoxel or cell
It is important to point out again that the representativeselectionmethod used in this comparison is given by the usedimplementations But Octree and voxel grid methods can usea representative selection strategy GNG adaption shows thebest results on all datasets It is noticeable that the GNG getslower errors with different number of representatives but asthe number of representatives increases the three differentmethods converge to the same error
33 Qualitative Results In this subsection we qualitativelyanalyze the results obtained with the three different methodsFigure 9 shows the original map and the three tested repre-sentations of the ldquofr1 360rdquo scene Part (a) shows the point
Table 2 Runtimes and speed-up of GPU versus CPU implementa-tion for different GNG versions
Neurons Patterns CPU runtime(s)
GPUspeed-up
GPU runtime(s)
5000 250 63 3times 2112000 350 526 5times 105218000 500 1448 6times 24133
cloud that we are trying to represent and reduce Parts (b) and(c) are respectively the Octree and voxel grid representationand part (d) is the GNG representation of the scene TheOctree representation using the centers of the leaf nodes getsa strongly structured point representation This representa-tion gets a more uniform distribution of the representativesbut the adaption error is worse as we saw in Figure 5 andthe mean error graphs The voxel grid representation getssimilar results compared to the Octree where the points areuniformly distributed as it can be observed in the pointsthat represent the floor However it gets better results onthe boundaries compared with the Octree method BothVG and Octree place representatives in isolated and noisypoints However the GNGneurons are uniformly distributedover the input space and the impact of the noisy points andundefined borders on the obtained representation is reducedWe also observe the inherent triangulation of the space thatthe GNG algorithm gets using the neurons neighborhood
Figure 10 shows two more experiments with GNG repre-sentation In these experiments we have selected two mapswith holes GNG is able to adapt to these holes and it doesnot insert neurons in them
34 Execution Time With respect to computational cost ourmethod is feasible to be included in a modern system usinggeneral purpose computing platforms However we designedin a previous work [17] a GPU-based implementation of theGNG algorithm that speeds up the sequential version severaltimes The speedup is increased as the number of neuronsused for the representation grows
In Table 2 some results can be appreciated with differentnumber of neurons and input patterns with CPU and GPUruntimes and speedup obtained with GPU version withrespect to the CPU ones The GPU used was a GTX 480NVIDIA graphic card with 480 cores a global memory of15MB and a bandwidth memory of 1774GBsec
35 GNG Maps Applications The experiments showed howthe GNG is able to adapt their topology to represent theinput map space In [19] we showed many applications of theGNG structure in order to improve 3D data representationand computer vision methods We proved that the GNGrepresentation partially discards most of the noisy valuesprovided by these RGB-D sensors In addition we performedsome experiments to show the improvement obtained using
8 Mathematical Problems in Engineering
0002004006008
01012014016018
02
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 10000 20000 30000 40000 6000050000Number of representative points
fr1 360
Voxel gridOctreeGNG
Voxel gridOctreeGNG
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr2 xyz
fr1 xyz
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
0002
004006
00801
012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr1 desk
fr1 desk2
Voxel gridOctreeGNG
fr2 desk
Figure 8 Closest neighbor distance mean errors of the different datasets
the GNG representation on normal estimation using pointneighborhood and keypoint detection and description
Normal estimation methods are based on the analysisof the eigenvectors and eigenvalues of a covariance matrixcreated from the nearest neighbours and are very sensitiveto noisy data Therefore we computed normals on raw andfiltered point clouds in order to demonstrate how a simple3D processing step like normal or curvature estimation isaffected by the presence of noise
Figure 11 shows how more stable normals are estimatedusing filtered point clouds produced by the GNG methodNormals are considered more stable as their distributionis smooth and also they have less abrupt changes in theirdirections Moreover a flat wall with some small changesin its surface was selected to appreciate changes in normaldirectionsWe employed 20000 neurons and 1000120582 patternsas configuration parameters for the GNG method in thenormal estimation experiment Figure 11(b)
Mathematical Problems in Engineering 9
(a) (b)
(c) (d)
Figure 9 (a) Original point cloud map (b) Octree reduction (c) Voxel grid reduction (d) GNG representation
Figure 10 Other examples of GNG representation with two additional maps Left part is a zoomed detail
(a) (b)
Figure 11 Normal estimation comparison (a) Normal estimation on raw point cloud (b) Normal estimation on filtered point cloud producedby the GNG method
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
2 Mathematical Problems in Engineering
of occupancy or contain more complex information as theprobability of occupancy Several works in mobile roboticshave used this structure as a base for their applications [4ndash6]Another common structure is the Octree [7] The Octree is atree structure in which each internal node has eight childrenEach node of the tree is recursively subdivided into eightnew nodes until a certain condition is fulfilled like the sizeof the area represented by a node This structure representsboth occupied and empty space in the area representedby the Octree It also allows some optimized operationslike closest point searching or occupancy checking In [8]an Octree based framework called OctoMap is presentedIt uses probabilistic occupancy estimation where areas ofthe space are represented as occupied empty or uncertainAnother commonly used structure is the voxel grid (VG)The VG downsampling technique is based on the input spacesampling using a grid of 3D voxels This technique has beentraditionally employed in the area of computer graphics tosubdivide the input space and reduce the number of points[7 9]
Wang et al [10] presented a feature based 3D pointcloud simplification method They detect the points withmore information (big curvature) and subsample the restof the points using a uniform spherical sampling methodTherefore they preserve the keypoints and subsample thosepoints with less curvature informationThismethod is able tosubsample 3D point clouds obtained from object surfaces Itdoes not work on scene maps since the spherical samplingand the feature selection process is usually harder andproblem dependent
Other approaches use self-organizing maps in order toreduce the input space Viejo et al [11] used a GrowingNeural Gas (GNG) algorithm to filter and reduce singlefrontal point clouds In this paper we propose the extensionof that work to manage complete maps The GNG adapts itsstructure to the complete map reducing its size preservingthe input space topology and providing better adjustmentthan existing methods To validate our method we presentseveral experiments comparing our method with map sizereduction state-of-the-art methods
The rest of this work is organized as follows First inSection 2 we introduce and describe the proposed GNGapplication and the Octree and voxel grid methods thatwe will use in the experimentation Next in Section 3 thevalidation of our method is carried out comparing it with thetwo previous mentioned methods Finally conclusions andfuture works are drawn
2 3D Representation Methods
One way of selecting points of interest in 3D point clouds isthe use of a topographic mapping where a low-dimensionalmap is fitted to the high dimensional manifold of the modelwhilst preserving the topographic structure of the data
In this section we review some typical methods torepresent and compress 3D data First we propose the use ofa Growing Neural Gas algorithm to reduce and represent 3D
point cloud maps Then we briefly describe two well-knowndata structures in order to compare them with our method
21 GNGMethod A commonway to achieve data dimensionreduction is by using self-organising neural networks whereinput patterns are projected onto a network of neural unitssuch that similar patterns are projected onto units adjacentin the network and vice versa As a result of this projectiona representation of the input patterns is achieved whichin postprocessing stages allows exploiting the similarityrelations of the input patterns
However most common approaches do not providegood neighborhood and topology preservation if the logicalstructure of the input pattern is not known a priori Infact the most common approaches specify in advance thenumber of neurons in the network and a graph that representstopological relationships between them for example a two-dimensional grid and seek the best match to the given inputpattern manifold When this is not the case the networksfail to provide good topology preservation as in the case ofKohonenrsquos algorithm [12]
The approach presented in this paper is based on self-organising networks trained using the Growing Neural Gaslearningmethod [13] an incremental training algorithmThelinks between the neurons in the network are establishedthrough competitive Hebbian learning [14] As a result thealgorithm is suitable in cases where the topological structureof the input pattern is not known a priori and yields topologypreserving maps of feature manifold [15]
In GNG the nodes of the network compete to determinethe ones with the highest similarity to the input distributionIn our case the input distribution is a finite set of 3Dpoints extracted from different types of sensors The highestsimilarity reflects which node together with its topologicalneighbors is the closest one to the input sample point whichis the pattern generated by the network The 119899-dimensionalinput signals are randomly generated from a finite inputdistribution
The nodes move towards the input distribution byadapting their position to the input data geometry Duringthe learning process local error measures are gathered todeterminewhere to insert new nodes New nodes are insertednear the node with the highest accumulated error At eachadaptation step a connection between the winner and itstopological neighbors is created as dictated by the compet-itive Hebbian learning method This is continued until anending condition is fulfilled for example the evaluation ofthe optimal network topology a predefined network size or adeadline
The network is specified as follows
(i) It is a set 119873 of nodes (neurons) Each neuron 119888 isin119873 has its associated reference vector 119908
119888isin 119877119889 The
reference vectors can be regarded as positions in theinput space of their corresponding neurons
Mathematical Problems in Engineering 3
(ii) It is a set of edges (connections) between pairs ofneurons These connections are not weighted and itspurpose is to define the topological structure Theedges are determined using the competitive Hebbianlearning algorithm An edge-aging scheme is used toremove connections that are invalid due to the activa-tion of the neuron during the adaptation process
The GNG learning algorithm is as follows
(1) Start with two neurons 119886 and 119887 at random positions119908119886and 119908
119887in 119877119889
(2) Generate a random input signal 120585 according to adensity function 119875(120585)
(3) Find the nearest neuron (winner neuron) 1199041and the
second nearest 1199042
(4) Increase the age of all the edges emanating from 1199041
(5) Add the squared distance between the input signaland the winner neuron to a counter error of 119904
1
Δerror (1199041) =
100381710038171003817100381710038171199081199041
minus 12058510038171003817100381710038171003817
2
(1)
(6) Move the winner neuron 1199041and its topological neigh-
bours (neurons connected to 1199041) towards 120585 by learning
steps 120576119908and 120576119899 respectively of the total distance
Δ1199081199041
= 120576119908(120585 minus 119908
1199041
)
Δ119908119904119899
= 120576119899(120585 minus 119908
119904119899
)
(2)
(7) If 1199041and 1199042are connected by an edge set the age of
this edge to 0 If it does not exist create it
(8) Remove the edges larger than 119886max If this results inisolated neurons (without emanating edges) removethem as well
(9) With every certain number 120582 of input signals gener-ated insert a new neuron as follows
(i) Determine the neuron 119902 with the maximumaccumulated error
(ii) Insert a new neuron 119903 between 119902 and its furtherneighbor119891
119908119903= 05 (119908
119902+ 119908119891) (3)
(iii) Insert new edges connecting the neuron 119903 withneurons 119902 and119891 removing the old edge between119902 and 119891
(iv) Decrease the error variables of neurons 119902 and119891multiplying them with a constant 120572 Initializethe error variable of 119903 with the new value of theerror variable of 119902 and 119891
(10) Decrease all error variables by multiplying them witha constant 120573
(11) If the stopping criterion is not yet achieved go to step2
In summary the adaptation of the network to the inputspace takes place in step 6The insertion of connections (step7) between the two closest neurons to the input patternsestablishes an induced Delaunay triangulation in the inputspace The elimination of connections (step 8) eliminates theedges that no longer comprise the triangulationThis is madeby eliminating the connections between neurons that are nolonger activated or isolated Finally the accumulated error(step 5) allows the identification of those areas in the inputspace where it is necessary to increase the number of neuronsto improve the mapping
Using a Growing Neural Gas model to represent 3D datahas some advantages over the traditionally usedmethods likevoxel grid or Octrees For example we specify the numberof neurons (representative points of the map) while othermethods like the voxel grid or Octree get different number ofoccupied cells depending on the distribution and resolutionof the cells (voxels on voxel grid and leaves on Octree basedmethods)
22 Octree Based Method Most 3D point cloud mappingalgorithms typically use the spatial organization of the pointsto encode them in a structure like an Octree to reduce theamount of information An Octree is a tree data structurein which their internal nodes have exactly eight childrenOctrees make a partition of the three-dimensional space byrecursively subdividing it into eight octants It starts froma user specified volume space or it computes the boundingbox of the input set Then each node or cell is subdividedinto 8 children nodes until a certain condition is reachedThese conditions vary depending on the problem or theOctree implementation A commonly used condition is tostop producing new children nodes when the volume or sizeof the corresponding cell node reaches the desired precision
One of the main features of the Octree representationis that nodes not containing input space points are notsubdivided and therefore those leaf nodes represent anempty volume of the space This feature is useful for somemobile applications as robot navigation There exist differentapproaches to select the representative point of the occupiednodes A simple one is to get the center of the node cell butusing the mean or centroid of the cell inner points improvesthe preservation of the topology This approach offers betterresults but it has a higher computational and memory cost
23 Voxel Grid Method The VG downsampling technique isbased on the input space sampling using a grid of 3D voxels[16] VG algorithm defines a voxel grid in the 3D space andfor each voxel a point is chosen as the representative of allpoints that lie on that voxel It is necessary to define the size ofthe voxels as this size establishes the resolution of the filteredpoint cloud and therefore the number of points that formthe new point cloud The representative of each cell couldbe chosen by using one of the approaches described in the
4 Mathematical Problems in Engineering
Figure 1 Partial point cloud example
previous sectionThus a subset of the input space is obtainedthat roughly represents the underlying surface
The VG method as the Octree based methods presentsthe same problems compared to other subsampling tech-niques it is not possible to define the final number of pointswhich represents the surface geometric information loss dueto the reduction of the points within a voxel and sensitivity tonoisy input spaces
24 Discussion In this subsection we briefly describe themain differences of the above-described methods Figures 23 and 4 show several examples of using the three describedmethods The GNG representation provides a set of neu-rons and their neighbors These representatives and theirconnections can be used in some algorithms like 3D meshreconstruction or feature extraction
Both voxel grid and Octree methods should providesimilar results due to their final representation of the pointsIn a point cloud reduction application the Octree gets theirrepresentatives of the leaf nodes and if we use the sameresolution as the voxel grid method we get a similar divisionof the space in cubes or cells of the same dimensionThe voxelgrid method is the most simple and fastest reduction methodbut it does not have any of the advantages of the Octreestructure or GNG model like neighbor searching facilities
Figure 5 shows a 2D description of the representativepoints of the described methods We observe that the GNGmethod assigns more neurons on high density input areas(bottom left area) than the voxel grid and Octree methodsWe also observe how the GNG is able to eliminate somenoisy values like the point near the center in contrast withthe representatives used in the VG and Octree methods
(a) (b)
(c)
Figure 2 GNG representation example of the partial point cloudshown in Figure 1 Front side and top views are shown from (a) to(c) respectively
3 Experimentation
In this section we test the quality of adaptation of the threedescribed methods We first describe the data used in theexperiments and then we analyze the results of the testedmethods both quantitatively and qualitatively
31 Experimentation Setup To test the implemented scenemapping systems on room map scenarios we used theTUM RGB-D dataset [17] This dataset provides RGB-Dand ground-truth data with the goal of evaluating visualodometry and visual SLAM systems The dataset containsthe color and depth images obtained using a MicrosoftKinect sensor along the ground-truth trajectory of the sensorIt provides images at full frame rate (30Hz) and sensorresolution (640 times 480) The ground-truth trajectory wasobtained from a high-accuracy motion-capture system witheight high-speed tracking cameras (100Hz)
This dataset contains 39 sequences recorded in twodifferent scenariosThe fr1 datasets were recorded in a typicaloffice environment (first scenario) and the fr2 datasets were
Mathematical Problems in Engineering 5
(a) (b) (c)
Figure 3 Octree representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to (c)respectively
(a) (b) (c)
Figure 4 Voxel grid representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to(c) respectively
Table 1 Number of points of each ground-truth map dataset
Dataset Number of input pointsfr1 xyz 1049739fr1 desk 1952544fr1 360 2357039fr1 desk2 2751402fr2 xyz 3492032fr2 desk 5841800fr3 long 1636623
recorded in a large industrial hall (second scenario) Figures 6and 7 show the ground-truth reconstruction maps of the ldquofr1360rdquo and ldquofr2 deskrdquo respectively
Table 1 shows the number of points of the inputmaps usedin the experimentation We can observe that the number ofinput points ranges from one million (ldquofr1 119909119910119911rdquo) to 6 million(ldquofr2 deskrdquo)
32 Quality Adaptation Experiment As we previously men-tioned we are going to compare the proposed GNG adapta-tion with two commonly used data structures in the state-of-the-art Octree and voxel grid The implementation of bothmethods is included in the Point Cloud Library (PCL) (thePoint Cloud Library (or PCL) is a large scale open project[18] for 2D3D image and point cloud processing)TheOctreeimplementation uses the center of the leaf nodes as rep-resentative points However the voxel grid implementationuses the centroid of the points of each nonempty voxel Bothimplementations use a resolution parameter that representsthe size of the voxel in the VG method and the side of the
6 Mathematical Problems in Engineering
00
10
10
20
20
30
30
40
40
Voxel grid
Input pointsVoxel centroid
Voxel centerVoxel
(a)
Octree
0
10
20
30
40
0 10 20 30 40
Input pointsLeaf centerLeaf node
(b)
GNG
GNG
0
10
20
30
40
0 10 20 30 40
Input points
(c)
Figure 5 Two-dimensional examples of the three tested methods
Figure 6 Example of the ldquofr1 360rdquo ground-truth point cloud map
Mathematical Problems in Engineering 7
Figure 7 Example of the ldquofr3 longrdquo ground-truth point cloud map
leaf cell of the Octree implementation The GNG results areobtained using 10000120582 input patterns
We extensively tested the implemented methods usingdifferent number of representatives Since the three testedmethods reduce the amount of noise in the generated mapit is needed to know the real distance from the selectedrepresentatives to the original input space The followingmeasure specifies how close the representations are from theoriginal model
A quantitative measure of the input space adaptationof the generated map is obtained by computing the meanerror (ME) of the reducedmap against sampled points (inputspace)
ME = 1
|119881|sum
119901isin119881
min119902isin119860
1003817100381710038171003817119901 minus 1199021003817100381710038171003817 (4)
where 119881 is the input space 119901 is a point that belongs tothe input space and 119902 is the representative point with theminimum distance to 119901 Euclidean distances to closest pointsare averaged over the entire input space
Figure 8 shows the RMS errors of the three methodson the six different tested maps We observe that the threemethods have similar behavior on the different datasets TheOctree method gets the worse results probably due to theselection of its cell-node center as representative The voxelgrid gets lower errors than Octree due to the use of thecentroid of the inner points instead of using the center of thevoxel or cell
It is important to point out again that the representativeselectionmethod used in this comparison is given by the usedimplementations But Octree and voxel grid methods can usea representative selection strategy GNG adaption shows thebest results on all datasets It is noticeable that the GNG getslower errors with different number of representatives but asthe number of representatives increases the three differentmethods converge to the same error
33 Qualitative Results In this subsection we qualitativelyanalyze the results obtained with the three different methodsFigure 9 shows the original map and the three tested repre-sentations of the ldquofr1 360rdquo scene Part (a) shows the point
Table 2 Runtimes and speed-up of GPU versus CPU implementa-tion for different GNG versions
Neurons Patterns CPU runtime(s)
GPUspeed-up
GPU runtime(s)
5000 250 63 3times 2112000 350 526 5times 105218000 500 1448 6times 24133
cloud that we are trying to represent and reduce Parts (b) and(c) are respectively the Octree and voxel grid representationand part (d) is the GNG representation of the scene TheOctree representation using the centers of the leaf nodes getsa strongly structured point representation This representa-tion gets a more uniform distribution of the representativesbut the adaption error is worse as we saw in Figure 5 andthe mean error graphs The voxel grid representation getssimilar results compared to the Octree where the points areuniformly distributed as it can be observed in the pointsthat represent the floor However it gets better results onthe boundaries compared with the Octree method BothVG and Octree place representatives in isolated and noisypoints However the GNGneurons are uniformly distributedover the input space and the impact of the noisy points andundefined borders on the obtained representation is reducedWe also observe the inherent triangulation of the space thatthe GNG algorithm gets using the neurons neighborhood
Figure 10 shows two more experiments with GNG repre-sentation In these experiments we have selected two mapswith holes GNG is able to adapt to these holes and it doesnot insert neurons in them
34 Execution Time With respect to computational cost ourmethod is feasible to be included in a modern system usinggeneral purpose computing platforms However we designedin a previous work [17] a GPU-based implementation of theGNG algorithm that speeds up the sequential version severaltimes The speedup is increased as the number of neuronsused for the representation grows
In Table 2 some results can be appreciated with differentnumber of neurons and input patterns with CPU and GPUruntimes and speedup obtained with GPU version withrespect to the CPU ones The GPU used was a GTX 480NVIDIA graphic card with 480 cores a global memory of15MB and a bandwidth memory of 1774GBsec
35 GNG Maps Applications The experiments showed howthe GNG is able to adapt their topology to represent theinput map space In [19] we showed many applications of theGNG structure in order to improve 3D data representationand computer vision methods We proved that the GNGrepresentation partially discards most of the noisy valuesprovided by these RGB-D sensors In addition we performedsome experiments to show the improvement obtained using
8 Mathematical Problems in Engineering
0002004006008
01012014016018
02
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 10000 20000 30000 40000 6000050000Number of representative points
fr1 360
Voxel gridOctreeGNG
Voxel gridOctreeGNG
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr2 xyz
fr1 xyz
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
0002
004006
00801
012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr1 desk
fr1 desk2
Voxel gridOctreeGNG
fr2 desk
Figure 8 Closest neighbor distance mean errors of the different datasets
the GNG representation on normal estimation using pointneighborhood and keypoint detection and description
Normal estimation methods are based on the analysisof the eigenvectors and eigenvalues of a covariance matrixcreated from the nearest neighbours and are very sensitiveto noisy data Therefore we computed normals on raw andfiltered point clouds in order to demonstrate how a simple3D processing step like normal or curvature estimation isaffected by the presence of noise
Figure 11 shows how more stable normals are estimatedusing filtered point clouds produced by the GNG methodNormals are considered more stable as their distributionis smooth and also they have less abrupt changes in theirdirections Moreover a flat wall with some small changesin its surface was selected to appreciate changes in normaldirectionsWe employed 20000 neurons and 1000120582 patternsas configuration parameters for the GNG method in thenormal estimation experiment Figure 11(b)
Mathematical Problems in Engineering 9
(a) (b)
(c) (d)
Figure 9 (a) Original point cloud map (b) Octree reduction (c) Voxel grid reduction (d) GNG representation
Figure 10 Other examples of GNG representation with two additional maps Left part is a zoomed detail
(a) (b)
Figure 11 Normal estimation comparison (a) Normal estimation on raw point cloud (b) Normal estimation on filtered point cloud producedby the GNG method
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
Mathematical Problems in Engineering 3
(ii) It is a set of edges (connections) between pairs ofneurons These connections are not weighted and itspurpose is to define the topological structure Theedges are determined using the competitive Hebbianlearning algorithm An edge-aging scheme is used toremove connections that are invalid due to the activa-tion of the neuron during the adaptation process
The GNG learning algorithm is as follows
(1) Start with two neurons 119886 and 119887 at random positions119908119886and 119908
119887in 119877119889
(2) Generate a random input signal 120585 according to adensity function 119875(120585)
(3) Find the nearest neuron (winner neuron) 1199041and the
second nearest 1199042
(4) Increase the age of all the edges emanating from 1199041
(5) Add the squared distance between the input signaland the winner neuron to a counter error of 119904
1
Δerror (1199041) =
100381710038171003817100381710038171199081199041
minus 12058510038171003817100381710038171003817
2
(1)
(6) Move the winner neuron 1199041and its topological neigh-
bours (neurons connected to 1199041) towards 120585 by learning
steps 120576119908and 120576119899 respectively of the total distance
Δ1199081199041
= 120576119908(120585 minus 119908
1199041
)
Δ119908119904119899
= 120576119899(120585 minus 119908
119904119899
)
(2)
(7) If 1199041and 1199042are connected by an edge set the age of
this edge to 0 If it does not exist create it
(8) Remove the edges larger than 119886max If this results inisolated neurons (without emanating edges) removethem as well
(9) With every certain number 120582 of input signals gener-ated insert a new neuron as follows
(i) Determine the neuron 119902 with the maximumaccumulated error
(ii) Insert a new neuron 119903 between 119902 and its furtherneighbor119891
119908119903= 05 (119908
119902+ 119908119891) (3)
(iii) Insert new edges connecting the neuron 119903 withneurons 119902 and119891 removing the old edge between119902 and 119891
(iv) Decrease the error variables of neurons 119902 and119891multiplying them with a constant 120572 Initializethe error variable of 119903 with the new value of theerror variable of 119902 and 119891
(10) Decrease all error variables by multiplying them witha constant 120573
(11) If the stopping criterion is not yet achieved go to step2
In summary the adaptation of the network to the inputspace takes place in step 6The insertion of connections (step7) between the two closest neurons to the input patternsestablishes an induced Delaunay triangulation in the inputspace The elimination of connections (step 8) eliminates theedges that no longer comprise the triangulationThis is madeby eliminating the connections between neurons that are nolonger activated or isolated Finally the accumulated error(step 5) allows the identification of those areas in the inputspace where it is necessary to increase the number of neuronsto improve the mapping
Using a Growing Neural Gas model to represent 3D datahas some advantages over the traditionally usedmethods likevoxel grid or Octrees For example we specify the numberof neurons (representative points of the map) while othermethods like the voxel grid or Octree get different number ofoccupied cells depending on the distribution and resolutionof the cells (voxels on voxel grid and leaves on Octree basedmethods)
22 Octree Based Method Most 3D point cloud mappingalgorithms typically use the spatial organization of the pointsto encode them in a structure like an Octree to reduce theamount of information An Octree is a tree data structurein which their internal nodes have exactly eight childrenOctrees make a partition of the three-dimensional space byrecursively subdividing it into eight octants It starts froma user specified volume space or it computes the boundingbox of the input set Then each node or cell is subdividedinto 8 children nodes until a certain condition is reachedThese conditions vary depending on the problem or theOctree implementation A commonly used condition is tostop producing new children nodes when the volume or sizeof the corresponding cell node reaches the desired precision
One of the main features of the Octree representationis that nodes not containing input space points are notsubdivided and therefore those leaf nodes represent anempty volume of the space This feature is useful for somemobile applications as robot navigation There exist differentapproaches to select the representative point of the occupiednodes A simple one is to get the center of the node cell butusing the mean or centroid of the cell inner points improvesthe preservation of the topology This approach offers betterresults but it has a higher computational and memory cost
23 Voxel Grid Method The VG downsampling technique isbased on the input space sampling using a grid of 3D voxels[16] VG algorithm defines a voxel grid in the 3D space andfor each voxel a point is chosen as the representative of allpoints that lie on that voxel It is necessary to define the size ofthe voxels as this size establishes the resolution of the filteredpoint cloud and therefore the number of points that formthe new point cloud The representative of each cell couldbe chosen by using one of the approaches described in the
4 Mathematical Problems in Engineering
Figure 1 Partial point cloud example
previous sectionThus a subset of the input space is obtainedthat roughly represents the underlying surface
The VG method as the Octree based methods presentsthe same problems compared to other subsampling tech-niques it is not possible to define the final number of pointswhich represents the surface geometric information loss dueto the reduction of the points within a voxel and sensitivity tonoisy input spaces
24 Discussion In this subsection we briefly describe themain differences of the above-described methods Figures 23 and 4 show several examples of using the three describedmethods The GNG representation provides a set of neu-rons and their neighbors These representatives and theirconnections can be used in some algorithms like 3D meshreconstruction or feature extraction
Both voxel grid and Octree methods should providesimilar results due to their final representation of the pointsIn a point cloud reduction application the Octree gets theirrepresentatives of the leaf nodes and if we use the sameresolution as the voxel grid method we get a similar divisionof the space in cubes or cells of the same dimensionThe voxelgrid method is the most simple and fastest reduction methodbut it does not have any of the advantages of the Octreestructure or GNG model like neighbor searching facilities
Figure 5 shows a 2D description of the representativepoints of the described methods We observe that the GNGmethod assigns more neurons on high density input areas(bottom left area) than the voxel grid and Octree methodsWe also observe how the GNG is able to eliminate somenoisy values like the point near the center in contrast withthe representatives used in the VG and Octree methods
(a) (b)
(c)
Figure 2 GNG representation example of the partial point cloudshown in Figure 1 Front side and top views are shown from (a) to(c) respectively
3 Experimentation
In this section we test the quality of adaptation of the threedescribed methods We first describe the data used in theexperiments and then we analyze the results of the testedmethods both quantitatively and qualitatively
31 Experimentation Setup To test the implemented scenemapping systems on room map scenarios we used theTUM RGB-D dataset [17] This dataset provides RGB-Dand ground-truth data with the goal of evaluating visualodometry and visual SLAM systems The dataset containsthe color and depth images obtained using a MicrosoftKinect sensor along the ground-truth trajectory of the sensorIt provides images at full frame rate (30Hz) and sensorresolution (640 times 480) The ground-truth trajectory wasobtained from a high-accuracy motion-capture system witheight high-speed tracking cameras (100Hz)
This dataset contains 39 sequences recorded in twodifferent scenariosThe fr1 datasets were recorded in a typicaloffice environment (first scenario) and the fr2 datasets were
Mathematical Problems in Engineering 5
(a) (b) (c)
Figure 3 Octree representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to (c)respectively
(a) (b) (c)
Figure 4 Voxel grid representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to(c) respectively
Table 1 Number of points of each ground-truth map dataset
Dataset Number of input pointsfr1 xyz 1049739fr1 desk 1952544fr1 360 2357039fr1 desk2 2751402fr2 xyz 3492032fr2 desk 5841800fr3 long 1636623
recorded in a large industrial hall (second scenario) Figures 6and 7 show the ground-truth reconstruction maps of the ldquofr1360rdquo and ldquofr2 deskrdquo respectively
Table 1 shows the number of points of the inputmaps usedin the experimentation We can observe that the number ofinput points ranges from one million (ldquofr1 119909119910119911rdquo) to 6 million(ldquofr2 deskrdquo)
32 Quality Adaptation Experiment As we previously men-tioned we are going to compare the proposed GNG adapta-tion with two commonly used data structures in the state-of-the-art Octree and voxel grid The implementation of bothmethods is included in the Point Cloud Library (PCL) (thePoint Cloud Library (or PCL) is a large scale open project[18] for 2D3D image and point cloud processing)TheOctreeimplementation uses the center of the leaf nodes as rep-resentative points However the voxel grid implementationuses the centroid of the points of each nonempty voxel Bothimplementations use a resolution parameter that representsthe size of the voxel in the VG method and the side of the
6 Mathematical Problems in Engineering
00
10
10
20
20
30
30
40
40
Voxel grid
Input pointsVoxel centroid
Voxel centerVoxel
(a)
Octree
0
10
20
30
40
0 10 20 30 40
Input pointsLeaf centerLeaf node
(b)
GNG
GNG
0
10
20
30
40
0 10 20 30 40
Input points
(c)
Figure 5 Two-dimensional examples of the three tested methods
Figure 6 Example of the ldquofr1 360rdquo ground-truth point cloud map
Mathematical Problems in Engineering 7
Figure 7 Example of the ldquofr3 longrdquo ground-truth point cloud map
leaf cell of the Octree implementation The GNG results areobtained using 10000120582 input patterns
We extensively tested the implemented methods usingdifferent number of representatives Since the three testedmethods reduce the amount of noise in the generated mapit is needed to know the real distance from the selectedrepresentatives to the original input space The followingmeasure specifies how close the representations are from theoriginal model
A quantitative measure of the input space adaptationof the generated map is obtained by computing the meanerror (ME) of the reducedmap against sampled points (inputspace)
ME = 1
|119881|sum
119901isin119881
min119902isin119860
1003817100381710038171003817119901 minus 1199021003817100381710038171003817 (4)
where 119881 is the input space 119901 is a point that belongs tothe input space and 119902 is the representative point with theminimum distance to 119901 Euclidean distances to closest pointsare averaged over the entire input space
Figure 8 shows the RMS errors of the three methodson the six different tested maps We observe that the threemethods have similar behavior on the different datasets TheOctree method gets the worse results probably due to theselection of its cell-node center as representative The voxelgrid gets lower errors than Octree due to the use of thecentroid of the inner points instead of using the center of thevoxel or cell
It is important to point out again that the representativeselectionmethod used in this comparison is given by the usedimplementations But Octree and voxel grid methods can usea representative selection strategy GNG adaption shows thebest results on all datasets It is noticeable that the GNG getslower errors with different number of representatives but asthe number of representatives increases the three differentmethods converge to the same error
33 Qualitative Results In this subsection we qualitativelyanalyze the results obtained with the three different methodsFigure 9 shows the original map and the three tested repre-sentations of the ldquofr1 360rdquo scene Part (a) shows the point
Table 2 Runtimes and speed-up of GPU versus CPU implementa-tion for different GNG versions
Neurons Patterns CPU runtime(s)
GPUspeed-up
GPU runtime(s)
5000 250 63 3times 2112000 350 526 5times 105218000 500 1448 6times 24133
cloud that we are trying to represent and reduce Parts (b) and(c) are respectively the Octree and voxel grid representationand part (d) is the GNG representation of the scene TheOctree representation using the centers of the leaf nodes getsa strongly structured point representation This representa-tion gets a more uniform distribution of the representativesbut the adaption error is worse as we saw in Figure 5 andthe mean error graphs The voxel grid representation getssimilar results compared to the Octree where the points areuniformly distributed as it can be observed in the pointsthat represent the floor However it gets better results onthe boundaries compared with the Octree method BothVG and Octree place representatives in isolated and noisypoints However the GNGneurons are uniformly distributedover the input space and the impact of the noisy points andundefined borders on the obtained representation is reducedWe also observe the inherent triangulation of the space thatthe GNG algorithm gets using the neurons neighborhood
Figure 10 shows two more experiments with GNG repre-sentation In these experiments we have selected two mapswith holes GNG is able to adapt to these holes and it doesnot insert neurons in them
34 Execution Time With respect to computational cost ourmethod is feasible to be included in a modern system usinggeneral purpose computing platforms However we designedin a previous work [17] a GPU-based implementation of theGNG algorithm that speeds up the sequential version severaltimes The speedup is increased as the number of neuronsused for the representation grows
In Table 2 some results can be appreciated with differentnumber of neurons and input patterns with CPU and GPUruntimes and speedup obtained with GPU version withrespect to the CPU ones The GPU used was a GTX 480NVIDIA graphic card with 480 cores a global memory of15MB and a bandwidth memory of 1774GBsec
35 GNG Maps Applications The experiments showed howthe GNG is able to adapt their topology to represent theinput map space In [19] we showed many applications of theGNG structure in order to improve 3D data representationand computer vision methods We proved that the GNGrepresentation partially discards most of the noisy valuesprovided by these RGB-D sensors In addition we performedsome experiments to show the improvement obtained using
8 Mathematical Problems in Engineering
0002004006008
01012014016018
02
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 10000 20000 30000 40000 6000050000Number of representative points
fr1 360
Voxel gridOctreeGNG
Voxel gridOctreeGNG
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr2 xyz
fr1 xyz
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
0002
004006
00801
012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr1 desk
fr1 desk2
Voxel gridOctreeGNG
fr2 desk
Figure 8 Closest neighbor distance mean errors of the different datasets
the GNG representation on normal estimation using pointneighborhood and keypoint detection and description
Normal estimation methods are based on the analysisof the eigenvectors and eigenvalues of a covariance matrixcreated from the nearest neighbours and are very sensitiveto noisy data Therefore we computed normals on raw andfiltered point clouds in order to demonstrate how a simple3D processing step like normal or curvature estimation isaffected by the presence of noise
Figure 11 shows how more stable normals are estimatedusing filtered point clouds produced by the GNG methodNormals are considered more stable as their distributionis smooth and also they have less abrupt changes in theirdirections Moreover a flat wall with some small changesin its surface was selected to appreciate changes in normaldirectionsWe employed 20000 neurons and 1000120582 patternsas configuration parameters for the GNG method in thenormal estimation experiment Figure 11(b)
Mathematical Problems in Engineering 9
(a) (b)
(c) (d)
Figure 9 (a) Original point cloud map (b) Octree reduction (c) Voxel grid reduction (d) GNG representation
Figure 10 Other examples of GNG representation with two additional maps Left part is a zoomed detail
(a) (b)
Figure 11 Normal estimation comparison (a) Normal estimation on raw point cloud (b) Normal estimation on filtered point cloud producedby the GNG method
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
4 Mathematical Problems in Engineering
Figure 1 Partial point cloud example
previous sectionThus a subset of the input space is obtainedthat roughly represents the underlying surface
The VG method as the Octree based methods presentsthe same problems compared to other subsampling tech-niques it is not possible to define the final number of pointswhich represents the surface geometric information loss dueto the reduction of the points within a voxel and sensitivity tonoisy input spaces
24 Discussion In this subsection we briefly describe themain differences of the above-described methods Figures 23 and 4 show several examples of using the three describedmethods The GNG representation provides a set of neu-rons and their neighbors These representatives and theirconnections can be used in some algorithms like 3D meshreconstruction or feature extraction
Both voxel grid and Octree methods should providesimilar results due to their final representation of the pointsIn a point cloud reduction application the Octree gets theirrepresentatives of the leaf nodes and if we use the sameresolution as the voxel grid method we get a similar divisionof the space in cubes or cells of the same dimensionThe voxelgrid method is the most simple and fastest reduction methodbut it does not have any of the advantages of the Octreestructure or GNG model like neighbor searching facilities
Figure 5 shows a 2D description of the representativepoints of the described methods We observe that the GNGmethod assigns more neurons on high density input areas(bottom left area) than the voxel grid and Octree methodsWe also observe how the GNG is able to eliminate somenoisy values like the point near the center in contrast withthe representatives used in the VG and Octree methods
(a) (b)
(c)
Figure 2 GNG representation example of the partial point cloudshown in Figure 1 Front side and top views are shown from (a) to(c) respectively
3 Experimentation
In this section we test the quality of adaptation of the threedescribed methods We first describe the data used in theexperiments and then we analyze the results of the testedmethods both quantitatively and qualitatively
31 Experimentation Setup To test the implemented scenemapping systems on room map scenarios we used theTUM RGB-D dataset [17] This dataset provides RGB-Dand ground-truth data with the goal of evaluating visualodometry and visual SLAM systems The dataset containsthe color and depth images obtained using a MicrosoftKinect sensor along the ground-truth trajectory of the sensorIt provides images at full frame rate (30Hz) and sensorresolution (640 times 480) The ground-truth trajectory wasobtained from a high-accuracy motion-capture system witheight high-speed tracking cameras (100Hz)
This dataset contains 39 sequences recorded in twodifferent scenariosThe fr1 datasets were recorded in a typicaloffice environment (first scenario) and the fr2 datasets were
Mathematical Problems in Engineering 5
(a) (b) (c)
Figure 3 Octree representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to (c)respectively
(a) (b) (c)
Figure 4 Voxel grid representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to(c) respectively
Table 1 Number of points of each ground-truth map dataset
Dataset Number of input pointsfr1 xyz 1049739fr1 desk 1952544fr1 360 2357039fr1 desk2 2751402fr2 xyz 3492032fr2 desk 5841800fr3 long 1636623
recorded in a large industrial hall (second scenario) Figures 6and 7 show the ground-truth reconstruction maps of the ldquofr1360rdquo and ldquofr2 deskrdquo respectively
Table 1 shows the number of points of the inputmaps usedin the experimentation We can observe that the number ofinput points ranges from one million (ldquofr1 119909119910119911rdquo) to 6 million(ldquofr2 deskrdquo)
32 Quality Adaptation Experiment As we previously men-tioned we are going to compare the proposed GNG adapta-tion with two commonly used data structures in the state-of-the-art Octree and voxel grid The implementation of bothmethods is included in the Point Cloud Library (PCL) (thePoint Cloud Library (or PCL) is a large scale open project[18] for 2D3D image and point cloud processing)TheOctreeimplementation uses the center of the leaf nodes as rep-resentative points However the voxel grid implementationuses the centroid of the points of each nonempty voxel Bothimplementations use a resolution parameter that representsthe size of the voxel in the VG method and the side of the
6 Mathematical Problems in Engineering
00
10
10
20
20
30
30
40
40
Voxel grid
Input pointsVoxel centroid
Voxel centerVoxel
(a)
Octree
0
10
20
30
40
0 10 20 30 40
Input pointsLeaf centerLeaf node
(b)
GNG
GNG
0
10
20
30
40
0 10 20 30 40
Input points
(c)
Figure 5 Two-dimensional examples of the three tested methods
Figure 6 Example of the ldquofr1 360rdquo ground-truth point cloud map
Mathematical Problems in Engineering 7
Figure 7 Example of the ldquofr3 longrdquo ground-truth point cloud map
leaf cell of the Octree implementation The GNG results areobtained using 10000120582 input patterns
We extensively tested the implemented methods usingdifferent number of representatives Since the three testedmethods reduce the amount of noise in the generated mapit is needed to know the real distance from the selectedrepresentatives to the original input space The followingmeasure specifies how close the representations are from theoriginal model
A quantitative measure of the input space adaptationof the generated map is obtained by computing the meanerror (ME) of the reducedmap against sampled points (inputspace)
ME = 1
|119881|sum
119901isin119881
min119902isin119860
1003817100381710038171003817119901 minus 1199021003817100381710038171003817 (4)
where 119881 is the input space 119901 is a point that belongs tothe input space and 119902 is the representative point with theminimum distance to 119901 Euclidean distances to closest pointsare averaged over the entire input space
Figure 8 shows the RMS errors of the three methodson the six different tested maps We observe that the threemethods have similar behavior on the different datasets TheOctree method gets the worse results probably due to theselection of its cell-node center as representative The voxelgrid gets lower errors than Octree due to the use of thecentroid of the inner points instead of using the center of thevoxel or cell
It is important to point out again that the representativeselectionmethod used in this comparison is given by the usedimplementations But Octree and voxel grid methods can usea representative selection strategy GNG adaption shows thebest results on all datasets It is noticeable that the GNG getslower errors with different number of representatives but asthe number of representatives increases the three differentmethods converge to the same error
33 Qualitative Results In this subsection we qualitativelyanalyze the results obtained with the three different methodsFigure 9 shows the original map and the three tested repre-sentations of the ldquofr1 360rdquo scene Part (a) shows the point
Table 2 Runtimes and speed-up of GPU versus CPU implementa-tion for different GNG versions
Neurons Patterns CPU runtime(s)
GPUspeed-up
GPU runtime(s)
5000 250 63 3times 2112000 350 526 5times 105218000 500 1448 6times 24133
cloud that we are trying to represent and reduce Parts (b) and(c) are respectively the Octree and voxel grid representationand part (d) is the GNG representation of the scene TheOctree representation using the centers of the leaf nodes getsa strongly structured point representation This representa-tion gets a more uniform distribution of the representativesbut the adaption error is worse as we saw in Figure 5 andthe mean error graphs The voxel grid representation getssimilar results compared to the Octree where the points areuniformly distributed as it can be observed in the pointsthat represent the floor However it gets better results onthe boundaries compared with the Octree method BothVG and Octree place representatives in isolated and noisypoints However the GNGneurons are uniformly distributedover the input space and the impact of the noisy points andundefined borders on the obtained representation is reducedWe also observe the inherent triangulation of the space thatthe GNG algorithm gets using the neurons neighborhood
Figure 10 shows two more experiments with GNG repre-sentation In these experiments we have selected two mapswith holes GNG is able to adapt to these holes and it doesnot insert neurons in them
34 Execution Time With respect to computational cost ourmethod is feasible to be included in a modern system usinggeneral purpose computing platforms However we designedin a previous work [17] a GPU-based implementation of theGNG algorithm that speeds up the sequential version severaltimes The speedup is increased as the number of neuronsused for the representation grows
In Table 2 some results can be appreciated with differentnumber of neurons and input patterns with CPU and GPUruntimes and speedup obtained with GPU version withrespect to the CPU ones The GPU used was a GTX 480NVIDIA graphic card with 480 cores a global memory of15MB and a bandwidth memory of 1774GBsec
35 GNG Maps Applications The experiments showed howthe GNG is able to adapt their topology to represent theinput map space In [19] we showed many applications of theGNG structure in order to improve 3D data representationand computer vision methods We proved that the GNGrepresentation partially discards most of the noisy valuesprovided by these RGB-D sensors In addition we performedsome experiments to show the improvement obtained using
8 Mathematical Problems in Engineering
0002004006008
01012014016018
02
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 10000 20000 30000 40000 6000050000Number of representative points
fr1 360
Voxel gridOctreeGNG
Voxel gridOctreeGNG
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr2 xyz
fr1 xyz
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
0002
004006
00801
012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr1 desk
fr1 desk2
Voxel gridOctreeGNG
fr2 desk
Figure 8 Closest neighbor distance mean errors of the different datasets
the GNG representation on normal estimation using pointneighborhood and keypoint detection and description
Normal estimation methods are based on the analysisof the eigenvectors and eigenvalues of a covariance matrixcreated from the nearest neighbours and are very sensitiveto noisy data Therefore we computed normals on raw andfiltered point clouds in order to demonstrate how a simple3D processing step like normal or curvature estimation isaffected by the presence of noise
Figure 11 shows how more stable normals are estimatedusing filtered point clouds produced by the GNG methodNormals are considered more stable as their distributionis smooth and also they have less abrupt changes in theirdirections Moreover a flat wall with some small changesin its surface was selected to appreciate changes in normaldirectionsWe employed 20000 neurons and 1000120582 patternsas configuration parameters for the GNG method in thenormal estimation experiment Figure 11(b)
Mathematical Problems in Engineering 9
(a) (b)
(c) (d)
Figure 9 (a) Original point cloud map (b) Octree reduction (c) Voxel grid reduction (d) GNG representation
Figure 10 Other examples of GNG representation with two additional maps Left part is a zoomed detail
(a) (b)
Figure 11 Normal estimation comparison (a) Normal estimation on raw point cloud (b) Normal estimation on filtered point cloud producedby the GNG method
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
Mathematical Problems in Engineering 5
(a) (b) (c)
Figure 3 Octree representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to (c)respectively
(a) (b) (c)
Figure 4 Voxel grid representation example of the partial point cloud shown in Figure 1 Front side and top views are shown from (a) to(c) respectively
Table 1 Number of points of each ground-truth map dataset
Dataset Number of input pointsfr1 xyz 1049739fr1 desk 1952544fr1 360 2357039fr1 desk2 2751402fr2 xyz 3492032fr2 desk 5841800fr3 long 1636623
recorded in a large industrial hall (second scenario) Figures 6and 7 show the ground-truth reconstruction maps of the ldquofr1360rdquo and ldquofr2 deskrdquo respectively
Table 1 shows the number of points of the inputmaps usedin the experimentation We can observe that the number ofinput points ranges from one million (ldquofr1 119909119910119911rdquo) to 6 million(ldquofr2 deskrdquo)
32 Quality Adaptation Experiment As we previously men-tioned we are going to compare the proposed GNG adapta-tion with two commonly used data structures in the state-of-the-art Octree and voxel grid The implementation of bothmethods is included in the Point Cloud Library (PCL) (thePoint Cloud Library (or PCL) is a large scale open project[18] for 2D3D image and point cloud processing)TheOctreeimplementation uses the center of the leaf nodes as rep-resentative points However the voxel grid implementationuses the centroid of the points of each nonempty voxel Bothimplementations use a resolution parameter that representsthe size of the voxel in the VG method and the side of the
6 Mathematical Problems in Engineering
00
10
10
20
20
30
30
40
40
Voxel grid
Input pointsVoxel centroid
Voxel centerVoxel
(a)
Octree
0
10
20
30
40
0 10 20 30 40
Input pointsLeaf centerLeaf node
(b)
GNG
GNG
0
10
20
30
40
0 10 20 30 40
Input points
(c)
Figure 5 Two-dimensional examples of the three tested methods
Figure 6 Example of the ldquofr1 360rdquo ground-truth point cloud map
Mathematical Problems in Engineering 7
Figure 7 Example of the ldquofr3 longrdquo ground-truth point cloud map
leaf cell of the Octree implementation The GNG results areobtained using 10000120582 input patterns
We extensively tested the implemented methods usingdifferent number of representatives Since the three testedmethods reduce the amount of noise in the generated mapit is needed to know the real distance from the selectedrepresentatives to the original input space The followingmeasure specifies how close the representations are from theoriginal model
A quantitative measure of the input space adaptationof the generated map is obtained by computing the meanerror (ME) of the reducedmap against sampled points (inputspace)
ME = 1
|119881|sum
119901isin119881
min119902isin119860
1003817100381710038171003817119901 minus 1199021003817100381710038171003817 (4)
where 119881 is the input space 119901 is a point that belongs tothe input space and 119902 is the representative point with theminimum distance to 119901 Euclidean distances to closest pointsare averaged over the entire input space
Figure 8 shows the RMS errors of the three methodson the six different tested maps We observe that the threemethods have similar behavior on the different datasets TheOctree method gets the worse results probably due to theselection of its cell-node center as representative The voxelgrid gets lower errors than Octree due to the use of thecentroid of the inner points instead of using the center of thevoxel or cell
It is important to point out again that the representativeselectionmethod used in this comparison is given by the usedimplementations But Octree and voxel grid methods can usea representative selection strategy GNG adaption shows thebest results on all datasets It is noticeable that the GNG getslower errors with different number of representatives but asthe number of representatives increases the three differentmethods converge to the same error
33 Qualitative Results In this subsection we qualitativelyanalyze the results obtained with the three different methodsFigure 9 shows the original map and the three tested repre-sentations of the ldquofr1 360rdquo scene Part (a) shows the point
Table 2 Runtimes and speed-up of GPU versus CPU implementa-tion for different GNG versions
Neurons Patterns CPU runtime(s)
GPUspeed-up
GPU runtime(s)
5000 250 63 3times 2112000 350 526 5times 105218000 500 1448 6times 24133
cloud that we are trying to represent and reduce Parts (b) and(c) are respectively the Octree and voxel grid representationand part (d) is the GNG representation of the scene TheOctree representation using the centers of the leaf nodes getsa strongly structured point representation This representa-tion gets a more uniform distribution of the representativesbut the adaption error is worse as we saw in Figure 5 andthe mean error graphs The voxel grid representation getssimilar results compared to the Octree where the points areuniformly distributed as it can be observed in the pointsthat represent the floor However it gets better results onthe boundaries compared with the Octree method BothVG and Octree place representatives in isolated and noisypoints However the GNGneurons are uniformly distributedover the input space and the impact of the noisy points andundefined borders on the obtained representation is reducedWe also observe the inherent triangulation of the space thatthe GNG algorithm gets using the neurons neighborhood
Figure 10 shows two more experiments with GNG repre-sentation In these experiments we have selected two mapswith holes GNG is able to adapt to these holes and it doesnot insert neurons in them
34 Execution Time With respect to computational cost ourmethod is feasible to be included in a modern system usinggeneral purpose computing platforms However we designedin a previous work [17] a GPU-based implementation of theGNG algorithm that speeds up the sequential version severaltimes The speedup is increased as the number of neuronsused for the representation grows
In Table 2 some results can be appreciated with differentnumber of neurons and input patterns with CPU and GPUruntimes and speedup obtained with GPU version withrespect to the CPU ones The GPU used was a GTX 480NVIDIA graphic card with 480 cores a global memory of15MB and a bandwidth memory of 1774GBsec
35 GNG Maps Applications The experiments showed howthe GNG is able to adapt their topology to represent theinput map space In [19] we showed many applications of theGNG structure in order to improve 3D data representationand computer vision methods We proved that the GNGrepresentation partially discards most of the noisy valuesprovided by these RGB-D sensors In addition we performedsome experiments to show the improvement obtained using
8 Mathematical Problems in Engineering
0002004006008
01012014016018
02
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 10000 20000 30000 40000 6000050000Number of representative points
fr1 360
Voxel gridOctreeGNG
Voxel gridOctreeGNG
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr2 xyz
fr1 xyz
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
0002
004006
00801
012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr1 desk
fr1 desk2
Voxel gridOctreeGNG
fr2 desk
Figure 8 Closest neighbor distance mean errors of the different datasets
the GNG representation on normal estimation using pointneighborhood and keypoint detection and description
Normal estimation methods are based on the analysisof the eigenvectors and eigenvalues of a covariance matrixcreated from the nearest neighbours and are very sensitiveto noisy data Therefore we computed normals on raw andfiltered point clouds in order to demonstrate how a simple3D processing step like normal or curvature estimation isaffected by the presence of noise
Figure 11 shows how more stable normals are estimatedusing filtered point clouds produced by the GNG methodNormals are considered more stable as their distributionis smooth and also they have less abrupt changes in theirdirections Moreover a flat wall with some small changesin its surface was selected to appreciate changes in normaldirectionsWe employed 20000 neurons and 1000120582 patternsas configuration parameters for the GNG method in thenormal estimation experiment Figure 11(b)
Mathematical Problems in Engineering 9
(a) (b)
(c) (d)
Figure 9 (a) Original point cloud map (b) Octree reduction (c) Voxel grid reduction (d) GNG representation
Figure 10 Other examples of GNG representation with two additional maps Left part is a zoomed detail
(a) (b)
Figure 11 Normal estimation comparison (a) Normal estimation on raw point cloud (b) Normal estimation on filtered point cloud producedby the GNG method
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
6 Mathematical Problems in Engineering
00
10
10
20
20
30
30
40
40
Voxel grid
Input pointsVoxel centroid
Voxel centerVoxel
(a)
Octree
0
10
20
30
40
0 10 20 30 40
Input pointsLeaf centerLeaf node
(b)
GNG
GNG
0
10
20
30
40
0 10 20 30 40
Input points
(c)
Figure 5 Two-dimensional examples of the three tested methods
Figure 6 Example of the ldquofr1 360rdquo ground-truth point cloud map
Mathematical Problems in Engineering 7
Figure 7 Example of the ldquofr3 longrdquo ground-truth point cloud map
leaf cell of the Octree implementation The GNG results areobtained using 10000120582 input patterns
We extensively tested the implemented methods usingdifferent number of representatives Since the three testedmethods reduce the amount of noise in the generated mapit is needed to know the real distance from the selectedrepresentatives to the original input space The followingmeasure specifies how close the representations are from theoriginal model
A quantitative measure of the input space adaptationof the generated map is obtained by computing the meanerror (ME) of the reducedmap against sampled points (inputspace)
ME = 1
|119881|sum
119901isin119881
min119902isin119860
1003817100381710038171003817119901 minus 1199021003817100381710038171003817 (4)
where 119881 is the input space 119901 is a point that belongs tothe input space and 119902 is the representative point with theminimum distance to 119901 Euclidean distances to closest pointsare averaged over the entire input space
Figure 8 shows the RMS errors of the three methodson the six different tested maps We observe that the threemethods have similar behavior on the different datasets TheOctree method gets the worse results probably due to theselection of its cell-node center as representative The voxelgrid gets lower errors than Octree due to the use of thecentroid of the inner points instead of using the center of thevoxel or cell
It is important to point out again that the representativeselectionmethod used in this comparison is given by the usedimplementations But Octree and voxel grid methods can usea representative selection strategy GNG adaption shows thebest results on all datasets It is noticeable that the GNG getslower errors with different number of representatives but asthe number of representatives increases the three differentmethods converge to the same error
33 Qualitative Results In this subsection we qualitativelyanalyze the results obtained with the three different methodsFigure 9 shows the original map and the three tested repre-sentations of the ldquofr1 360rdquo scene Part (a) shows the point
Table 2 Runtimes and speed-up of GPU versus CPU implementa-tion for different GNG versions
Neurons Patterns CPU runtime(s)
GPUspeed-up
GPU runtime(s)
5000 250 63 3times 2112000 350 526 5times 105218000 500 1448 6times 24133
cloud that we are trying to represent and reduce Parts (b) and(c) are respectively the Octree and voxel grid representationand part (d) is the GNG representation of the scene TheOctree representation using the centers of the leaf nodes getsa strongly structured point representation This representa-tion gets a more uniform distribution of the representativesbut the adaption error is worse as we saw in Figure 5 andthe mean error graphs The voxel grid representation getssimilar results compared to the Octree where the points areuniformly distributed as it can be observed in the pointsthat represent the floor However it gets better results onthe boundaries compared with the Octree method BothVG and Octree place representatives in isolated and noisypoints However the GNGneurons are uniformly distributedover the input space and the impact of the noisy points andundefined borders on the obtained representation is reducedWe also observe the inherent triangulation of the space thatthe GNG algorithm gets using the neurons neighborhood
Figure 10 shows two more experiments with GNG repre-sentation In these experiments we have selected two mapswith holes GNG is able to adapt to these holes and it doesnot insert neurons in them
34 Execution Time With respect to computational cost ourmethod is feasible to be included in a modern system usinggeneral purpose computing platforms However we designedin a previous work [17] a GPU-based implementation of theGNG algorithm that speeds up the sequential version severaltimes The speedup is increased as the number of neuronsused for the representation grows
In Table 2 some results can be appreciated with differentnumber of neurons and input patterns with CPU and GPUruntimes and speedup obtained with GPU version withrespect to the CPU ones The GPU used was a GTX 480NVIDIA graphic card with 480 cores a global memory of15MB and a bandwidth memory of 1774GBsec
35 GNG Maps Applications The experiments showed howthe GNG is able to adapt their topology to represent theinput map space In [19] we showed many applications of theGNG structure in order to improve 3D data representationand computer vision methods We proved that the GNGrepresentation partially discards most of the noisy valuesprovided by these RGB-D sensors In addition we performedsome experiments to show the improvement obtained using
8 Mathematical Problems in Engineering
0002004006008
01012014016018
02
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 10000 20000 30000 40000 6000050000Number of representative points
fr1 360
Voxel gridOctreeGNG
Voxel gridOctreeGNG
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr2 xyz
fr1 xyz
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
0002
004006
00801
012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr1 desk
fr1 desk2
Voxel gridOctreeGNG
fr2 desk
Figure 8 Closest neighbor distance mean errors of the different datasets
the GNG representation on normal estimation using pointneighborhood and keypoint detection and description
Normal estimation methods are based on the analysisof the eigenvectors and eigenvalues of a covariance matrixcreated from the nearest neighbours and are very sensitiveto noisy data Therefore we computed normals on raw andfiltered point clouds in order to demonstrate how a simple3D processing step like normal or curvature estimation isaffected by the presence of noise
Figure 11 shows how more stable normals are estimatedusing filtered point clouds produced by the GNG methodNormals are considered more stable as their distributionis smooth and also they have less abrupt changes in theirdirections Moreover a flat wall with some small changesin its surface was selected to appreciate changes in normaldirectionsWe employed 20000 neurons and 1000120582 patternsas configuration parameters for the GNG method in thenormal estimation experiment Figure 11(b)
Mathematical Problems in Engineering 9
(a) (b)
(c) (d)
Figure 9 (a) Original point cloud map (b) Octree reduction (c) Voxel grid reduction (d) GNG representation
Figure 10 Other examples of GNG representation with two additional maps Left part is a zoomed detail
(a) (b)
Figure 11 Normal estimation comparison (a) Normal estimation on raw point cloud (b) Normal estimation on filtered point cloud producedby the GNG method
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
Mathematical Problems in Engineering 7
Figure 7 Example of the ldquofr3 longrdquo ground-truth point cloud map
leaf cell of the Octree implementation The GNG results areobtained using 10000120582 input patterns
We extensively tested the implemented methods usingdifferent number of representatives Since the three testedmethods reduce the amount of noise in the generated mapit is needed to know the real distance from the selectedrepresentatives to the original input space The followingmeasure specifies how close the representations are from theoriginal model
A quantitative measure of the input space adaptationof the generated map is obtained by computing the meanerror (ME) of the reducedmap against sampled points (inputspace)
ME = 1
|119881|sum
119901isin119881
min119902isin119860
1003817100381710038171003817119901 minus 1199021003817100381710038171003817 (4)
where 119881 is the input space 119901 is a point that belongs tothe input space and 119902 is the representative point with theminimum distance to 119901 Euclidean distances to closest pointsare averaged over the entire input space
Figure 8 shows the RMS errors of the three methodson the six different tested maps We observe that the threemethods have similar behavior on the different datasets TheOctree method gets the worse results probably due to theselection of its cell-node center as representative The voxelgrid gets lower errors than Octree due to the use of thecentroid of the inner points instead of using the center of thevoxel or cell
It is important to point out again that the representativeselectionmethod used in this comparison is given by the usedimplementations But Octree and voxel grid methods can usea representative selection strategy GNG adaption shows thebest results on all datasets It is noticeable that the GNG getslower errors with different number of representatives but asthe number of representatives increases the three differentmethods converge to the same error
33 Qualitative Results In this subsection we qualitativelyanalyze the results obtained with the three different methodsFigure 9 shows the original map and the three tested repre-sentations of the ldquofr1 360rdquo scene Part (a) shows the point
Table 2 Runtimes and speed-up of GPU versus CPU implementa-tion for different GNG versions
Neurons Patterns CPU runtime(s)
GPUspeed-up
GPU runtime(s)
5000 250 63 3times 2112000 350 526 5times 105218000 500 1448 6times 24133
cloud that we are trying to represent and reduce Parts (b) and(c) are respectively the Octree and voxel grid representationand part (d) is the GNG representation of the scene TheOctree representation using the centers of the leaf nodes getsa strongly structured point representation This representa-tion gets a more uniform distribution of the representativesbut the adaption error is worse as we saw in Figure 5 andthe mean error graphs The voxel grid representation getssimilar results compared to the Octree where the points areuniformly distributed as it can be observed in the pointsthat represent the floor However it gets better results onthe boundaries compared with the Octree method BothVG and Octree place representatives in isolated and noisypoints However the GNGneurons are uniformly distributedover the input space and the impact of the noisy points andundefined borders on the obtained representation is reducedWe also observe the inherent triangulation of the space thatthe GNG algorithm gets using the neurons neighborhood
Figure 10 shows two more experiments with GNG repre-sentation In these experiments we have selected two mapswith holes GNG is able to adapt to these holes and it doesnot insert neurons in them
34 Execution Time With respect to computational cost ourmethod is feasible to be included in a modern system usinggeneral purpose computing platforms However we designedin a previous work [17] a GPU-based implementation of theGNG algorithm that speeds up the sequential version severaltimes The speedup is increased as the number of neuronsused for the representation grows
In Table 2 some results can be appreciated with differentnumber of neurons and input patterns with CPU and GPUruntimes and speedup obtained with GPU version withrespect to the CPU ones The GPU used was a GTX 480NVIDIA graphic card with 480 cores a global memory of15MB and a bandwidth memory of 1774GBsec
35 GNG Maps Applications The experiments showed howthe GNG is able to adapt their topology to represent theinput map space In [19] we showed many applications of theGNG structure in order to improve 3D data representationand computer vision methods We proved that the GNGrepresentation partially discards most of the noisy valuesprovided by these RGB-D sensors In addition we performedsome experiments to show the improvement obtained using
8 Mathematical Problems in Engineering
0002004006008
01012014016018
02
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 10000 20000 30000 40000 6000050000Number of representative points
fr1 360
Voxel gridOctreeGNG
Voxel gridOctreeGNG
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr2 xyz
fr1 xyz
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
0002
004006
00801
012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr1 desk
fr1 desk2
Voxel gridOctreeGNG
fr2 desk
Figure 8 Closest neighbor distance mean errors of the different datasets
the GNG representation on normal estimation using pointneighborhood and keypoint detection and description
Normal estimation methods are based on the analysisof the eigenvectors and eigenvalues of a covariance matrixcreated from the nearest neighbours and are very sensitiveto noisy data Therefore we computed normals on raw andfiltered point clouds in order to demonstrate how a simple3D processing step like normal or curvature estimation isaffected by the presence of noise
Figure 11 shows how more stable normals are estimatedusing filtered point clouds produced by the GNG methodNormals are considered more stable as their distributionis smooth and also they have less abrupt changes in theirdirections Moreover a flat wall with some small changesin its surface was selected to appreciate changes in normaldirectionsWe employed 20000 neurons and 1000120582 patternsas configuration parameters for the GNG method in thenormal estimation experiment Figure 11(b)
Mathematical Problems in Engineering 9
(a) (b)
(c) (d)
Figure 9 (a) Original point cloud map (b) Octree reduction (c) Voxel grid reduction (d) GNG representation
Figure 10 Other examples of GNG representation with two additional maps Left part is a zoomed detail
(a) (b)
Figure 11 Normal estimation comparison (a) Normal estimation on raw point cloud (b) Normal estimation on filtered point cloud producedby the GNG method
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
8 Mathematical Problems in Engineering
0002004006008
01012014016018
02
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
0 10000 20000 30000 40000 6000050000Number of representative points
fr1 360
Voxel gridOctreeGNG
Voxel gridOctreeGNG
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr2 xyz
fr1 xyz
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
0002
004006
00801
012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0002004006008
01012014016018
02
Mea
n di
stan
ce er
ror (
m)
0 5000 10000 15000 20000 25000 30000 35000Number of representative points
Voxel gridOctreeGNG
fr1 desk
fr1 desk2
Voxel gridOctreeGNG
fr2 desk
Figure 8 Closest neighbor distance mean errors of the different datasets
the GNG representation on normal estimation using pointneighborhood and keypoint detection and description
Normal estimation methods are based on the analysisof the eigenvectors and eigenvalues of a covariance matrixcreated from the nearest neighbours and are very sensitiveto noisy data Therefore we computed normals on raw andfiltered point clouds in order to demonstrate how a simple3D processing step like normal or curvature estimation isaffected by the presence of noise
Figure 11 shows how more stable normals are estimatedusing filtered point clouds produced by the GNG methodNormals are considered more stable as their distributionis smooth and also they have less abrupt changes in theirdirections Moreover a flat wall with some small changesin its surface was selected to appreciate changes in normaldirectionsWe employed 20000 neurons and 1000120582 patternsas configuration parameters for the GNG method in thenormal estimation experiment Figure 11(b)
Mathematical Problems in Engineering 9
(a) (b)
(c) (d)
Figure 9 (a) Original point cloud map (b) Octree reduction (c) Voxel grid reduction (d) GNG representation
Figure 10 Other examples of GNG representation with two additional maps Left part is a zoomed detail
(a) (b)
Figure 11 Normal estimation comparison (a) Normal estimation on raw point cloud (b) Normal estimation on filtered point cloud producedby the GNG method
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
Mathematical Problems in Engineering 9
(a) (b)
(c) (d)
Figure 9 (a) Original point cloud map (b) Octree reduction (c) Voxel grid reduction (d) GNG representation
Figure 10 Other examples of GNG representation with two additional maps Left part is a zoomed detail
(a) (b)
Figure 11 Normal estimation comparison (a) Normal estimation on raw point cloud (b) Normal estimation on filtered point cloud producedby the GNG method
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
10 Mathematical Problems in Engineering
Table 3 RMS deviation error (meters) is obtained using different detector-descriptor combinations Combinations are computed on theoriginal point cloud (raw) and different filtered point clouds using voxel grid and the proposed GNG method Keypoint detector searchradius is equal to 005 meters Feature extractor search radius is equal to 002 meters
GNG VG Raw5000119901 10000119901 20000119901 5000119901 10000119901 20000119901 All points
SIFT3D
FPFH 0168 0092 0231 0239 0073 0139 0103CSHOT 0052 0037 0019 0063 007 0037 0039PFH 0185 0367 0255 054 0171 0375 0082
PFHRGB 0106 0029 0057 008 005 0027 0041
Harris3D
FPFH 0151 0114 0079 0404 0088 018 0128CSHOT 0085 0046 0052 0038 0033 0069 0066PFH 0109 0177 0153 0305 0097 0469 0144
PFHRGB 0054 0047 0042 0033 0058 0043 0093
Tomasi3D
FPFH 0049 0054 027 0383 0127 0148 0659CSHOT 0043 0023 0063 0022 0047 0046 0049PFH 0189 0308 0319 0067 0258 0123 0765
PFHRGB 0112 0121 0066 0066 0049 0078 0062
Noble3D
FPFH 0143 0186 0199 0387 0188 0289 0114CSHOT 0098 0052 0063 0085 0059 0048 006PFH 0273 0127 0239 0073 0244 0188 0099
PFHRGB 0188 0117 0064 0096 0082 0079 0077
Lowe3D
FPFH 0143 0117 0076 0387 0188 0093 0203CSHOT 0065 0052 0062 004 0059 0107 0067PFH 0273 012 0239 0073 0244 0167 024
PFHRGB 0188 0135 0016 0077 0082 0076 0027
Curvature3D
FPFH 0099 0228 0113 0228 0103 0093 mdashCSHOT 0048 0032 0022 0033 0042 005 mdashPFH 0262 0151 0123 0244 0101 0057 mdash
PFHRGB 0139 0071 0053 0068 0083 0023 mdash
In order to test the keypoint detectordescriptor improve-ment we performed a transformation estimation algorithmand we compared the GNG results against the voxel gridrepresentation and against the entire source point cloud Weused the available descriptors [18 20 21] and detectors [22]provided by the Point Cloud Library [23] The minimummedian mean and maximum of RMS transformation error(with respect to different keypoint detectors) are presentedin Table 3 These results show how filtered point cloudsusing the GNG method generally improved the precisionof the estimated transformation Moreover the worst esti-mated transformations (maximum errors) were also slightlyimproved using the GNG compared to the other techniques
4 Conclusions
3D maps obtained from RGB-D data are useful for roboticstasks like robot navigation But this kind of maps containsa huge amount of data which must be reduced to properlyprocess the map In this paper we have presented a methodto represent and reduce 3D maps Our method is based on aGNG neural network which is adapted to the 3D input spaceThe experiments carried out demonstrated the validity of our
method as it provided better adaptation than two of themostused methods for these tasks voxel grid and Octree
As future works we propose to extend our method toprovide a useful map for robot navigation We also planto provide the GNG with a way to revert the reduction orcompression of the points storing information in the neuronsneighborhood (color point distribution etc)
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper
Acknowledgments
This work was partially funded by the Spanish GovernmentDPI2013-40534-R grant Experiments were made possiblewith a generous donation of hardware from NVDIA
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
Mathematical Problems in Engineering 11
References
[1] D Fox S Thrun and W Burgard Probabilistic Robotics TheMIT Press Cambridge Mass USA 2005
[2] M Herbert C Caillas E Krotkov I S Kweon and T KanadeldquoTerrain mapping for a roving planetary explorerrdquo in Pro-ceedings of the IEEE International Conference on Robotics andAutomation vol 2 pp 997ndash1002 1989
[3] R Triebel P Pfaff and W Burgard ldquoMulti-level surface mapsfor outdoor terrain mapping and loop closingrdquo in Proceedingsof the IEEERSJ International Conference on Intelligent Robotsand Systems (IROS rsquo06) pp 2276ndash2282 October 2006
[4] A Elfes ldquoUsing occupancy grids for mobile robot perceptionand navigationrdquo Computer vol 22 no 6 pp 46ndash57 1989
[5] P Stepan M Kulich and L Preucil ldquoRobust data fusionwith occupancy gridrdquo IEEE Transactions on Systems Man andCybernetics C vol 35 no 1 pp 106ndash115 2005
[6] B Schiele and J L Crowley ldquoA comparison of positionestimation techniques using occupancy gridsrdquo Robotics andAutonomous Systems vol 12 no 3-4 pp 163ndash171 1994
[7] C I Connolly ldquoCumulative generation of octree models fromrange datardquo in Proceedings of the 1st International Conference onRobotics and Automation vol 1 pp 25ndash32 March 1984
[8] K M Wurm A Hornung M Bennewitz C Stachniss andW Burgard ldquoOctoMap a probabilistic flexible and compact3D map representation for robotic systemsrdquo in Proceedings ofthe IEEE International Conference on Robotics and Automation(ICRA rsquo10) 2010
[9] L Kobbelt and M Botsch ldquoA survey of point-based techniquesin computer graphicsrdquo Computers and Graphics vol 28 no 6pp 801ndash814 2004
[10] L Wang J Chen and B Yuan ldquoSimplified representationfor 3D point cloud datardquo in Proceedings of the IEEE 10thInternational Conference on Signal Processing (ICSP rsquo10) pp1271ndash1274 October 2010
[11] D Viejo J Garcia M Cazorla D Gil and M Johnsson ldquoUsingGNG to improve 3D feature extraction application to 6DoFegomotionrdquo Neural Networks vol 32 pp 138ndash146 2012
[12] T Kohonen Self-Organizing Maps vol 30 of Springer Series inInformation Sciences Springer Berlin Germany 1995
[13] B Fritzke ldquoA growing neural gas network learns topologiesrdquo inAdvances in Neural Information Processing Systems vol 7 pp625ndash632 MIT Press 1995
[14] T Martinetz ldquoCompetitive hebbian learning rule forms per-fectly topology preserving mapsrdquo in Proceedings of the Interna-tional Conference onArtificial NeuralNetworks (ICANN rsquo93) pp427ndash434 1993
[15] T Martinetz and K Schulten ldquoTopology representing net-worksrdquo Neural Networks vol 7 no 3 pp 507ndash522 1994
[16] G Xu B Mourrain R Duvigneau and A Galligo ldquoAnalysis-suitable volume parameterization ofmulti-block computationaldomain in isogeometric applicationsrdquo Computer-Aided Designvol 45 no 2 pp 395ndash404 2013
[17] SOrts J Garcia-RodriguezDViejoMCazorla andVMorellldquoGPGPU implementation of growing neural gas Applicationto 3D scene reconstructionrdquo Journal of Parallel and DistributedComputing vol 72 no 10 pp 1361ndash1372 2012
[18] F Tombari S Salti and L Di Stefano ldquoA combined texture-shape descriptor for enhanced 3D feature matchingrdquo in Pro-ceedings of the 18th IEEE International Conference on ImageProcessing (ICIP rsquo11) pp 809ndash812 September 2011
[19] S Orts-Escolano A Three-Dimensional Representation Methodfor Noisy Point Clouds Based on Growing Self-Organizing MapsAccelerated on GPUs University of Alicante 2014
[20] R B Rusu N Blodow Z C Marton and M Beetz ldquoAligningpoint cloud views using persistent feature histogramsrdquo in Pro-ceedings of the IEEERSJ International Conference on IntelligentRobots and Systems (IROS 08) pp 3384ndash3391 Nice FranceSeptember 2008
[21] R B Rusu N Blodow and M Beetz ldquoFast point featurehistograms (FPFH) for 3D registrationrdquo in Proceedings of theIEEE International Conference on Robotics and Automation(ICRA rsquo09) pp 3212ndash3217 Kobe Japan May 2009
[22] I Sipiran and B Bustos ldquoHarris 3D a robust extension of theHarris operator for interest point detection on 3D meshesrdquoVisual Computer vol 27 no 11 pp 963ndash976 2011
[23] R B Rusu and S Cousins ldquo3D is here Point Cloud Library(PCL)rdquo in Proceeding of the IEEE International Conference onRobotics and Automation (ICRA 11) pp 1ndash4 Shanghai ChinaMay 2011
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of
Submit your manuscripts athttpwwwhindawicom
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttpwwwhindawicom
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttpwwwhindawicom
Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014
Stochastic AnalysisInternational Journal of