diff --git a/trunk/bin/tabletop_object_detection_test b/trunk/bin/tabletop_object_detection_test
index b054cbf78166ec0dac7a3241136dc00ae9eb1549..7c1426968a655633b504979b40336864783bb6cf 100755
Binary files a/trunk/bin/tabletop_object_detection_test and b/trunk/bin/tabletop_object_detection_test differ
diff --git a/trunk/build/CMakeFiles/doc.dir/depend.internal b/trunk/build/CMakeFiles/doc.dir/depend.internal
new file mode 100644
index 0000000000000000000000000000000000000000..38eae05f3398a65e78ad308f0e89165462d74d9b
--- /dev/null
+++ b/trunk/build/CMakeFiles/doc.dir/depend.internal
@@ -0,0 +1,3 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
diff --git a/trunk/build/CMakeFiles/doc.dir/depend.make b/trunk/build/CMakeFiles/doc.dir/depend.make
new file mode 100644
index 0000000000000000000000000000000000000000..38eae05f3398a65e78ad308f0e89165462d74d9b
--- /dev/null
+++ b/trunk/build/CMakeFiles/doc.dir/depend.make
@@ -0,0 +1,3 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.8
+
diff --git a/trunk/build/src/examples/CMakeFiles/tabletop_object_detection_test.dir/CXX.includecache b/trunk/build/src/examples/CMakeFiles/tabletop_object_detection_test.dir/CXX.includecache
index b84d7a1defb84a5294a3026379f4b7571d2e18b8..f5ac9968fe15f2c7feda945a430f01f8928047c0 100644
--- a/trunk/build/src/examples/CMakeFiles/tabletop_object_detection_test.dir/CXX.includecache
+++ b/trunk/build/src/examples/CMakeFiles/tabletop_object_detection_test.dir/CXX.includecache
@@ -6,3 +6,3777 @@
 
 #IncludeRegexTransform: 
 
+../src/./tabletop_object_detection.h
+pcl/console/parse.h
+-
+pcl/point_cloud.h
+-
+pcl/point_types.h
+-
+pcl/io/pcd_io.h
+-
+pcl/visualization/pcl_visualizer.h
+-
+pcl/segmentation/supervoxel_clustering.h
+-
+iostream
+-
+pcl/ModelCoefficients.h
+-
+pcl/io/pcd_io.h
+-
+pcl/sample_consensus/method_types.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/segmentation/sac_segmentation.h
+-
+pcl/filters/extract_indices.h
+-
+pcl/segmentation/lccp_segmentation.h
+-
+vtkPolyLine.h
+-
+pcl/sample_consensus/method_types.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/segmentation/sac_segmentation.h
+-
+pcl/filters/extract_indices.h
+-
+pcl/surface/convex_hull.h
+-
+pcl/segmentation/extract_polygonal_prism_data.h
+-
+
+/home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/examples/tabletop_object_detection_test.cpp
+tabletop_object_detection.h
+/home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/examples/tabletop_object_detection.h
+pcl/visualization/pcl_visualizer.h
+-
+opencv2/imgproc/imgproc.hpp
+/home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/examples/opencv2/imgproc/imgproc.hpp
+opencv2/highgui/highgui.hpp
+/home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/examples/opencv2/highgui/highgui.hpp
+opencv2/core/core.hpp
+/home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/examples/opencv2/core/core.hpp
+pcl/kdtree/kdtree_flann.h
+-
+
+/usr/include/eigen3/Eigen/Cholesky
+Core
+/usr/include/eigen3/Eigen/Core
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+src/misc/Solve.h
+/usr/include/eigen3/Eigen/src/misc/Solve.h
+src/Cholesky/LLT.h
+/usr/include/eigen3/Eigen/src/Cholesky/LLT.h
+src/Cholesky/LDLT.h
+/usr/include/eigen3/Eigen/src/Cholesky/LDLT.h
+src/Cholesky/LLT_MKL.h
+/usr/include/eigen3/Eigen/src/Cholesky/LLT_MKL.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+
+/usr/include/eigen3/Eigen/Core
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+src/Core/util/Macros.h
+/usr/include/eigen3/Eigen/src/Core/util/Macros.h
+complex
+-
+src/Core/util/MKL_support.h
+/usr/include/eigen3/Eigen/src/Core/util/MKL_support.h
+malloc.h
+-
+immintrin.h
+-
+emmintrin.h
+-
+xmmintrin.h
+-
+pmmintrin.h
+-
+tmmintrin.h
+-
+smmintrin.h
+-
+nmmintrin.h
+-
+altivec.h
+-
+arm_neon.h
+-
+omp.h
+-
+cerrno
+-
+cstddef
+-
+cstdlib
+-
+cmath
+-
+cassert
+-
+functional
+-
+iosfwd
+-
+cstring
+-
+string
+-
+limits
+-
+climits
+-
+algorithm
+-
+iostream
+-
+intrin.h
+-
+new
+-
+src/Core/util/Constants.h
+/usr/include/eigen3/Eigen/src/Core/util/Constants.h
+src/Core/util/ForwardDeclarations.h
+/usr/include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h
+src/Core/util/Meta.h
+/usr/include/eigen3/Eigen/src/Core/util/Meta.h
+src/Core/util/StaticAssert.h
+/usr/include/eigen3/Eigen/src/Core/util/StaticAssert.h
+src/Core/util/XprHelper.h
+/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h
+src/Core/util/Memory.h
+/usr/include/eigen3/Eigen/src/Core/util/Memory.h
+src/Core/NumTraits.h
+/usr/include/eigen3/Eigen/src/Core/NumTraits.h
+src/Core/MathFunctions.h
+/usr/include/eigen3/Eigen/src/Core/MathFunctions.h
+src/Core/GenericPacketMath.h
+/usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h
+src/Core/arch/SSE/PacketMath.h
+/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
+src/Core/arch/SSE/MathFunctions.h
+/usr/include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
+src/Core/arch/SSE/Complex.h
+/usr/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h
+src/Core/arch/AltiVec/PacketMath.h
+/usr/include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h
+src/Core/arch/AltiVec/Complex.h
+/usr/include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h
+src/Core/arch/NEON/PacketMath.h
+/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h
+src/Core/arch/NEON/Complex.h
+/usr/include/eigen3/Eigen/src/Core/arch/NEON/Complex.h
+src/Core/arch/Default/Settings.h
+/usr/include/eigen3/Eigen/src/Core/arch/Default/Settings.h
+src/Core/Functors.h
+/usr/include/eigen3/Eigen/src/Core/Functors.h
+src/Core/DenseCoeffsBase.h
+/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h
+src/Core/DenseBase.h
+/usr/include/eigen3/Eigen/src/Core/DenseBase.h
+src/Core/MatrixBase.h
+/usr/include/eigen3/Eigen/src/Core/MatrixBase.h
+src/Core/EigenBase.h
+/usr/include/eigen3/Eigen/src/Core/EigenBase.h
+src/Core/Assign.h
+/usr/include/eigen3/Eigen/src/Core/Assign.h
+src/Core/util/BlasUtil.h
+/usr/include/eigen3/Eigen/src/Core/util/BlasUtil.h
+src/Core/DenseStorage.h
+/usr/include/eigen3/Eigen/src/Core/DenseStorage.h
+src/Core/NestByValue.h
+/usr/include/eigen3/Eigen/src/Core/NestByValue.h
+src/Core/ForceAlignedAccess.h
+/usr/include/eigen3/Eigen/src/Core/ForceAlignedAccess.h
+src/Core/ReturnByValue.h
+/usr/include/eigen3/Eigen/src/Core/ReturnByValue.h
+src/Core/NoAlias.h
+/usr/include/eigen3/Eigen/src/Core/NoAlias.h
+src/Core/PlainObjectBase.h
+/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h
+src/Core/Matrix.h
+/usr/include/eigen3/Eigen/src/Core/Matrix.h
+src/Core/Array.h
+/usr/include/eigen3/Eigen/src/Core/Array.h
+src/Core/CwiseBinaryOp.h
+/usr/include/eigen3/Eigen/src/Core/CwiseBinaryOp.h
+src/Core/CwiseUnaryOp.h
+/usr/include/eigen3/Eigen/src/Core/CwiseUnaryOp.h
+src/Core/CwiseNullaryOp.h
+/usr/include/eigen3/Eigen/src/Core/CwiseNullaryOp.h
+src/Core/CwiseUnaryView.h
+/usr/include/eigen3/Eigen/src/Core/CwiseUnaryView.h
+src/Core/SelfCwiseBinaryOp.h
+/usr/include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h
+src/Core/Dot.h
+/usr/include/eigen3/Eigen/src/Core/Dot.h
+src/Core/StableNorm.h
+/usr/include/eigen3/Eigen/src/Core/StableNorm.h
+src/Core/MapBase.h
+/usr/include/eigen3/Eigen/src/Core/MapBase.h
+src/Core/Stride.h
+/usr/include/eigen3/Eigen/src/Core/Stride.h
+src/Core/Map.h
+/usr/include/eigen3/Eigen/src/Core/Map.h
+src/Core/Block.h
+/usr/include/eigen3/Eigen/src/Core/Block.h
+src/Core/VectorBlock.h
+/usr/include/eigen3/Eigen/src/Core/VectorBlock.h
+src/Core/Ref.h
+/usr/include/eigen3/Eigen/src/Core/Ref.h
+src/Core/Transpose.h
+/usr/include/eigen3/Eigen/src/Core/Transpose.h
+src/Core/DiagonalMatrix.h
+/usr/include/eigen3/Eigen/src/Core/DiagonalMatrix.h
+src/Core/Diagonal.h
+/usr/include/eigen3/Eigen/src/Core/Diagonal.h
+src/Core/DiagonalProduct.h
+/usr/include/eigen3/Eigen/src/Core/DiagonalProduct.h
+src/Core/PermutationMatrix.h
+/usr/include/eigen3/Eigen/src/Core/PermutationMatrix.h
+src/Core/Transpositions.h
+/usr/include/eigen3/Eigen/src/Core/Transpositions.h
+src/Core/Redux.h
+/usr/include/eigen3/Eigen/src/Core/Redux.h
+src/Core/Visitor.h
+/usr/include/eigen3/Eigen/src/Core/Visitor.h
+src/Core/Fuzzy.h
+/usr/include/eigen3/Eigen/src/Core/Fuzzy.h
+src/Core/IO.h
+/usr/include/eigen3/Eigen/src/Core/IO.h
+src/Core/Swap.h
+/usr/include/eigen3/Eigen/src/Core/Swap.h
+src/Core/CommaInitializer.h
+/usr/include/eigen3/Eigen/src/Core/CommaInitializer.h
+src/Core/Flagged.h
+/usr/include/eigen3/Eigen/src/Core/Flagged.h
+src/Core/ProductBase.h
+/usr/include/eigen3/Eigen/src/Core/ProductBase.h
+src/Core/GeneralProduct.h
+/usr/include/eigen3/Eigen/src/Core/GeneralProduct.h
+src/Core/TriangularMatrix.h
+/usr/include/eigen3/Eigen/src/Core/TriangularMatrix.h
+src/Core/SelfAdjointView.h
+/usr/include/eigen3/Eigen/src/Core/SelfAdjointView.h
+src/Core/products/GeneralBlockPanelKernel.h
+/usr/include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h
+src/Core/products/Parallelizer.h
+/usr/include/eigen3/Eigen/src/Core/products/Parallelizer.h
+src/Core/products/CoeffBasedProduct.h
+/usr/include/eigen3/Eigen/src/Core/products/CoeffBasedProduct.h
+src/Core/products/GeneralMatrixVector.h
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h
+src/Core/products/GeneralMatrixMatrix.h
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h
+src/Core/SolveTriangular.h
+/usr/include/eigen3/Eigen/src/Core/SolveTriangular.h
+src/Core/products/GeneralMatrixMatrixTriangular.h
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h
+src/Core/products/SelfadjointMatrixVector.h
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h
+src/Core/products/SelfadjointMatrixMatrix.h
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h
+src/Core/products/SelfadjointProduct.h
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h
+src/Core/products/SelfadjointRank2Update.h
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h
+src/Core/products/TriangularMatrixVector.h
+/usr/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h
+src/Core/products/TriangularMatrixMatrix.h
+/usr/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h
+src/Core/products/TriangularSolverMatrix.h
+/usr/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h
+src/Core/products/TriangularSolverVector.h
+/usr/include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h
+src/Core/BandMatrix.h
+/usr/include/eigen3/Eigen/src/Core/BandMatrix.h
+src/Core/CoreIterators.h
+/usr/include/eigen3/Eigen/src/Core/CoreIterators.h
+src/Core/BooleanRedux.h
+/usr/include/eigen3/Eigen/src/Core/BooleanRedux.h
+src/Core/Select.h
+/usr/include/eigen3/Eigen/src/Core/Select.h
+src/Core/VectorwiseOp.h
+/usr/include/eigen3/Eigen/src/Core/VectorwiseOp.h
+src/Core/Random.h
+/usr/include/eigen3/Eigen/src/Core/Random.h
+src/Core/Replicate.h
+/usr/include/eigen3/Eigen/src/Core/Replicate.h
+src/Core/Reverse.h
+/usr/include/eigen3/Eigen/src/Core/Reverse.h
+src/Core/ArrayBase.h
+/usr/include/eigen3/Eigen/src/Core/ArrayBase.h
+src/Core/ArrayWrapper.h
+/usr/include/eigen3/Eigen/src/Core/ArrayWrapper.h
+src/Core/products/GeneralMatrixMatrix_MKL.h
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_MKL.h
+src/Core/products/GeneralMatrixVector_MKL.h
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_MKL.h
+src/Core/products/GeneralMatrixMatrixTriangular_MKL.h
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_MKL.h
+src/Core/products/SelfadjointMatrixMatrix_MKL.h
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_MKL.h
+src/Core/products/SelfadjointMatrixVector_MKL.h
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_MKL.h
+src/Core/products/TriangularMatrixMatrix_MKL.h
+/usr/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_MKL.h
+src/Core/products/TriangularMatrixVector_MKL.h
+/usr/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_MKL.h
+src/Core/products/TriangularSolverMatrix_MKL.h
+/usr/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_MKL.h
+src/Core/Assign_MKL.h
+/usr/include/eigen3/Eigen/src/Core/Assign_MKL.h
+src/Core/GlobalFunctions.h
+/usr/include/eigen3/Eigen/src/Core/GlobalFunctions.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+Eigen2Support
+/usr/include/eigen3/Eigen/Eigen2Support
+
+/usr/include/eigen3/Eigen/Dense
+Core
+/usr/include/eigen3/Eigen/Core
+LU
+/usr/include/eigen3/Eigen/LU
+Cholesky
+/usr/include/eigen3/Eigen/Cholesky
+QR
+/usr/include/eigen3/Eigen/QR
+SVD
+/usr/include/eigen3/Eigen/SVD
+Geometry
+/usr/include/eigen3/Eigen/Geometry
+Eigenvalues
+/usr/include/eigen3/Eigen/Eigenvalues
+
+/usr/include/eigen3/Eigen/Eigen2Support
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+src/Eigen2Support/Macros.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Macros.h
+src/Eigen2Support/Memory.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Memory.h
+src/Eigen2Support/Meta.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Meta.h
+src/Eigen2Support/Lazy.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Lazy.h
+src/Eigen2Support/Cwise.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Cwise.h
+src/Eigen2Support/CwiseOperators.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/CwiseOperators.h
+src/Eigen2Support/TriangularSolver.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/TriangularSolver.h
+src/Eigen2Support/Block.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Block.h
+src/Eigen2Support/VectorBlock.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/VectorBlock.h
+src/Eigen2Support/Minor.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Minor.h
+src/Eigen2Support/MathFunctions.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/MathFunctions.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+iostream
+-
+
+/usr/include/eigen3/Eigen/Eigenvalues
+Core
+/usr/include/eigen3/Eigen/Core
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+Cholesky
+/usr/include/eigen3/Eigen/Cholesky
+Jacobi
+/usr/include/eigen3/Eigen/Jacobi
+Householder
+/usr/include/eigen3/Eigen/Householder
+LU
+/usr/include/eigen3/Eigen/LU
+Geometry
+/usr/include/eigen3/Eigen/Geometry
+src/Eigenvalues/Tridiagonalization.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
+src/Eigenvalues/RealSchur.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/RealSchur.h
+src/Eigenvalues/EigenSolver.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h
+src/Eigenvalues/SelfAdjointEigenSolver.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h
+src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
+src/Eigenvalues/HessenbergDecomposition.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
+src/Eigenvalues/ComplexSchur.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
+src/Eigenvalues/ComplexEigenSolver.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h
+src/Eigenvalues/RealQZ.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/RealQZ.h
+src/Eigenvalues/GeneralizedEigenSolver.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h
+src/Eigenvalues/MatrixBaseEigenvalues.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h
+src/Eigenvalues/RealSchur_MKL.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/RealSchur_MKL.h
+src/Eigenvalues/ComplexSchur_MKL.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_MKL.h
+src/Eigenvalues/SelfAdjointEigenSolver_MKL.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_MKL.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+
+/usr/include/eigen3/Eigen/Geometry
+Core
+/usr/include/eigen3/Eigen/Core
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+SVD
+/usr/include/eigen3/Eigen/SVD
+LU
+/usr/include/eigen3/Eigen/LU
+limits
+-
+src/Geometry/OrthoMethods.h
+/usr/include/eigen3/Eigen/src/Geometry/OrthoMethods.h
+src/Geometry/EulerAngles.h
+/usr/include/eigen3/Eigen/src/Geometry/EulerAngles.h
+src/Geometry/Homogeneous.h
+/usr/include/eigen3/Eigen/src/Geometry/Homogeneous.h
+src/Geometry/RotationBase.h
+/usr/include/eigen3/Eigen/src/Geometry/RotationBase.h
+src/Geometry/Rotation2D.h
+/usr/include/eigen3/Eigen/src/Geometry/Rotation2D.h
+src/Geometry/Quaternion.h
+/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h
+src/Geometry/AngleAxis.h
+/usr/include/eigen3/Eigen/src/Geometry/AngleAxis.h
+src/Geometry/Transform.h
+/usr/include/eigen3/Eigen/src/Geometry/Transform.h
+src/Geometry/Translation.h
+/usr/include/eigen3/Eigen/src/Geometry/Translation.h
+src/Geometry/Scaling.h
+/usr/include/eigen3/Eigen/src/Geometry/Scaling.h
+src/Geometry/Hyperplane.h
+/usr/include/eigen3/Eigen/src/Geometry/Hyperplane.h
+src/Geometry/ParametrizedLine.h
+/usr/include/eigen3/Eigen/src/Geometry/ParametrizedLine.h
+src/Geometry/AlignedBox.h
+/usr/include/eigen3/Eigen/src/Geometry/AlignedBox.h
+src/Geometry/Umeyama.h
+/usr/include/eigen3/Eigen/src/Geometry/Umeyama.h
+src/Geometry/arch/Geometry_SSE.h
+/usr/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h
+src/Eigen2Support/Geometry/All.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/All.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+
+/usr/include/eigen3/Eigen/Householder
+Core
+/usr/include/eigen3/Eigen/Core
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+src/Householder/Householder.h
+/usr/include/eigen3/Eigen/src/Householder/Householder.h
+src/Householder/HouseholderSequence.h
+/usr/include/eigen3/Eigen/src/Householder/HouseholderSequence.h
+src/Householder/BlockHouseholder.h
+/usr/include/eigen3/Eigen/src/Householder/BlockHouseholder.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+
+/usr/include/eigen3/Eigen/Jacobi
+Core
+/usr/include/eigen3/Eigen/Core
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+src/Jacobi/Jacobi.h
+/usr/include/eigen3/Eigen/src/Jacobi/Jacobi.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+
+/usr/include/eigen3/Eigen/LU
+Core
+/usr/include/eigen3/Eigen/Core
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+src/misc/Solve.h
+/usr/include/eigen3/Eigen/src/misc/Solve.h
+src/misc/Kernel.h
+/usr/include/eigen3/Eigen/src/misc/Kernel.h
+src/misc/Image.h
+/usr/include/eigen3/Eigen/src/misc/Image.h
+src/LU/FullPivLU.h
+/usr/include/eigen3/Eigen/src/LU/FullPivLU.h
+src/LU/PartialPivLU.h
+/usr/include/eigen3/Eigen/src/LU/PartialPivLU.h
+src/LU/PartialPivLU_MKL.h
+/usr/include/eigen3/Eigen/src/LU/PartialPivLU_MKL.h
+src/LU/Determinant.h
+/usr/include/eigen3/Eigen/src/LU/Determinant.h
+src/LU/Inverse.h
+/usr/include/eigen3/Eigen/src/LU/Inverse.h
+src/LU/arch/Inverse_SSE.h
+/usr/include/eigen3/Eigen/src/LU/arch/Inverse_SSE.h
+src/Eigen2Support/LU.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/LU.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+
+/usr/include/eigen3/Eigen/QR
+Core
+/usr/include/eigen3/Eigen/Core
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+Cholesky
+/usr/include/eigen3/Eigen/Cholesky
+Jacobi
+/usr/include/eigen3/Eigen/Jacobi
+Householder
+/usr/include/eigen3/Eigen/Householder
+src/misc/Solve.h
+/usr/include/eigen3/Eigen/src/misc/Solve.h
+src/QR/HouseholderQR.h
+/usr/include/eigen3/Eigen/src/QR/HouseholderQR.h
+src/QR/FullPivHouseholderQR.h
+/usr/include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h
+src/QR/ColPivHouseholderQR.h
+/usr/include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h
+src/QR/HouseholderQR_MKL.h
+/usr/include/eigen3/Eigen/src/QR/HouseholderQR_MKL.h
+src/QR/ColPivHouseholderQR_MKL.h
+/usr/include/eigen3/Eigen/src/QR/ColPivHouseholderQR_MKL.h
+src/Eigen2Support/QR.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/QR.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+Eigenvalues
+/usr/include/eigen3/Eigen/Eigenvalues
+
+/usr/include/eigen3/Eigen/SVD
+QR
+/usr/include/eigen3/Eigen/QR
+Householder
+/usr/include/eigen3/Eigen/Householder
+Jacobi
+/usr/include/eigen3/Eigen/Jacobi
+src/Core/util/DisableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+src/misc/Solve.h
+/usr/include/eigen3/Eigen/src/misc/Solve.h
+src/SVD/JacobiSVD.h
+/usr/include/eigen3/Eigen/src/SVD/JacobiSVD.h
+src/SVD/JacobiSVD_MKL.h
+/usr/include/eigen3/Eigen/src/SVD/JacobiSVD_MKL.h
+src/SVD/UpperBidiagonalization.h
+/usr/include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h
+src/Eigen2Support/SVD.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/SVD.h
+src/Core/util/ReenableStupidWarnings.h
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+
+/usr/include/eigen3/Eigen/StdVector
+Core
+/usr/include/eigen3/Eigen/Core
+vector
+-
+src/StlSupport/StdVector.h
+/usr/include/eigen3/Eigen/src/StlSupport/StdVector.h
+
+/usr/include/eigen3/Eigen/src/Cholesky/LDLT.h
+
+/usr/include/eigen3/Eigen/src/Cholesky/LLT.h
+
+/usr/include/eigen3/Eigen/src/Cholesky/LLT_MKL.h
+Eigen/src/Core/util/MKL_support.h
+/usr/include/eigen3/Eigen/src/Cholesky/Eigen/src/Core/util/MKL_support.h
+iostream
+-
+
+/usr/include/eigen3/Eigen/src/Core/Array.h
+
+/usr/include/eigen3/Eigen/src/Core/ArrayBase.h
+../plugins/CommonCwiseUnaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
+../plugins/MatrixCwiseUnaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
+../plugins/ArrayCwiseUnaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h
+../plugins/CommonCwiseBinaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
+../plugins/MatrixCwiseBinaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
+../plugins/ArrayCwiseBinaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h
+
+/usr/include/eigen3/Eigen/src/Core/ArrayWrapper.h
+
+/usr/include/eigen3/Eigen/src/Core/Assign.h
+
+/usr/include/eigen3/Eigen/src/Core/Assign_MKL.h
+
+/usr/include/eigen3/Eigen/src/Core/BandMatrix.h
+
+/usr/include/eigen3/Eigen/src/Core/Block.h
+
+/usr/include/eigen3/Eigen/src/Core/BooleanRedux.h
+
+/usr/include/eigen3/Eigen/src/Core/CommaInitializer.h
+
+/usr/include/eigen3/Eigen/src/Core/CoreIterators.h
+
+/usr/include/eigen3/Eigen/src/Core/CwiseBinaryOp.h
+
+/usr/include/eigen3/Eigen/src/Core/CwiseNullaryOp.h
+
+/usr/include/eigen3/Eigen/src/Core/CwiseUnaryOp.h
+
+/usr/include/eigen3/Eigen/src/Core/CwiseUnaryView.h
+
+/usr/include/eigen3/Eigen/src/Core/DenseBase.h
+../plugins/BlockMethods.h
+/usr/include/eigen3/Eigen/src/plugins/BlockMethods.h
+
+/usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h
+
+/usr/include/eigen3/Eigen/src/Core/DenseStorage.h
+
+/usr/include/eigen3/Eigen/src/Core/Diagonal.h
+
+/usr/include/eigen3/Eigen/src/Core/DiagonalMatrix.h
+
+/usr/include/eigen3/Eigen/src/Core/DiagonalProduct.h
+
+/usr/include/eigen3/Eigen/src/Core/Dot.h
+
+/usr/include/eigen3/Eigen/src/Core/EigenBase.h
+
+/usr/include/eigen3/Eigen/src/Core/Flagged.h
+
+/usr/include/eigen3/Eigen/src/Core/ForceAlignedAccess.h
+
+/usr/include/eigen3/Eigen/src/Core/Functors.h
+
+/usr/include/eigen3/Eigen/src/Core/Fuzzy.h
+
+/usr/include/eigen3/Eigen/src/Core/GeneralProduct.h
+
+/usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h
+
+/usr/include/eigen3/Eigen/src/Core/GlobalFunctions.h
+
+/usr/include/eigen3/Eigen/src/Core/IO.h
+
+/usr/include/eigen3/Eigen/src/Core/Map.h
+
+/usr/include/eigen3/Eigen/src/Core/MapBase.h
+
+/usr/include/eigen3/Eigen/src/Core/MathFunctions.h
+
+/usr/include/eigen3/Eigen/src/Core/Matrix.h
+
+/usr/include/eigen3/Eigen/src/Core/MatrixBase.h
+../plugins/CommonCwiseUnaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
+../plugins/CommonCwiseBinaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
+../plugins/MatrixCwiseUnaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
+../plugins/MatrixCwiseBinaryOps.h
+/usr/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
+
+/usr/include/eigen3/Eigen/src/Core/NestByValue.h
+
+/usr/include/eigen3/Eigen/src/Core/NoAlias.h
+
+/usr/include/eigen3/Eigen/src/Core/NumTraits.h
+
+/usr/include/eigen3/Eigen/src/Core/PermutationMatrix.h
+
+/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h
+
+/usr/include/eigen3/Eigen/src/Core/ProductBase.h
+
+/usr/include/eigen3/Eigen/src/Core/Random.h
+
+/usr/include/eigen3/Eigen/src/Core/Redux.h
+
+/usr/include/eigen3/Eigen/src/Core/Ref.h
+
+/usr/include/eigen3/Eigen/src/Core/Replicate.h
+
+/usr/include/eigen3/Eigen/src/Core/ReturnByValue.h
+
+/usr/include/eigen3/Eigen/src/Core/Reverse.h
+
+/usr/include/eigen3/Eigen/src/Core/Select.h
+
+/usr/include/eigen3/Eigen/src/Core/SelfAdjointView.h
+
+/usr/include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h
+
+/usr/include/eigen3/Eigen/src/Core/SolveTriangular.h
+
+/usr/include/eigen3/Eigen/src/Core/StableNorm.h
+
+/usr/include/eigen3/Eigen/src/Core/Stride.h
+
+/usr/include/eigen3/Eigen/src/Core/Swap.h
+
+/usr/include/eigen3/Eigen/src/Core/Transpose.h
+
+/usr/include/eigen3/Eigen/src/Core/Transpositions.h
+
+/usr/include/eigen3/Eigen/src/Core/TriangularMatrix.h
+
+/usr/include/eigen3/Eigen/src/Core/VectorBlock.h
+
+/usr/include/eigen3/Eigen/src/Core/VectorwiseOp.h
+
+/usr/include/eigen3/Eigen/src/Core/Visitor.h
+
+/usr/include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h
+
+/usr/include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h
+
+/usr/include/eigen3/Eigen/src/Core/arch/Default/Settings.h
+
+/usr/include/eigen3/Eigen/src/Core/arch/NEON/Complex.h
+
+/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h
+
+/usr/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h
+
+/usr/include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
+
+/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
+
+/usr/include/eigen3/Eigen/src/Core/products/CoeffBasedProduct.h
+
+/usr/include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h
+
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h
+
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h
+
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_MKL.h
+
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_MKL.h
+
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h
+
+/usr/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_MKL.h
+
+/usr/include/eigen3/Eigen/src/Core/products/Parallelizer.h
+
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h
+
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_MKL.h
+
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h
+
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_MKL.h
+
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h
+
+/usr/include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h
+
+/usr/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h
+
+/usr/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_MKL.h
+
+/usr/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h
+
+/usr/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_MKL.h
+
+/usr/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h
+
+/usr/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_MKL.h
+
+/usr/include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h
+
+/usr/include/eigen3/Eigen/src/Core/util/BlasUtil.h
+
+/usr/include/eigen3/Eigen/src/Core/util/Constants.h
+
+/usr/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
+
+/usr/include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h
+
+/usr/include/eigen3/Eigen/src/Core/util/MKL_support.h
+mkl.h
+-
+mkl_lapacke.h
+-
+
+/usr/include/eigen3/Eigen/src/Core/util/Macros.h
+cstdlib
+-
+iostream
+-
+
+/usr/include/eigen3/Eigen/src/Core/util/Memory.h
+unistd.h
+-
+
+/usr/include/eigen3/Eigen/src/Core/util/Meta.h
+
+/usr/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
+
+/usr/include/eigen3/Eigen/src/Core/util/StaticAssert.h
+
+/usr/include/eigen3/Eigen/src/Core/util/XprHelper.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Block.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Cwise.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/CwiseOperators.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/All.h
+limits
+-
+RotationBase.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h
+Rotation2D.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h
+Quaternion.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h
+AngleAxis.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h
+Transform.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h
+Translation.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h
+Scaling.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h
+AlignedBox.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h
+Hyperplane.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h
+ParametrizedLine.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h
+RotationBase.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h
+Rotation2D.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h
+Quaternion.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h
+AngleAxis.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h
+Transform.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h
+Translation.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h
+Scaling.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h
+AlignedBox.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h
+Hyperplane.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h
+ParametrizedLine.h
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/LU.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Lazy.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Macros.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/MathFunctions.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Memory.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Meta.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/Minor.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/QR.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/SVD.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/TriangularSolver.h
+
+/usr/include/eigen3/Eigen/src/Eigen2Support/VectorBlock.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/./ComplexSchur.h
+./HessenbergDecomposition.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/././HessenbergDecomposition.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/./HessenbergDecomposition.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/./RealQZ.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/./RealSchur.h
+./HessenbergDecomposition.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/././HessenbergDecomposition.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/./Tridiagonalization.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h
+./ComplexSchur.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/./ComplexSchur.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
+./HessenbergDecomposition.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/./HessenbergDecomposition.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_MKL.h
+Eigen/src/Core/util/MKL_support.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/Eigen/src/Core/util/MKL_support.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h
+./RealSchur.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/./RealSchur.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h
+./RealQZ.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/./RealQZ.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
+./Tridiagonalization.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/./Tridiagonalization.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/RealQZ.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/RealSchur.h
+./HessenbergDecomposition.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/./HessenbergDecomposition.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/RealSchur_MKL.h
+Eigen/src/Core/util/MKL_support.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/Eigen/src/Core/util/MKL_support.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h
+./Tridiagonalization.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/./Tridiagonalization.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_MKL.h
+Eigen/src/Core/util/MKL_support.h
+/usr/include/eigen3/Eigen/src/Eigenvalues/Eigen/src/Core/util/MKL_support.h
+
+/usr/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
+
+/usr/include/eigen3/Eigen/src/Geometry/AlignedBox.h
+
+/usr/include/eigen3/Eigen/src/Geometry/AngleAxis.h
+
+/usr/include/eigen3/Eigen/src/Geometry/EulerAngles.h
+
+/usr/include/eigen3/Eigen/src/Geometry/Homogeneous.h
+
+/usr/include/eigen3/Eigen/src/Geometry/Hyperplane.h
+
+/usr/include/eigen3/Eigen/src/Geometry/OrthoMethods.h
+
+/usr/include/eigen3/Eigen/src/Geometry/ParametrizedLine.h
+
+/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h
+
+/usr/include/eigen3/Eigen/src/Geometry/Rotation2D.h
+
+/usr/include/eigen3/Eigen/src/Geometry/RotationBase.h
+
+/usr/include/eigen3/Eigen/src/Geometry/Scaling.h
+
+/usr/include/eigen3/Eigen/src/Geometry/Transform.h
+
+/usr/include/eigen3/Eigen/src/Geometry/Translation.h
+
+/usr/include/eigen3/Eigen/src/Geometry/Umeyama.h
+
+/usr/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h
+
+/usr/include/eigen3/Eigen/src/Householder/BlockHouseholder.h
+
+/usr/include/eigen3/Eigen/src/Householder/Householder.h
+
+/usr/include/eigen3/Eigen/src/Householder/HouseholderSequence.h
+
+/usr/include/eigen3/Eigen/src/Jacobi/Jacobi.h
+
+/usr/include/eigen3/Eigen/src/LU/Determinant.h
+
+/usr/include/eigen3/Eigen/src/LU/FullPivLU.h
+
+/usr/include/eigen3/Eigen/src/LU/Inverse.h
+
+/usr/include/eigen3/Eigen/src/LU/PartialPivLU.h
+
+/usr/include/eigen3/Eigen/src/LU/PartialPivLU_MKL.h
+Eigen/src/Core/util/MKL_support.h
+/usr/include/eigen3/Eigen/src/LU/Eigen/src/Core/util/MKL_support.h
+
+/usr/include/eigen3/Eigen/src/LU/arch/Inverse_SSE.h
+
+/usr/include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h
+
+/usr/include/eigen3/Eigen/src/QR/ColPivHouseholderQR_MKL.h
+Eigen/src/Core/util/MKL_support.h
+/usr/include/eigen3/Eigen/src/QR/Eigen/src/Core/util/MKL_support.h
+
+/usr/include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h
+
+/usr/include/eigen3/Eigen/src/QR/HouseholderQR.h
+
+/usr/include/eigen3/Eigen/src/QR/HouseholderQR_MKL.h
+Eigen/src/Core/util/MKL_support.h
+/usr/include/eigen3/Eigen/src/QR/Eigen/src/Core/util/MKL_support.h
+
+/usr/include/eigen3/Eigen/src/SVD/JacobiSVD.h
+
+/usr/include/eigen3/Eigen/src/SVD/JacobiSVD_MKL.h
+Eigen/src/Core/util/MKL_support.h
+/usr/include/eigen3/Eigen/src/SVD/Eigen/src/Core/util/MKL_support.h
+
+/usr/include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h
+
+/usr/include/eigen3/Eigen/src/StlSupport/StdVector.h
+Eigen/src/StlSupport/details.h
+/usr/include/eigen3/Eigen/src/StlSupport/Eigen/src/StlSupport/details.h
+
+/usr/include/eigen3/Eigen/src/StlSupport/details.h
+
+/usr/include/eigen3/Eigen/src/misc/Image.h
+
+/usr/include/eigen3/Eigen/src/misc/Kernel.h
+
+/usr/include/eigen3/Eigen/src/misc/Solve.h
+
+/usr/include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h
+
+/usr/include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h
+
+/usr/include/eigen3/Eigen/src/plugins/BlockMethods.h
+
+/usr/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
+
+/usr/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
+
+/usr/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
+
+/usr/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
+
+/usr/include/eigen3/unsupported/Eigen/NonLinearOptimization
+vector
+-
+Eigen/Core
+-
+Eigen/Jacobi
+-
+Eigen/QR
+-
+unsupported/Eigen/NumericalDiff
+-
+src/NonLinearOptimization/qrsolv.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h
+src/NonLinearOptimization/r1updt.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1updt.h
+src/NonLinearOptimization/r1mpyq.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h
+src/NonLinearOptimization/rwupdt.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h
+src/NonLinearOptimization/fdjac1.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h
+src/NonLinearOptimization/lmpar.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/lmpar.h
+src/NonLinearOptimization/dogleg.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/dogleg.h
+src/NonLinearOptimization/covar.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/covar.h
+src/NonLinearOptimization/chkder.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/chkder.h
+src/NonLinearOptimization/HybridNonLinearSolver.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h
+src/NonLinearOptimization/LevenbergMarquardt.h
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h
+
+/usr/include/eigen3/unsupported/Eigen/NumericalDiff
+Eigen/Core
+-
+src/NumericalDiff/NumericalDiff.h
+/usr/include/eigen3/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/chkder.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/covar.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/dogleg.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/lmpar.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1updt.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h
+
+/usr/include/eigen3/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h
+
+/usr/include/vtk-5.8/vtkABI.h
+
+/usr/include/vtk-5.8/vtkAbstractArray.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+vtkVariant.h
+/usr/include/vtk-5.8/vtkVariant.h
+
+/usr/include/vtk-5.8/vtkAbstractMapper.h
+vtkAlgorithm.h
+/usr/include/vtk-5.8/vtkAlgorithm.h
+
+/usr/include/vtk-5.8/vtkAbstractMapper3D.h
+vtkAbstractMapper.h
+/usr/include/vtk-5.8/vtkAbstractMapper.h
+
+/usr/include/vtk-5.8/vtkActor.h
+vtkProp3D.h
+/usr/include/vtk-5.8/vtkProp3D.h
+
+/usr/include/vtk-5.8/vtkActor2D.h
+vtkProp.h
+/usr/include/vtk-5.8/vtkProp.h
+vtkCoordinate.h
+/usr/include/vtk-5.8/vtkCoordinate.h
+
+/usr/include/vtk-5.8/vtkActorCollection.h
+vtkPropCollection.h
+/usr/include/vtk-5.8/vtkPropCollection.h
+vtkActor.h
+/usr/include/vtk-5.8/vtkActor.h
+
+/usr/include/vtk-5.8/vtkAlgorithm.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkAlgorithmOutput.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkAppendPolyData.h
+vtkPolyDataAlgorithm.h
+/usr/include/vtk-5.8/vtkPolyDataAlgorithm.h
+
+/usr/include/vtk-5.8/vtkArrayIterator.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkArrayIteratorTemplate.h
+vtkArrayIterator.h
+/usr/include/vtk-5.8/vtkArrayIterator.h
+vtkArrayIteratorTemplateImplicit.txx
+/usr/include/vtk-5.8/vtkArrayIteratorTemplateImplicit.txx
+
+/usr/include/vtk-5.8/vtkArrayIteratorTemplate.txx
+vtkArrayIteratorTemplate.h
+/usr/include/vtk-5.8/vtkArrayIteratorTemplate.h
+vtkAbstractArray.h
+/usr/include/vtk-5.8/vtkAbstractArray.h
+vtkObjectFactory.h
+/usr/include/vtk-5.8/vtkObjectFactory.h
+
+/usr/include/vtk-5.8/vtkArrayIteratorTemplateImplicit.txx
+vtkArrayIteratorTemplate.txx
+/usr/include/vtk-5.8/vtkArrayIteratorTemplate.txx
+
+/usr/include/vtk-5.8/vtkCell.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+vtkIdList.h
+/usr/include/vtk-5.8/vtkIdList.h
+vtkCellType.h
+/usr/include/vtk-5.8/vtkCellType.h
+
+/usr/include/vtk-5.8/vtkCellArray.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+vtkIdTypeArray.h
+/usr/include/vtk-5.8/vtkIdTypeArray.h
+vtkCell.h
+/usr/include/vtk-5.8/vtkCell.h
+
+/usr/include/vtk-5.8/vtkCellData.h
+vtkDataSetAttributes.h
+/usr/include/vtk-5.8/vtkDataSetAttributes.h
+
+/usr/include/vtk-5.8/vtkCellLinks.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkCellType.h
+
+/usr/include/vtk-5.8/vtkCellTypes.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+vtkIntArray.h
+/usr/include/vtk-5.8/vtkIntArray.h
+vtkUnsignedCharArray.h
+/usr/include/vtk-5.8/vtkUnsignedCharArray.h
+vtkCellType.h
+/usr/include/vtk-5.8/vtkCellType.h
+
+/usr/include/vtk-5.8/vtkCollection.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkCommand.h
+vtkObjectBase.h
+/usr/include/vtk-5.8/vtkObjectBase.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkCommonInformationKeyManager.h
+vtkSystemIncludes.h
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+vtkDebugLeaksManager.h
+/usr/include/vtk-5.8/vtkDebugLeaksManager.h
+
+/usr/include/vtk-5.8/vtkConfigure.h
+
+/usr/include/vtk-5.8/vtkCoordinate.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkDataArray.h
+vtkAbstractArray.h
+/usr/include/vtk-5.8/vtkAbstractArray.h
+
+/usr/include/vtk-5.8/vtkDataArrayTemplate.h
+vtkDataArray.h
+/usr/include/vtk-5.8/vtkDataArray.h
+vtkDataArrayTemplateImplicit.txx
+/usr/include/vtk-5.8/vtkDataArrayTemplateImplicit.txx
+
+/usr/include/vtk-5.8/vtkDataArrayTemplate.txx
+vtkDataArrayTemplate.h
+/usr/include/vtk-5.8/vtkDataArrayTemplate.h
+vtkArrayIteratorTemplate.h
+/usr/include/vtk-5.8/vtkArrayIteratorTemplate.h
+vtkIdList.h
+/usr/include/vtk-5.8/vtkIdList.h
+vtkInformation.h
+/usr/include/vtk-5.8/vtkInformation.h
+vtkInformationDoubleVectorKey.h
+/usr/include/vtk-5.8/vtkInformationDoubleVectorKey.h
+vtkInformationInformationVectorKey.h
+/usr/include/vtk-5.8/vtkInformationInformationVectorKey.h
+vtkInformationVector.h
+/usr/include/vtk-5.8/vtkInformationVector.h
+vtkSortDataArray.h
+/usr/include/vtk-5.8/vtkSortDataArray.h
+vtkTypeTraits.h
+/usr/include/vtk-5.8/vtkTypeTraits.h
+vtkstd/new
+-
+vtkstd/exception
+-
+vtkstd/utility
+-
+vtkstd/algorithm
+-
+vtkstd/map
+-
+
+/usr/include/vtk-5.8/vtkDataArrayTemplateImplicit.txx
+vtkDataArrayTemplate.txx
+/usr/include/vtk-5.8/vtkDataArrayTemplate.txx
+
+/usr/include/vtk-5.8/vtkDataObject.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkDataSet.h
+vtkDataObject.h
+/usr/include/vtk-5.8/vtkDataObject.h
+
+/usr/include/vtk-5.8/vtkDataSetAttributes.h
+vtkFieldData.h
+/usr/include/vtk-5.8/vtkFieldData.h
+
+/usr/include/vtk-5.8/vtkDataSetMapper.h
+vtkMapper.h
+/usr/include/vtk-5.8/vtkMapper.h
+
+/usr/include/vtk-5.8/vtkDataSetSurfaceFilter.h
+vtkPolyDataAlgorithm.h
+/usr/include/vtk-5.8/vtkPolyDataAlgorithm.h
+
+/usr/include/vtk-5.8/vtkDebugLeaksManager.h
+vtkSystemIncludes.h
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+
+/usr/include/vtk-5.8/vtkFieldData.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+vtkAbstractArray.h
+/usr/include/vtk-5.8/vtkAbstractArray.h
+vtkDataArray.h
+/usr/include/vtk-5.8/vtkDataArray.h
+
+/usr/include/vtk-5.8/vtkFloatArray.h
+vtkDataArray.h
+/usr/include/vtk-5.8/vtkDataArray.h
+vtkDataArrayTemplate.h
+/usr/include/vtk-5.8/vtkDataArrayTemplate.h
+
+/usr/include/vtk-5.8/vtkFollower.h
+vtkActor.h
+/usr/include/vtk-5.8/vtkActor.h
+
+/usr/include/vtk-5.8/vtkIOStream.h
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkConfigure.h
+vtkWin32Header.h
+/usr/include/vtk-5.8/vtkWin32Header.h
+iostream
+-
+fstream
+-
+iomanip
+-
+vtkWinCE.h
+/usr/include/vtk-5.8/vtkWinCE.h
+iostream.h
+-
+iomanip.h
+-
+fstream.h
+-
+strstream
+-
+strstrea.h
+-
+strstream.h
+-
+
+/usr/include/vtk-5.8/vtkIOStreamFwd.h
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkConfigure.h
+iosfwd
+-
+iosfwd.h
+-
+
+/usr/include/vtk-5.8/vtkIdList.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkIdTypeArray.h
+vtkDataArray.h
+/usr/include/vtk-5.8/vtkDataArray.h
+vtkDataArrayTemplate.h
+/usr/include/vtk-5.8/vtkDataArrayTemplate.h
+
+/usr/include/vtk-5.8/vtkImageAlgorithm.h
+vtkAlgorithm.h
+/usr/include/vtk-5.8/vtkAlgorithm.h
+
+/usr/include/vtk-5.8/vtkIndent.h
+vtkSystemIncludes.h
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+
+/usr/include/vtk-5.8/vtkInformation.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkInformationDoubleVectorKey.h
+vtkInformationKey.h
+/usr/include/vtk-5.8/vtkInformationKey.h
+vtkCommonInformationKeyManager.h
+/usr/include/vtk-5.8/vtkCommonInformationKeyManager.h
+
+/usr/include/vtk-5.8/vtkInformationInformationVectorKey.h
+vtkInformationKey.h
+/usr/include/vtk-5.8/vtkInformationKey.h
+vtkCommonInformationKeyManager.h
+/usr/include/vtk-5.8/vtkCommonInformationKeyManager.h
+
+/usr/include/vtk-5.8/vtkInformationKey.h
+vtkObjectBase.h
+/usr/include/vtk-5.8/vtkObjectBase.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkInformationVector.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkIntArray.h
+vtkDataArray.h
+/usr/include/vtk-5.8/vtkDataArray.h
+vtkDataArrayTemplate.h
+/usr/include/vtk-5.8/vtkDataArrayTemplate.h
+
+/usr/include/vtk-5.8/vtkInteractorObserver.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkInteractorStyle.h
+vtkInteractorObserver.h
+/usr/include/vtk-5.8/vtkInteractorObserver.h
+
+/usr/include/vtk-5.8/vtkInteractorStyleRubberBandPick.h
+vtkInteractorStyleTrackballCamera.h
+/usr/include/vtk-5.8/vtkInteractorStyleTrackballCamera.h
+
+/usr/include/vtk-5.8/vtkInteractorStyleTrackballCamera.h
+vtkInteractorStyle.h
+/usr/include/vtk-5.8/vtkInteractorStyle.h
+
+/usr/include/vtk-5.8/vtkLODActor.h
+vtkActor.h
+/usr/include/vtk-5.8/vtkActor.h
+
+/usr/include/vtk-5.8/vtkLeaderActor2D.h
+vtkActor2D.h
+/usr/include/vtk-5.8/vtkActor2D.h
+
+/usr/include/vtk-5.8/vtkLineSource.h
+vtkPolyDataAlgorithm.h
+/usr/include/vtk-5.8/vtkPolyDataAlgorithm.h
+
+/usr/include/vtk-5.8/vtkMapper.h
+vtkAbstractMapper3D.h
+/usr/include/vtk-5.8/vtkAbstractMapper3D.h
+vtkScalarsToColors.h
+/usr/include/vtk-5.8/vtkScalarsToColors.h
+
+/usr/include/vtk-5.8/vtkMath.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+vtkPolynomialSolversUnivariate.h
+/usr/include/vtk-5.8/vtkPolynomialSolversUnivariate.h
+assert.h
+-
+
+/usr/include/vtk-5.8/vtkMatrix4x4.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkOStrStreamWrapper.h
+
+/usr/include/vtk-5.8/vtkOStreamWrapper.h
+
+/usr/include/vtk-5.8/vtkObject.h
+vtkObjectBase.h
+/usr/include/vtk-5.8/vtkObjectBase.h
+vtkSetGet.h
+/usr/include/vtk-5.8/vtkSetGet.h
+vtkTimeStamp.h
+/usr/include/vtk-5.8/vtkTimeStamp.h
+vtkWeakPointerBase.h
+/usr/include/vtk-5.8/vtkWeakPointerBase.h
+
+/usr/include/vtk-5.8/vtkObjectBase.h
+vtkIndent.h
+/usr/include/vtk-5.8/vtkIndent.h
+vtkSystemIncludes.h
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+
+/usr/include/vtk-5.8/vtkObjectFactory.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkPointData.h
+vtkDataSetAttributes.h
+/usr/include/vtk-5.8/vtkDataSetAttributes.h
+
+/usr/include/vtk-5.8/vtkPointSet.h
+vtkDataSet.h
+/usr/include/vtk-5.8/vtkDataSet.h
+vtkPoints.h
+/usr/include/vtk-5.8/vtkPoints.h
+
+/usr/include/vtk-5.8/vtkPoints.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+vtkDataArray.h
+/usr/include/vtk-5.8/vtkDataArray.h
+
+/usr/include/vtk-5.8/vtkPolyData.h
+vtkPointSet.h
+/usr/include/vtk-5.8/vtkPointSet.h
+vtkCellTypes.h
+/usr/include/vtk-5.8/vtkCellTypes.h
+vtkCellLinks.h
+/usr/include/vtk-5.8/vtkCellLinks.h
+
+/usr/include/vtk-5.8/vtkPolyDataAlgorithm.h
+vtkAlgorithm.h
+/usr/include/vtk-5.8/vtkAlgorithm.h
+vtkPolyData.h
+/usr/include/vtk-5.8/vtkPolyData.h
+
+/usr/include/vtk-5.8/vtkPolyDataMapper.h
+vtkMapper.h
+/usr/include/vtk-5.8/vtkMapper.h
+vtkTexture.h
+/usr/include/vtk-5.8/vtkTexture.h
+
+/usr/include/vtk-5.8/vtkPolyLine.h
+vtkCell.h
+/usr/include/vtk-5.8/vtkCell.h
+
+/usr/include/vtk-5.8/vtkPolygon.h
+vtkCell.h
+/usr/include/vtk-5.8/vtkCell.h
+
+/usr/include/vtk-5.8/vtkPolynomialSolversUnivariate.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkProp.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkProp3D.h
+vtkProp.h
+/usr/include/vtk-5.8/vtkProp.h
+
+/usr/include/vtk-5.8/vtkPropCollection.h
+vtkCollection.h
+/usr/include/vtk-5.8/vtkCollection.h
+vtkProp.h
+/usr/include/vtk-5.8/vtkProp.h
+
+/usr/include/vtk-5.8/vtkProperty.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkProperty2D.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkRenderer.h
+vtkViewport.h
+/usr/include/vtk-5.8/vtkViewport.h
+vtkVolumeCollection.h
+/usr/include/vtk-5.8/vtkVolumeCollection.h
+vtkActorCollection.h
+/usr/include/vtk-5.8/vtkActorCollection.h
+
+/usr/include/vtk-5.8/vtkRendererCollection.h
+vtkCollection.h
+/usr/include/vtk-5.8/vtkCollection.h
+vtkRenderer.h
+/usr/include/vtk-5.8/vtkRenderer.h
+
+/usr/include/vtk-5.8/vtkScalarsToColors.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkSetGet.h
+vtkSystemIncludes.h
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+math.h
+-
+
+/usr/include/vtk-5.8/vtkSmartPointer.h
+vtkSmartPointerBase.h
+/usr/include/vtk-5.8/vtkSmartPointerBase.h
+
+/usr/include/vtk-5.8/vtkSmartPointerBase.h
+vtkObjectBase.h
+/usr/include/vtk-5.8/vtkObjectBase.h
+
+/usr/include/vtk-5.8/vtkSortDataArray.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkSphereSource.h
+vtkPolyDataAlgorithm.h
+/usr/include/vtk-5.8/vtkPolyDataAlgorithm.h
+
+/usr/include/vtk-5.8/vtkStdString.h
+vtkSystemIncludes.h
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+vtkstd/string
+-
+
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+vtkWin32Header.h
+/usr/include/vtk-5.8/vtkWin32Header.h
+vtkIOStreamFwd.h
+/usr/include/vtk-5.8/vtkIOStreamFwd.h
+vtkIOStream.h
+/usr/include/vtk-5.8/vtkIOStream.h
+vtkType.h
+/usr/include/vtk-5.8/vtkType.h
+vtkOStreamWrapper.h
+/usr/include/vtk-5.8/vtkOStreamWrapper.h
+vtkOStrStreamWrapper.h
+/usr/include/vtk-5.8/vtkOStrStreamWrapper.h
+stdio.h
+-
+stdlib.h
+-
+string.h
+-
+mem.h
+-
+search.h
+-
+
+/usr/include/vtk-5.8/vtkTextProperty.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkTexture.h
+vtkImageAlgorithm.h
+/usr/include/vtk-5.8/vtkImageAlgorithm.h
+
+/usr/include/vtk-5.8/vtkTimeStamp.h
+vtkSystemIncludes.h
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+
+/usr/include/vtk-5.8/vtkType.h
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkConfigure.h
+
+/usr/include/vtk-5.8/vtkTypeTraits.h
+vtkSystemIncludes.h
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+
+/usr/include/vtk-5.8/vtkUnicodeString.h
+vtkSystemIncludes.h
+-
+vtkstd/string
+-
+vtkstd/vector
+-
+
+/usr/include/vtk-5.8/vtkUnsignedCharArray.h
+vtkDataArray.h
+/usr/include/vtk-5.8/vtkDataArray.h
+vtkDataArrayTemplate.h
+/usr/include/vtk-5.8/vtkDataArrayTemplate.h
+
+/usr/include/vtk-5.8/vtkUnstructuredGrid.h
+vtkPointSet.h
+/usr/include/vtk-5.8/vtkPointSet.h
+
+/usr/include/vtk-5.8/vtkVariant.h
+vtkType.h
+/usr/include/vtk-5.8/vtkType.h
+vtkSystemIncludes.h
+/usr/include/vtk-5.8/vtkSystemIncludes.h
+vtkSetGet.h
+/usr/include/vtk-5.8/vtkSetGet.h
+vtkStdString.h
+/usr/include/vtk-5.8/vtkStdString.h
+vtkUnicodeString.h
+/usr/include/vtk-5.8/vtkUnicodeString.h
+vtkVariantInlineOperators.h
+/usr/include/vtk-5.8/vtkVariantInlineOperators.h
+
+/usr/include/vtk-5.8/vtkVariantInlineOperators.h
+climits
+-
+
+/usr/include/vtk-5.8/vtkVectorText.h
+vtkPolyDataAlgorithm.h
+/usr/include/vtk-5.8/vtkPolyDataAlgorithm.h
+
+/usr/include/vtk-5.8/vtkVersion.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+vtksys/DateStamp.h
+-
+
+/usr/include/vtk-5.8/vtkViewport.h
+vtkObject.h
+/usr/include/vtk-5.8/vtkObject.h
+
+/usr/include/vtk-5.8/vtkVolume.h
+vtkProp3D.h
+/usr/include/vtk-5.8/vtkProp3D.h
+
+/usr/include/vtk-5.8/vtkVolumeCollection.h
+vtkPropCollection.h
+/usr/include/vtk-5.8/vtkPropCollection.h
+vtkVolume.h
+/usr/include/vtk-5.8/vtkVolume.h
+
+/usr/include/vtk-5.8/vtkWeakPointerBase.h
+vtkObjectBase.h
+/usr/include/vtk-5.8/vtkObjectBase.h
+
+/usr/include/vtk-5.8/vtkWin32Header.h
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkConfigure.h
+vtkABI.h
+/usr/include/vtk-5.8/vtkABI.h
+windows.h
+-
+
+/usr/include/vtk-5.8/vtkstd/algorithm
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkstd/vtkConfigure.h
+algorithm
+-
+
+/usr/include/vtk-5.8/vtkstd/exception
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkstd/vtkConfigure.h
+exception
+-
+
+/usr/include/vtk-5.8/vtkstd/map
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkstd/vtkConfigure.h
+map
+-
+
+/usr/include/vtk-5.8/vtkstd/new
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkstd/vtkConfigure.h
+new
+-
+
+/usr/include/vtk-5.8/vtkstd/string
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkstd/vtkConfigure.h
+string
+-
+
+/usr/include/vtk-5.8/vtkstd/utility
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkstd/vtkConfigure.h
+utility
+-
+
+/usr/include/vtk-5.8/vtkstd/vector
+vtkConfigure.h
+/usr/include/vtk-5.8/vtkstd/vtkConfigure.h
+vector
+-
+
+/usr/include/vtk-5.8/vtksys/DateStamp.h
+
+/usr/local/include/pcl-1.8/pcl/ModelCoefficients.h
+string
+-
+vector
+-
+ostream
+-
+pcl/PCLHeader.h
+-
+
+/usr/local/include/pcl-1.8/pcl/PCLHeader.h
+string
+-
+vector
+-
+boost/shared_ptr.hpp
+-
+pcl/pcl_macros.h
+-
+ostream
+-
+
+/usr/local/include/pcl-1.8/pcl/PCLImage.h
+string
+-
+vector
+-
+ostream
+-
+pcl/PCLHeader.h
+-
+
+/usr/local/include/pcl-1.8/pcl/PCLPointCloud2.h
+string
+-
+vector
+-
+ostream
+-
+boost/detail/endian.hpp
+-
+pcl/PCLHeader.h
+-
+pcl/PCLPointField.h
+-
+
+/usr/local/include/pcl-1.8/pcl/PCLPointField.h
+string
+-
+vector
+-
+ostream
+-
+boost/shared_ptr.hpp
+-
+pcl/pcl_macros.h
+-
+
+/usr/local/include/pcl-1.8/pcl/PointIndices.h
+string
+-
+vector
+-
+ostream
+-
+pcl/PCLHeader.h
+-
+
+/usr/local/include/pcl-1.8/pcl/PolygonMesh.h
+string
+-
+vector
+-
+ostream
+-
+pcl/PCLHeader.h
+-
+pcl/PCLPointCloud2.h
+-
+pcl/Vertices.h
+-
+
+/usr/local/include/pcl-1.8/pcl/TextureMesh.h
+Eigen/Core
+-
+string
+-
+pcl/PCLPointCloud2.h
+-
+pcl/Vertices.h
+-
+
+/usr/local/include/pcl-1.8/pcl/Vertices.h
+string
+-
+vector
+-
+ostream
+-
+pcl/pcl_macros.h
+-
+
+/usr/local/include/pcl-1.8/pcl/cloud_iterator.h
+pcl/point_cloud.h
+-
+pcl/PointIndices.h
+-
+pcl/correspondence.h
+-
+pcl/impl/cloud_iterator.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/common/centroid.h
+pcl/point_cloud.h
+-
+pcl/point_traits.h
+-
+pcl/PointIndices.h
+-
+pcl/cloud_iterator.h
+-
+pcl/common/impl/accumulators.hpp
+-
+pcl/common/impl/centroid.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/common/colors.h
+pcl/pcl_macros.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/common.h
+pcl/pcl_base.h
+-
+cfloat
+-
+pcl/common/impl/common.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/common/concatenate.h
+pcl/conversions.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/copy_point.h
+pcl/common/impl/copy_point.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/common/distances.h
+pcl/common/common.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/eigen.h
+cmath
+-
+pcl/ModelCoefficients.h
+-
+Eigen/StdVector
+-
+Eigen/Core
+-
+Eigen/Eigenvalues
+-
+Eigen/Geometry
+-
+Eigen/SVD
+-
+Eigen/LU
+-
+Eigen/Dense
+-
+Eigen/Eigenvalues
+-
+pcl/common/impl/eigen.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/common/geometry.h
+Eigen/Core
+-
+
+/usr/local/include/pcl-1.8/pcl/common/impl/accumulators.hpp
+map
+-
+boost/mpl/filter_view.hpp
+-
+boost/fusion/include/mpl.hpp
+-
+boost/fusion/include/for_each.hpp
+-
+boost/fusion/include/as_vector.hpp
+-
+pcl/point_types.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/impl/centroid.hpp
+pcl/common/centroid.h
+-
+pcl/conversions.h
+-
+boost/mpl/size.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/common/impl/common.hpp
+pcl/point_types.h
+-
+pcl/common/common.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/impl/copy_point.hpp
+pcl/point_types.h
+-
+pcl/point_traits.h
+-
+pcl/for_each_type.h
+-
+pcl/common/concatenate.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/impl/eigen.hpp
+pcl/console/print.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/impl/io.hpp
+pcl/common/concatenate.h
+-
+pcl/common/copy_point.h
+-
+pcl/point_types.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/impl/projection_matrix.hpp
+pcl/cloud_iterator.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/impl/transforms.hpp
+
+/usr/local/include/pcl-1.8/pcl/common/io.h
+string
+-
+pcl/pcl_base.h
+-
+pcl/PointIndices.h
+-
+pcl/conversions.h
+-
+pcl/exceptions.h
+-
+locale
+-
+pcl/common/impl/io.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/common/point_operators.h
+
+/usr/local/include/pcl-1.8/pcl/common/point_tests.h
+Eigen/src/StlSupport/details.h
+-
+
+/usr/local/include/pcl-1.8/pcl/common/projection_matrix.h
+pcl/common/eigen.h
+-
+pcl/console/print.h
+-
+pcl/common/impl/projection_matrix.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/common/time.h
+cmath
+-
+queue
+-
+string
+-
+boost/date_time/posix_time/posix_time.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/common/transforms.h
+pcl/point_cloud.h
+-
+pcl/point_types.h
+-
+pcl/common/centroid.h
+-
+pcl/common/eigen.h
+-
+pcl/PointIndices.h
+-
+pcl/common/impl/transforms.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/console/parse.h
+vector
+-
+sstream
+-
+pcl/pcl_macros.h
+-
+
+/usr/local/include/pcl-1.8/pcl/console/print.h
+stdio.h
+-
+stdarg.h
+-
+pcl/pcl_exports.h
+-
+pcl/pcl_config.h
+-
+
+/usr/local/include/pcl-1.8/pcl/conversions.h
+pcl/PCLPointField.h
+-
+pcl/PCLPointCloud2.h
+-
+pcl/PCLImage.h
+-
+pcl/point_cloud.h
+-
+pcl/point_traits.h
+-
+pcl/for_each_type.h
+-
+pcl/exceptions.h
+-
+pcl/console/print.h
+-
+boost/foreach.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/correspondence.h
+boost/shared_ptr.hpp
+-
+Eigen/StdVector
+-
+Eigen/Geometry
+-
+pcl/pcl_exports.h
+-
+
+/usr/local/include/pcl-1.8/pcl/exceptions.h
+stdexcept
+-
+sstream
+-
+pcl/pcl_macros.h
+-
+boost/current_function.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/features/feature.h
+boost/function.hpp
+-
+boost/bind.hpp
+-
+pcl/pcl_base.h
+-
+pcl/search/search.h
+-
+pcl/features/impl/feature.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/features/impl/feature.hpp
+pcl/search/pcl_search.h
+-
+
+/usr/local/include/pcl-1.8/pcl/features/impl/normal_3d.hpp
+pcl/features/normal_3d.h
+-
+
+/usr/local/include/pcl-1.8/pcl/features/normal_3d.h
+pcl/features/feature.h
+-
+pcl/common/centroid.h
+-
+pcl/features/impl/normal_3d.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/filters/boost.h
+boost/random.hpp
+-
+boost/random/normal_distribution.hpp
+-
+boost/shared_ptr.hpp
+-
+boost/make_shared.hpp
+-
+boost/dynamic_bitset.hpp
+-
+boost/mpl/size.hpp
+-
+boost/unordered_map.hpp
+-
+boost/fusion/sequence/intrinsic/at_key.hpp
+-
+boost/bind.hpp
+-
+boost/function.hpp
+-
+boost/optional.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/filters/extract_indices.h
+pcl/filters/filter_indices.h
+-
+pcl/filters/impl/extract_indices.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/filters/filter.h
+pcl/pcl_base.h
+-
+pcl/common/io.h
+-
+pcl/conversions.h
+-
+pcl/filters/boost.h
+-
+cfloat
+-
+pcl/PointIndices.h
+-
+pcl/filters/impl/filter.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/filters/filter_indices.h
+pcl/filters/filter.h
+-
+pcl/filters/impl/filter_indices.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/filters/impl/extract_indices.hpp
+pcl/filters/extract_indices.h
+-
+pcl/common/io.h
+-
+
+/usr/local/include/pcl-1.8/pcl/filters/impl/filter.hpp
+pcl/pcl_macros.h
+-
+pcl/filters/filter.h
+-
+
+/usr/local/include/pcl-1.8/pcl/filters/impl/filter_indices.hpp
+pcl/pcl_macros.h
+-
+pcl/filters/filter_indices.h
+-
+
+/usr/local/include/pcl-1.8/pcl/for_each_type.h
+boost/mpl/is_sequence.hpp
+-
+boost/mpl/begin_end.hpp
+-
+boost/mpl/next_prior.hpp
+-
+boost/mpl/deref.hpp
+-
+boost/mpl/assert.hpp
+-
+boost/mpl/remove_if.hpp
+-
+boost/mpl/contains.hpp
+-
+boost/mpl/not.hpp
+-
+boost/mpl/aux_/unwrap.hpp
+-
+boost/type_traits/is_same.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/geometry/planar_polygon.h
+pcl/common/eigen.h
+-
+pcl/point_cloud.h
+-
+pcl/ModelCoefficients.h
+-
+
+/usr/local/include/pcl-1.8/pcl/impl/cloud_iterator.hpp
+pcl/cloud_iterator.h
+-
+
+/usr/local/include/pcl-1.8/pcl/impl/instantiate.hpp
+pcl/pcl_config.h
+-
+boost/preprocessor/seq/for_each.hpp
+-
+boost/preprocessor/seq/for_each_product.hpp
+-
+boost/preprocessor/seq/to_tuple.hpp
+-
+boost/preprocessor/cat.hpp
+-
+boost/preprocessor/expand.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/impl/pcl_base.hpp
+pcl/pcl_base.h
+-
+pcl/console/print.h
+-
+cstddef
+-
+
+/usr/local/include/pcl-1.8/pcl/impl/point_types.hpp
+Eigen/Core
+-
+ostream
+-
+pcl/common/point_tests.h
+-
+
+/usr/local/include/pcl-1.8/pcl/io/boost.h
+boost/version.hpp
+-
+boost/numeric/conversion/cast.hpp
+-
+boost/thread/mutex.hpp
+-
+boost/thread/condition.hpp
+-
+boost/thread.hpp
+-
+boost/thread/thread.hpp
+-
+boost/filesystem.hpp
+-
+boost/bind.hpp
+-
+boost/cstdint.hpp
+-
+boost/function.hpp
+-
+boost/tuple/tuple.hpp
+-
+boost/shared_ptr.hpp
+-
+boost/weak_ptr.hpp
+-
+boost/mpl/fold.hpp
+-
+boost/mpl/inherit.hpp
+-
+boost/mpl/inherit_linearly.hpp
+-
+boost/mpl/joint_view.hpp
+-
+boost/mpl/transform.hpp
+-
+boost/mpl/vector.hpp
+-
+boost/algorithm/string.hpp
+-
+boost/date_time/posix_time/posix_time.hpp
+-
+boost/chrono.hpp
+-
+boost/tokenizer.hpp
+-
+boost/foreach.hpp
+-
+boost/shared_array.hpp
+-
+boost/interprocess/sync/file_lock.hpp
+-
+boost/interprocess/permissions.hpp
+-
+boost/iostreams/device/mapped_file.hpp
+-
+boost/signals2.hpp
+-
+boost/signals2/slot.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/io/file_io.h
+pcl/pcl_macros.h
+-
+pcl/common/io.h
+-
+pcl/io/boost.h
+-
+cmath
+-
+sstream
+-
+pcl/PolygonMesh.h
+-
+pcl/TextureMesh.h
+-
+
+/usr/local/include/pcl-1.8/pcl/io/impl/pcd_io.hpp
+fstream
+-
+fcntl.h
+-
+string
+-
+stdlib.h
+-
+pcl/io/boost.h
+-
+pcl/console/print.h
+-
+pcl/io/pcd_io.h
+-
+io.h
+-
+windows.h
+-
+sys/mman.h
+-
+pcl/io/lzf.h
+-
+
+/usr/local/include/pcl-1.8/pcl/io/lzf.h
+pcl/pcl_macros.h
+-
+
+/usr/local/include/pcl-1.8/pcl/io/pcd_io.h
+pcl/point_cloud.h
+-
+pcl/io/file_io.h
+-
+pcl/io/impl/pcd_io.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/kdtree/flann.h
+flann/flann.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/kdtree/impl/kdtree_flann.hpp
+cstdio
+-
+pcl/kdtree/kdtree_flann.h
+-
+pcl/kdtree/flann.h
+-
+pcl/console/print.h
+-
+
+/usr/local/include/pcl-1.8/pcl/kdtree/kdtree.h
+limits.h
+-
+pcl/pcl_macros.h
+-
+pcl/point_cloud.h
+-
+pcl/point_representation.h
+-
+pcl/common/io.h
+-
+pcl/common/copy_point.h
+-
+
+/usr/local/include/pcl-1.8/pcl/kdtree/kdtree_flann.h
+pcl/kdtree/kdtree.h
+-
+pcl/kdtree/flann.h
+-
+boost/shared_array.hpp
+-
+pcl/kdtree/impl/kdtree_flann.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/boost.h
+boost/graph/adjacency_list.hpp
+-
+boost/function.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/impl/octree2buf_base.hpp
+
+/usr/local/include/pcl-1.8/pcl/octree/impl/octree_base.hpp
+vector
+-
+pcl/impl/instantiate.hpp
+-
+pcl/point_types.h
+-
+pcl/octree/octree.h
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/impl/octree_iterator.hpp
+vector
+-
+assert.h
+-
+pcl/common/common.h
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/impl/octree_pointcloud.hpp
+vector
+-
+assert.h
+-
+pcl/common/common.h
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/impl/octree_pointcloud_adjacency.hpp
+pcl/octree/octree_pointcloud_adjacency.h
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/impl/octree_pointcloud_voxelcentroid.hpp
+pcl/octree/octree_pointcloud_voxelcentroid.h
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/impl/octree_search.hpp
+pcl/point_cloud.h
+-
+pcl/point_types.h
+-
+pcl/common/common.h
+-
+assert.h
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree.h
+pcl/octree/octree_base.h
+-
+pcl/octree/octree2buf_base.h
+-
+pcl/octree/octree_iterator.h
+-
+pcl/octree/octree_pointcloud.h
+-
+pcl/octree/octree_pointcloud_density.h
+-
+pcl/octree/octree_pointcloud_occupancy.h
+-
+pcl/octree/octree_pointcloud_singlepoint.h
+-
+pcl/octree/octree_pointcloud_pointvector.h
+-
+pcl/octree/octree_pointcloud_changedetector.h
+-
+pcl/octree/octree_pointcloud_voxelcentroid.h
+-
+pcl/octree/octree_search.h
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree2buf_base.h
+vector
+-
+octree_nodes.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_nodes.h
+octree_container.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_container.h
+octree_key.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_key.h
+octree_iterator.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_iterator.h
+stdio.h
+-
+string.h
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_base.h
+cstddef
+-
+vector
+-
+octree_nodes.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_nodes.h
+octree_container.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_container.h
+octree_key.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_key.h
+octree_iterator.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_iterator.h
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_container.h
+string.h
+-
+vector
+-
+cstddef
+-
+pcl/pcl_macros.h
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_impl.h
+pcl/octree/octree.h
+-
+pcl/octree/impl/octree_base.hpp
+-
+pcl/octree/impl/octree2buf_base.hpp
+-
+pcl/octree/impl/octree_pointcloud.hpp
+-
+pcl/octree/impl/octree_iterator.hpp
+-
+pcl/octree/impl/octree_search.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_iterator.h
+cstddef
+-
+vector
+-
+deque
+-
+octree_nodes.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_nodes.h
+octree_key.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_key.h
+pcl/point_cloud.h
+-
+pcl/point_types.h
+-
+iterator
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_key.h
+string
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_nodes.h
+cstddef
+-
+assert.h
+-
+cstring
+-
+string.h
+-
+Eigen/Core
+-
+pcl/pcl_macros.h
+-
+octree_container.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_container.h
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud.h
+octree_base.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_base.h
+pcl/point_cloud.h
+-
+pcl/point_types.h
+-
+queue
+-
+vector
+-
+algorithm
+-
+iostream
+-
+pcl/octree/impl/octree_pointcloud.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud_adjacency.h
+pcl/console/print.h
+-
+pcl/common/geometry.h
+-
+pcl/octree/boost.h
+-
+pcl/octree/octree_impl.h
+-
+pcl/octree/octree_pointcloud_adjacency_container.h
+-
+set
+-
+list
+-
+pcl/octree/impl/octree_pointcloud_adjacency.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud_adjacency_container.h
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud_changedetector.h
+octree_pointcloud.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud.h
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud_density.h
+octree_pointcloud.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud.h
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud_occupancy.h
+octree_pointcloud.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud.h
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud_pointvector.h
+octree_pointcloud.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud.h
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud_singlepoint.h
+octree_pointcloud.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud.h
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud_voxelcentroid.h
+octree_pointcloud.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud.h
+pcl/common/point_operators.h
+-
+pcl/point_types.h
+-
+pcl/register_point_struct.h
+-
+pcl/octree/impl/octree_pointcloud_voxelcentroid.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/octree/octree_search.h
+pcl/point_cloud.h
+-
+pcl/point_types.h
+-
+octree_pointcloud.h
+/usr/local/include/pcl-1.8/pcl/octree/octree_pointcloud.h
+pcl/octree/impl/octree_search.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/pcl_base.h
+pcl/pcl_macros.h
+-
+boost/shared_ptr.hpp
+-
+Eigen/StdVector
+-
+Eigen/Core
+-
+pcl/point_cloud.h
+-
+pcl/PointIndices.h
+-
+pcl/PCLPointCloud2.h
+-
+pcl/impl/pcl_base.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/pcl_config.h
+
+/usr/local/include/pcl-1.8/pcl/pcl_exports.h
+
+/usr/local/include/pcl-1.8/pcl/pcl_macros.h
+pcl/pcl_config.h
+-
+boost/cstdint.hpp
+-
+cstdlib
+-
+iostream
+-
+stdarg.h
+-
+stdio.h
+-
+math.h
+-
+math.h
+-
+cmath
+-
+cmath
+-
+stdio.h
+-
+math.h
+-
+
+/usr/local/include/pcl-1.8/pcl/point_cloud.h
+Eigen/StdVector
+-
+Eigen/Geometry
+-
+pcl/PCLHeader.h
+-
+pcl/exceptions.h
+-
+pcl/point_traits.h
+-
+
+/usr/local/include/pcl-1.8/pcl/point_representation.h
+pcl/point_types.h
+-
+pcl/pcl_macros.h
+-
+pcl/for_each_type.h
+-
+
+/usr/local/include/pcl-1.8/pcl/point_traits.h
+pcl/pcl_macros.h
+/usr/local/include/pcl-1.8/pcl/pcl/pcl_macros.h
+pcl/PCLPointField.h
+-
+boost/type_traits/remove_all_extents.hpp
+-
+boost/type_traits/is_same.hpp
+-
+boost/mpl/assert.hpp
+-
+boost/mpl/bool.hpp
+-
+Eigen/Core
+-
+Eigen/src/StlSupport/details.h
+-
+
+/usr/local/include/pcl-1.8/pcl/point_types.h
+pcl/pcl_macros.h
+-
+bitset
+-
+pcl/register_point_struct.h
+-
+boost/mpl/contains.hpp
+-
+boost/mpl/fold.hpp
+-
+boost/mpl/vector.hpp
+-
+pcl/impl/point_types.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/register_point_struct.h
+pcl/pcl_macros.h
+-
+pcl/point_traits.h
+-
+boost/mpl/vector.hpp
+-
+boost/preprocessor/seq/enum.hpp
+-
+boost/preprocessor/seq/for_each.hpp
+-
+boost/preprocessor/seq/transform.hpp
+-
+boost/preprocessor/cat.hpp
+-
+boost/preprocessor/comparison.hpp
+-
+boost/utility.hpp
+-
+boost/type_traits.hpp
+-
+stddef.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/boost.h
+boost/random.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/eigen.h
+Eigen/Core
+-
+unsupported/Eigen/NonLinearOptimization
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/lmeds.hpp
+pcl/sample_consensus/lmeds.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/mlesac.hpp
+pcl/sample_consensus/mlesac.h
+-
+pcl/point_types.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/msac.hpp
+pcl/sample_consensus/msac.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/prosac.hpp
+boost/math/distributions/binomial.hpp
+-
+pcl/sample_consensus/prosac.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/ransac.hpp
+pcl/sample_consensus/ransac.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/rmsac.hpp
+pcl/sample_consensus/rmsac.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/rransac.hpp
+pcl/sample_consensus/rransac.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_circle.hpp
+pcl/sample_consensus/eigen.h
+-
+pcl/sample_consensus/sac_model_circle.h
+-
+pcl/common/concatenate.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_circle3d.hpp
+pcl/sample_consensus/eigen.h
+-
+pcl/sample_consensus/sac_model_circle3d.h
+-
+pcl/common/concatenate.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_cone.hpp
+pcl/sample_consensus/eigen.h
+-
+pcl/sample_consensus/sac_model_cone.h
+-
+pcl/common/concatenate.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_cylinder.hpp
+pcl/sample_consensus/eigen.h
+-
+pcl/sample_consensus/sac_model_cylinder.h
+-
+pcl/common/concatenate.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_line.hpp
+pcl/sample_consensus/sac_model_line.h
+-
+pcl/common/centroid.h
+-
+pcl/common/concatenate.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_normal_parallel_plane.hpp
+pcl/sample_consensus/sac_model_normal_parallel_plane.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_normal_plane.hpp
+pcl/sample_consensus/sac_model_normal_plane.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_normal_sphere.hpp
+pcl/sample_consensus/sac_model_normal_sphere.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_parallel_line.hpp
+pcl/common/common.h
+-
+pcl/sample_consensus/sac_model_parallel_line.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_parallel_plane.hpp
+pcl/sample_consensus/sac_model_parallel_plane.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_perpendicular_plane.hpp
+pcl/sample_consensus/sac_model_perpendicular_plane.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_plane.hpp
+pcl/sample_consensus/sac_model_plane.h
+-
+pcl/common/centroid.h
+-
+pcl/common/eigen.h
+-
+pcl/common/concatenate.h
+-
+pcl/point_types.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_sphere.hpp
+pcl/sample_consensus/eigen.h
+-
+pcl/sample_consensus/sac_model_sphere.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/impl/sac_model_stick.hpp
+pcl/sample_consensus/sac_model_stick.h
+-
+pcl/common/centroid.h
+-
+pcl/common/concatenate.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/lmeds.h
+pcl/sample_consensus/sac.h
+-
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/impl/lmeds.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/method_types.h
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/mlesac.h
+pcl/sample_consensus/sac.h
+-
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/impl/mlesac.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/model_types.h
+map
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/msac.h
+algorithm
+-
+pcl/sample_consensus/sac.h
+-
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/impl/msac.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/prosac.h
+pcl/sample_consensus/sac.h
+-
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/impl/prosac.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/ransac.h
+pcl/sample_consensus/sac.h
+-
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/impl/ransac.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/rmsac.h
+algorithm
+-
+pcl/sample_consensus/sac.h
+-
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/impl/rmsac.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/rransac.h
+pcl/sample_consensus/sac.h
+-
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/impl/rransac.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac.h
+pcl/sample_consensus/boost.h
+-
+pcl/sample_consensus/sac_model.h
+-
+ctime
+-
+set
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model.h
+cfloat
+-
+ctime
+-
+limits.h
+-
+set
+-
+pcl/console/print.h
+-
+pcl/point_cloud.h
+-
+pcl/sample_consensus/boost.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/search/search.h
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_circle.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/sample_consensus/impl/sac_model_circle.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_circle3d.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/sample_consensus/impl/sac_model_circle3d.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_cone.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/pcl_macros.h
+-
+pcl/common/common.h
+-
+pcl/common/distances.h
+-
+limits.h
+-
+pcl/sample_consensus/impl/sac_model_cone.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_cylinder.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/pcl_macros.h
+-
+pcl/common/common.h
+-
+pcl/common/distances.h
+-
+pcl/sample_consensus/impl/sac_model_cylinder.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_line.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/common/eigen.h
+-
+pcl/sample_consensus/impl/sac_model_line.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_normal_parallel_plane.h
+pcl/sample_consensus/sac_model_normal_plane.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/sample_consensus/impl/sac_model_normal_parallel_plane.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_normal_plane.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/sac_model_plane.h
+-
+pcl/sample_consensus/sac_model_perpendicular_plane.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/sample_consensus/impl/sac_model_normal_plane.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_normal_sphere.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/sac_model_sphere.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/common/common.h
+-
+pcl/sample_consensus/impl/sac_model_normal_sphere.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_parallel_line.h
+pcl/sample_consensus/sac_model_line.h
+-
+pcl/sample_consensus/impl/sac_model_parallel_line.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_parallel_plane.h
+pcl/sample_consensus/sac_model_plane.h
+-
+pcl/common/common.h
+-
+pcl/sample_consensus/impl/sac_model_parallel_plane.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_perpendicular_plane.h
+pcl/sample_consensus/sac_model_plane.h
+-
+pcl/common/common.h
+-
+pcl/sample_consensus/impl/sac_model_perpendicular_plane.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_plane.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/sample_consensus/impl/sac_model_plane.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_sphere.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/sample_consensus/impl/sac_model_sphere.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/sample_consensus/sac_model_stick.h
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/common/eigen.h
+-
+pcl/sample_consensus/impl/sac_model_stick.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/search/impl/kdtree.hpp
+pcl/search/kdtree.h
+-
+pcl/search/impl/search.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/search/impl/organized.hpp
+pcl/search/organized.h
+-
+pcl/common/eigen.h
+-
+pcl/common/time.h
+-
+Eigen/Eigenvalues
+-
+
+/usr/local/include/pcl-1.8/pcl/search/impl/search.hpp
+pcl/search/search.h
+-
+
+/usr/local/include/pcl-1.8/pcl/search/kdtree.h
+pcl/search/search.h
+-
+pcl/kdtree/kdtree_flann.h
+-
+pcl/search/impl/kdtree.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/search/octree.h
+pcl/search/search.h
+-
+pcl/octree/octree_search.h
+-
+pcl/octree/impl/octree_search.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/search/organized.h
+pcl/point_cloud.h
+-
+pcl/point_types.h
+-
+pcl/search/search.h
+-
+pcl/common/eigen.h
+-
+algorithm
+-
+queue
+-
+vector
+-
+pcl/common/projection_matrix.h
+-
+pcl/search/impl/organized.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/search/pcl_search.h
+pcl/search/search.h
+-
+pcl/search/kdtree.h
+-
+pcl/search/octree.h
+-
+pcl/search/organized.h
+-
+
+/usr/local/include/pcl-1.8/pcl/search/search.h
+pcl/point_cloud.h
+-
+pcl/for_each_type.h
+-
+pcl/common/concatenate.h
+-
+pcl/common/copy_point.h
+-
+pcl/search/impl/search.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/segmentation/boost.h
+boost/version.hpp
+-
+boost/make_shared.hpp
+-
+boost/graph/adjacency_list.hpp
+-
+boost/multi_array.hpp
+-
+boost/ptr_container/ptr_list.hpp
+-
+boost/graph/boykov_kolmogorov_max_flow.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/segmentation/extract_polygonal_prism_data.h
+pcl/pcl_base.h
+-
+pcl/sample_consensus/sac_model_plane.h
+-
+pcl/segmentation/impl/extract_polygonal_prism_data.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/segmentation/impl/extract_polygonal_prism_data.hpp
+pcl/segmentation/extract_polygonal_prism_data.h
+-
+pcl/common/centroid.h
+-
+pcl/common/eigen.h
+-
+
+/usr/local/include/pcl-1.8/pcl/segmentation/impl/lccp_segmentation.hpp
+pcl/segmentation/lccp_segmentation.h
+-
+
+/usr/local/include/pcl-1.8/pcl/segmentation/impl/sac_segmentation.hpp
+pcl/segmentation/sac_segmentation.h
+-
+pcl/sample_consensus/sac.h
+-
+pcl/sample_consensus/lmeds.h
+-
+pcl/sample_consensus/mlesac.h
+-
+pcl/sample_consensus/msac.h
+-
+pcl/sample_consensus/ransac.h
+-
+pcl/sample_consensus/rmsac.h
+-
+pcl/sample_consensus/rransac.h
+-
+pcl/sample_consensus/prosac.h
+-
+pcl/sample_consensus/sac_model.h
+-
+pcl/sample_consensus/sac_model_circle.h
+-
+pcl/sample_consensus/sac_model_circle3d.h
+-
+pcl/sample_consensus/sac_model_cone.h
+-
+pcl/sample_consensus/sac_model_cylinder.h
+-
+pcl/sample_consensus/sac_model_line.h
+-
+pcl/sample_consensus/sac_model_normal_plane.h
+-
+pcl/sample_consensus/sac_model_parallel_plane.h
+-
+pcl/sample_consensus/sac_model_normal_parallel_plane.h
+-
+pcl/sample_consensus/sac_model_parallel_line.h
+-
+pcl/sample_consensus/sac_model_perpendicular_plane.h
+-
+pcl/sample_consensus/sac_model_plane.h
+-
+pcl/sample_consensus/sac_model_sphere.h
+-
+pcl/sample_consensus/sac_model_normal_sphere.h
+-
+pcl/sample_consensus/sac_model_stick.h
+-
+
+/usr/local/include/pcl-1.8/pcl/segmentation/impl/supervoxel_clustering.hpp
+pcl/segmentation/supervoxel_clustering.h
+-
+
+/usr/local/include/pcl-1.8/pcl/segmentation/lccp_segmentation.h
+pcl/pcl_base.h
+-
+pcl/point_types.h
+-
+pcl/point_cloud.h
+-
+pcl/segmentation/supervoxel_clustering.h
+-
+pcl/segmentation/impl/lccp_segmentation.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/segmentation/sac_segmentation.h
+pcl/pcl_base.h
+-
+pcl/PointIndices.h
+-
+pcl/ModelCoefficients.h
+-
+pcl/sample_consensus/method_types.h
+-
+pcl/sample_consensus/sac.h
+-
+pcl/sample_consensus/model_types.h
+-
+pcl/sample_consensus/sac_model.h
+-
+pcl/search/search.h
+-
+pcl/segmentation/impl/sac_segmentation.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/segmentation/supervoxel_clustering.h
+pcl/features/normal_3d.h
+-
+pcl/pcl_base.h
+-
+pcl/point_cloud.h
+-
+pcl/point_types.h
+-
+pcl/octree/octree.h
+-
+pcl/octree/octree_pointcloud_adjacency.h
+-
+pcl/search/search.h
+-
+pcl/segmentation/boost.h
+-
+pcl/common/time.h
+-
+pcl/segmentation/impl/supervoxel_clustering.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/surface/boost.h
+boost/bind.hpp
+-
+boost/function.hpp
+-
+boost/random.hpp
+-
+boost/unordered_map.hpp
+-
+boost/dynamic_bitset/dynamic_bitset.hpp
+-
+boost/shared_ptr.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/surface/convex_hull.h
+pcl/pcl_config.h
+-
+pcl/surface/reconstruction.h
+-
+pcl/ModelCoefficients.h
+-
+pcl/PolygonMesh.h
+-
+pcl/surface/impl/convex_hull.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/surface/impl/convex_hull.hpp
+pcl/pcl_config.h
+-
+pcl/surface/convex_hull.h
+-
+pcl/common/common.h
+-
+pcl/common/eigen.h
+-
+pcl/common/transforms.h
+-
+pcl/common/io.h
+-
+stdio.h
+-
+stdlib.h
+-
+pcl/surface/qhull.h
+-
+
+/usr/local/include/pcl-1.8/pcl/surface/impl/reconstruction.hpp
+pcl/search/pcl_search.h
+-
+
+/usr/local/include/pcl-1.8/pcl/surface/qhull.h
+pcl/pcl_config.h
+-
+libqhull/libqhull.h
+/usr/local/include/pcl-1.8/pcl/surface/libqhull/libqhull.h
+libqhull/mem.h
+/usr/local/include/pcl-1.8/pcl/surface/libqhull/mem.h
+libqhull/qset.h
+/usr/local/include/pcl-1.8/pcl/surface/libqhull/qset.h
+libqhull/geom.h
+/usr/local/include/pcl-1.8/pcl/surface/libqhull/geom.h
+libqhull/merge.h
+/usr/local/include/pcl-1.8/pcl/surface/libqhull/merge.h
+libqhull/poly.h
+/usr/local/include/pcl-1.8/pcl/surface/libqhull/poly.h
+libqhull/io.h
+/usr/local/include/pcl-1.8/pcl/surface/libqhull/io.h
+libqhull/stat.h
+/usr/local/include/pcl-1.8/pcl/surface/libqhull/stat.h
+qhull/qhull.h
+/usr/local/include/pcl-1.8/pcl/surface/qhull/qhull.h
+qhull/mem.h
+/usr/local/include/pcl-1.8/pcl/surface/qhull/mem.h
+qhull/qset.h
+/usr/local/include/pcl-1.8/pcl/surface/qhull/qset.h
+qhull/geom.h
+/usr/local/include/pcl-1.8/pcl/surface/qhull/geom.h
+qhull/merge.h
+/usr/local/include/pcl-1.8/pcl/surface/qhull/merge.h
+qhull/poly.h
+/usr/local/include/pcl-1.8/pcl/surface/qhull/poly.h
+qhull/io.h
+/usr/local/include/pcl-1.8/pcl/surface/qhull/io.h
+qhull/stat.h
+/usr/local/include/pcl-1.8/pcl/surface/qhull/stat.h
+
+/usr/local/include/pcl-1.8/pcl/surface/reconstruction.h
+pcl/pcl_base.h
+-
+pcl/PolygonMesh.h
+-
+pcl/search/pcl_search.h
+-
+pcl/conversions.h
+-
+pcl/surface/boost.h
+-
+pcl/surface/impl/reconstruction.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/area_picking_event.h
+pcl/pcl_macros.h
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/boost.h
+boost/function.hpp
+-
+boost/shared_array.hpp
+-
+boost/signals2.hpp
+-
+boost/shared_ptr.hpp
+-
+boost/algorithm/string.hpp
+-
+boost/algorithm/string/split.hpp
+-
+boost/algorithm/string/classification.hpp
+-
+boost/thread.hpp
+-
+boost/bind.hpp
+-
+boost/unordered_map.hpp
+-
+boost/thread/mutex.hpp
+-
+boost/thread/thread.hpp
+-
+boost/foreach.hpp
+-
+boost/date_time/posix_time/posix_time.hpp
+-
+boost/filesystem.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/common/actor_map.h
+pcl/visualization/point_cloud_handlers.h
+-
+vector
+-
+map
+-
+pcl/PCLPointCloud2.h
+-
+boost/unordered_map.hpp
+-
+vtkLODActor.h
+-
+vtkSmartPointer.h
+-
+pcl/PCLPointCloud2.h
+-
+pcl/visualization/boost.h
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/common/common.h
+pcl/pcl_macros.h
+-
+pcl/visualization/eigen.h
+-
+vtkMatrix4x4.h
+-
+pcl/visualization/common/impl/common.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/common/impl/common.hpp
+
+/usr/local/include/pcl-1.8/pcl/visualization/common/impl/shapes.hpp
+vtkSmartPointer.h
+-
+vtkPoints.h
+-
+vtkPolygon.h
+-
+vtkUnstructuredGrid.h
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/common/ren_win_interact_map.h
+map
+-
+string
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/common/shapes.h
+pcl/ModelCoefficients.h
+-
+pcl/point_cloud.h
+-
+pcl/visualization/eigen.h
+-
+pcl/geometry/planar_polygon.h
+-
+pcl/visualization/common/impl/shapes.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/eigen.h
+Eigen/Geometry
+-
+Eigen/Dense
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/impl/pcl_visualizer.hpp
+vtkVersion.h
+-
+vtkSmartPointer.h
+-
+vtkCellArray.h
+-
+vtkLeaderActor2D.h
+-
+vtkVectorText.h
+-
+vtkAlgorithmOutput.h
+-
+vtkFollower.h
+-
+vtkMath.h
+-
+vtkSphereSource.h
+-
+vtkProperty2D.h
+-
+vtkDataSetSurfaceFilter.h
+-
+vtkPointData.h
+-
+vtkPolyDataMapper.h
+-
+vtkProperty.h
+-
+vtkMapper.h
+-
+vtkCellData.h
+-
+vtkDataSetMapper.h
+-
+vtkRenderer.h
+-
+vtkRendererCollection.h
+-
+vtkAppendPolyData.h
+-
+vtkTextProperty.h
+-
+vtkLODActor.h
+-
+vtkLineSource.h
+-
+pcl/visualization/common/shapes.h
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/impl/point_cloud_color_handlers.hpp
+set
+-
+map
+-
+pcl/pcl_macros.h
+-
+pcl/common/colors.h
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/impl/point_cloud_geometry_handlers.hpp
+pcl/pcl_macros.h
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/interactor_style.h
+pcl/console/print.h
+-
+pcl/visualization/common/actor_map.h
+-
+pcl/visualization/common/ren_win_interact_map.h
+-
+pcl/visualization/keyboard_event.h
+-
+pcl/visualization/mouse_event.h
+-
+pcl/visualization/point_picking_event.h
+-
+pcl/visualization/area_picking_event.h
+-
+boost/signals2/signal.hpp
+-
+vtkInteractorStyleRubberBandPick.h
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/keyboard_event.h
+string
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/mouse_event.h
+pcl/visualization/keyboard_event.h
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/pcl_visualizer.h
+pcl/correspondence.h
+-
+pcl/ModelCoefficients.h
+-
+pcl/PolygonMesh.h
+-
+pcl/TextureMesh.h
+-
+pcl/console/print.h
+-
+pcl/visualization/common/actor_map.h
+-
+pcl/visualization/common/common.h
+-
+pcl/visualization/point_cloud_geometry_handlers.h
+-
+pcl/visualization/point_cloud_color_handlers.h
+-
+pcl/visualization/point_picking_event.h
+-
+pcl/visualization/area_picking_event.h
+-
+pcl/visualization/interactor_style.h
+-
+pcl/visualization/impl/pcl_visualizer.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/point_cloud_color_handlers.h
+pcl/point_cloud.h
+-
+pcl/common/io.h
+-
+pcl/visualization/common/common.h
+-
+vtkSmartPointer.h
+-
+vtkDataArray.h
+-
+vtkFloatArray.h
+-
+vtkUnsignedCharArray.h
+-
+pcl/visualization/impl/point_cloud_color_handlers.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/point_cloud_geometry_handlers.h
+pcl/point_cloud.h
+-
+pcl/common/io.h
+-
+vtkSmartPointer.h
+-
+vtkPoints.h
+-
+vtkFloatArray.h
+-
+pcl/visualization/impl/point_cloud_geometry_handlers.hpp
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/point_cloud_handlers.h
+pcl/visualization/point_cloud_geometry_handlers.h
+-
+pcl/visualization/point_cloud_color_handlers.h
+-
+
+/usr/local/include/pcl-1.8/pcl/visualization/point_picking_event.h
+pcl/pcl_macros.h
+-
+vector
+-
+vtkCommand.h
+-
+
diff --git a/trunk/build/src/examples/CMakeFiles/tabletop_object_detection_test.dir/tabletop_object_detection_test.o b/trunk/build/src/examples/CMakeFiles/tabletop_object_detection_test.dir/tabletop_object_detection_test.o
index dc98c411e8c0c6c0bd9b53fc0b383a220a857086..588ac6f3dd73ae352681b8bda08dd5e0ef3d742c 100644
Binary files a/trunk/build/src/examples/CMakeFiles/tabletop_object_detection_test.dir/tabletop_object_detection_test.o and b/trunk/build/src/examples/CMakeFiles/tabletop_object_detection_test.dir/tabletop_object_detection_test.o differ
diff --git a/trunk/doc/html/annotated.html b/trunk/doc/html/annotated.html
new file mode 100644
index 0000000000000000000000000000000000000000..6a4e505a90368430745de7ed2797b9a98e8bc745
--- /dev/null
+++ b/trunk/doc/html/annotated.html
@@ -0,0 +1,65 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: Data Structures</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Data Structures</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structObject.html" target="_self">Object</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classTableTop__Object__Detection.html" target="_self">TableTop_Object_Detection</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtableTop__object__detection__parameters.html" target="_self">tableTop_object_detection_parameters</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/bc_s.png b/trunk/doc/html/bc_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2
Binary files /dev/null and b/trunk/doc/html/bc_s.png differ
diff --git a/trunk/doc/html/bdwn.png b/trunk/doc/html/bdwn.png
new file mode 100644
index 0000000000000000000000000000000000000000..940a0b950443a0bb1b216ac03c45b8a16c955452
Binary files /dev/null and b/trunk/doc/html/bdwn.png differ
diff --git a/trunk/doc/html/classTableTop__Object__Detection.html b/trunk/doc/html/classTableTop__Object__Detection.html
new file mode 100644
index 0000000000000000000000000000000000000000..f65e6a493a56d0d4072bb741d79afee42ef1d103
--- /dev/null
+++ b/trunk/doc/html/classTableTop__Object__Detection.html
@@ -0,0 +1,406 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: TableTop_Object_Detection Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">TableTop_Object_Detection Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aae7c3acdedfe90a1a78d4ba019d53939"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae7c3acdedfe90a1a78d4ba019d53939"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#aae7c3acdedfe90a1a78d4ba019d53939">TableTop_Object_Detection</a> ()</td></tr>
+<tr class="memdesc:aae7c3acdedfe90a1a78d4ba019d53939"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class costructor. <br/></td></tr>
+<tr class="separator:aae7c3acdedfe90a1a78d4ba019d53939"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a75fb88d53b6d2d70fb6f24e0360dcef8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a75fb88d53b6d2d70fb6f24e0360dcef8"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a75fb88d53b6d2d70fb6f24e0360dcef8">~TableTop_Object_Detection</a> ()</td></tr>
+<tr class="memdesc:a75fb88d53b6d2d70fb6f24e0360dcef8"><td class="mdescLeft">&#160;</td><td class="mdescRight">class destructor <br/></td></tr>
+<tr class="separator:a75fb88d53b6d2d70fb6f24e0360dcef8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40051e60619a46e0a1fe3df06a6367d9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">init</a> (pcl::PointCloud&lt; pcl::PointXYZRGBA &gt; input_cloud, <a class="el" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a> &amp;opt)</td></tr>
+<tr class="memdesc:a40051e60619a46e0a1fe3df06a6367d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class initializer.  <a href="#a40051e60619a46e0a1fe3df06a6367d9">More...</a><br/></td></tr>
+<tr class="separator:a40051e60619a46e0a1fe3df06a6367d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52028dcd2c15d9609ca4f5c0419c3e14"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a52028dcd2c15d9609ca4f5c0419c3e14">init</a> (pcl::PointCloud&lt; pcl::PointXYZRGBA &gt; input_cloud)</td></tr>
+<tr class="memdesc:a52028dcd2c15d9609ca4f5c0419c3e14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class initializer, with default parameters.  <a href="#a52028dcd2c15d9609ca4f5c0419c3e14">More...</a><br/></td></tr>
+<tr class="separator:a52028dcd2c15d9609ca4f5c0419c3e14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a890c8e6be3cae5aa41b8b2ecbc3bf34a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a890c8e6be3cae5aa41b8b2ecbc3bf34a"></a>
+<a class="el" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">get_default_parameters</a> ()</td></tr>
+<tr class="memdesc:a890c8e6be3cae5aa41b8b2ecbc3bf34a"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the default parameters of the algorithm <br/></td></tr>
+<tr class="separator:a890c8e6be3cae5aa41b8b2ecbc3bf34a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82b13b33ede8b98cc506715700f5760a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a82b13b33ede8b98cc506715700f5760a"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">segment</a> ()</td></tr>
+<tr class="memdesc:a82b13b33ede8b98cc506715700f5760a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Detect and segment the objects on the table. <br/></td></tr>
+<tr class="separator:a82b13b33ede8b98cc506715700f5760a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04a52e6b5c3c906514a0ef111075f93e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">show_super_voxels</a> (boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer, bool show_adjacency_map, bool show_super_voxel_normals)</td></tr>
+<tr class="memdesc:a04a52e6b5c3c906514a0ef111075f93e"><td class="mdescLeft">&#160;</td><td class="mdescRight">shows in the viewer the supervoxels  <a href="#a04a52e6b5c3c906514a0ef111075f93e">More...</a><br/></td></tr>
+<tr class="separator:a04a52e6b5c3c906514a0ef111075f93e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a892f9cc8b0ab76b1fcac802c4a55cb55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a892f9cc8b0ab76b1fcac802c4a55cb55">show_super_voxels</a> (boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer)</td></tr>
+<tr class="memdesc:a892f9cc8b0ab76b1fcac802c4a55cb55"><td class="mdescLeft">&#160;</td><td class="mdescRight">shows in the viewer the supervoxels  <a href="#a892f9cc8b0ab76b1fcac802c4a55cb55">More...</a><br/></td></tr>
+<tr class="separator:a892f9cc8b0ab76b1fcac802c4a55cb55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe6dd4074db8cec51da0e85d4841c2e9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">show_segmented_objects</a> (boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer)</td></tr>
+<tr class="memdesc:abe6dd4074db8cec51da0e85d4841c2e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">show the segmented objects  <a href="#abe6dd4074db8cec51da0e85d4841c2e9">More...</a><br/></td></tr>
+<tr class="separator:abe6dd4074db8cec51da0e85d4841c2e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b99f038253f4bb3282b3ffea82cd444"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">clean_viewer</a> (boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer)</td></tr>
+<tr class="memdesc:a5b99f038253f4bb3282b3ffea82cd444"><td class="mdescLeft">&#160;</td><td class="mdescRight">clean all the pointclouds or shapes introduced by the class in the viewer  <a href="#a5b99f038253f4bb3282b3ffea82cd444">More...</a><br/></td></tr>
+<tr class="separator:a5b99f038253f4bb3282b3ffea82cd444"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98e6dbcffc628ec9ff8c0b91bd07bf7d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a98e6dbcffc628ec9ff8c0b91bd07bf7d"></a>
+std::vector&lt; <a class="el" href="structObject.html">Object</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">get_segmented_objects</a> ()</td></tr>
+<tr class="memdesc:a98e6dbcffc628ec9ff8c0b91bd07bf7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the detected objects as a vector of the variable <a class="el" href="structObject.html">Object</a>. <br/></td></tr>
+<tr class="separator:a98e6dbcffc628ec9ff8c0b91bd07bf7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3225e48172e84101b8ae82a8c9dd08dd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3225e48172e84101b8ae82a8c9dd08dd"></a>
+std::vector&lt; pcl::PointCloud<br class="typebreak"/>
+&lt; pcl::PointXYZRGBA &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a3225e48172e84101b8ae82a8c9dd08dd">get_segmented_objects_simple</a> ()</td></tr>
+<tr class="memdesc:a3225e48172e84101b8ae82a8c9dd08dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the detected objects as a vector of point clouds. <br/></td></tr>
+<tr class="separator:a3225e48172e84101b8ae82a8c9dd08dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad13b6dd411e0a557a4de7a9323da33bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad13b6dd411e0a557a4de7a9323da33bb"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">print_parameters</a> ()</td></tr>
+<tr class="memdesc:ad13b6dd411e0a557a4de7a9323da33bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the parameters of the algorithm in the shell. <br/></td></tr>
+<tr class="separator:ad13b6dd411e0a557a4de7a9323da33bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48985d7b12316ccecbd85c7e09f1e6af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a48985d7b12316ccecbd85c7e09f1e6af"></a>
+pcl::PointCloud&lt; pcl::PointXYZL &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a48985d7b12316ccecbd85c7e09f1e6af">get_labeled_voxel_cloud</a> ()</td></tr>
+<tr class="memdesc:a48985d7b12316ccecbd85c7e09f1e6af"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns labeld voxel cloud <br/></td></tr>
+<tr class="separator:a48985d7b12316ccecbd85c7e09f1e6af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d6ea56e8d89a278a4640ca827c9da4d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2d6ea56e8d89a278a4640ca827c9da4d"></a>
+std::multimap&lt; uint32_t, uint32_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a2d6ea56e8d89a278a4640ca827c9da4d">get_supervoxel_adjacency</a> ()</td></tr>
+<tr class="memdesc:a2d6ea56e8d89a278a4640ca827c9da4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns supervoxel_adjacency map <br/></td></tr>
+<tr class="separator:a2d6ea56e8d89a278a4640ca827c9da4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe94e4ef82ab5c9474853a97f3bc0d11"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe94e4ef82ab5c9474853a97f3bc0d11"></a>
+std::map&lt; uint32_t, <br class="typebreak"/>
+pcl::Supervoxel<br class="typebreak"/>
+&lt; pcl::PointXYZRGBA &gt;::Ptr &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#abe94e4ef82ab5c9474853a97f3bc0d11">get_supervoxel_clusters</a> ()</td></tr>
+<tr class="memdesc:abe94e4ef82ab5c9474853a97f3bc0d11"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns supervoxel_clusters <br/></td></tr>
+<tr class="separator:abe94e4ef82ab5c9474853a97f3bc0d11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f4100b194f701841e3fe565a613415c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7f4100b194f701841e3fe565a613415c"></a>
+pcl::PointCloud&lt; pcl::PointNormal &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTableTop__Object__Detection.html#a7f4100b194f701841e3fe565a613415c">get_sv_normal_cloud</a> ()</td></tr>
+<tr class="memdesc:a7f4100b194f701841e3fe565a613415c"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns normals point cloud of the supervoxels <br/></td></tr>
+<tr class="separator:a7f4100b194f701841e3fe565a613415c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add2c002a7a38a4c3c7f63da754e34d4e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add2c002a7a38a4c3c7f63da754e34d4e"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_disable_transform</b> (bool disable_transform_in)</td></tr>
+<tr class="separator:add2c002a7a38a4c3c7f63da754e34d4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad074ff558b84c29706e387b81e8149d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad074ff558b84c29706e387b81e8149d4"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_voxel_resolution</b> (double voxel_resolution_in)</td></tr>
+<tr class="separator:ad074ff558b84c29706e387b81e8149d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac54ae37bcdff707624e22d95cc81061b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac54ae37bcdff707624e22d95cc81061b"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_seed_resolution</b> (double seed_resolution_in)</td></tr>
+<tr class="separator:ac54ae37bcdff707624e22d95cc81061b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab957ceeccf9cb866adaf166fa3ba4640"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab957ceeccf9cb866adaf166fa3ba4640"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_color_importance</b> (double color_importance_in)</td></tr>
+<tr class="separator:ab957ceeccf9cb866adaf166fa3ba4640"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad618b94b478efe5e0a47bb558731d562"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad618b94b478efe5e0a47bb558731d562"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_spatial_importance</b> (double spatial_importance_in)</td></tr>
+<tr class="separator:ad618b94b478efe5e0a47bb558731d562"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c3830789a4f31d1a3e8d2c59a91ce92"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c3830789a4f31d1a3e8d2c59a91ce92"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_normal_importance</b> (double normal_importance_in)</td></tr>
+<tr class="separator:a0c3830789a4f31d1a3e8d2c59a91ce92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c88c89d1f0904be45d6656801a51c46"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c88c89d1f0904be45d6656801a51c46"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_concavity_tolerance_threshold</b> (double concavity_tolerance_threshold_in)</td></tr>
+<tr class="separator:a3c88c89d1f0904be45d6656801a51c46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2ee63f06e10c2587ea7a12606b3b2d31"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ee63f06e10c2587ea7a12606b3b2d31"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_smoothness_threshold</b> (double smoothness_threshold_in)</td></tr>
+<tr class="separator:a2ee63f06e10c2587ea7a12606b3b2d31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe29d2ad047e25862df52814533b7dda"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe29d2ad047e25862df52814533b7dda"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_min_segment_size</b> (int min_segment_size_in)</td></tr>
+<tr class="separator:abe29d2ad047e25862df52814533b7dda"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9215deffc4294e71794eff3abc889624"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9215deffc4294e71794eff3abc889624"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_use_extended_convexity</b> (bool use_extended_convexity_in)</td></tr>
+<tr class="separator:a9215deffc4294e71794eff3abc889624"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acebfa6d42f897dd68a30bc22a3dbfcba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acebfa6d42f897dd68a30bc22a3dbfcba"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_use_sanity_criterion</b> (bool use_sanity_criterion_in)</td></tr>
+<tr class="separator:acebfa6d42f897dd68a30bc22a3dbfcba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b658ebb208f3b1086285fdc5ab801f6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9b658ebb208f3b1086285fdc5ab801f6"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_zmin</b> (double zmin_in)</td></tr>
+<tr class="separator:a9b658ebb208f3b1086285fdc5ab801f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27eac153fbfda668801895d40d15704f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a27eac153fbfda668801895d40d15704f"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_zmax</b> (double zmax_in)</td></tr>
+<tr class="separator:a27eac153fbfda668801895d40d15704f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ee88b2f945f66ab3f076903bd5c6fc3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ee88b2f945f66ab3f076903bd5c6fc3"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>set_th_points</b> (int th_points_in)</td></tr>
+<tr class="separator:a9ee88b2f945f66ab3f076903bd5c6fc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b22bdd1bdc4ff9249282c3c3dcee478"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b22bdd1bdc4ff9249282c3c3dcee478"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>get_disable_transform</b> ()</td></tr>
+<tr class="separator:a1b22bdd1bdc4ff9249282c3c3dcee478"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad37232b498025405408cce8c8f7a009f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad37232b498025405408cce8c8f7a009f"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>get_voxel_resolution</b> ()</td></tr>
+<tr class="separator:ad37232b498025405408cce8c8f7a009f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac13fc7708854a6ca46d1c695ef81ce1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac13fc7708854a6ca46d1c695ef81ce1b"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>get_seed_resolution</b> ()</td></tr>
+<tr class="separator:ac13fc7708854a6ca46d1c695ef81ce1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad59d288ae696d9c43493e567e644d97c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad59d288ae696d9c43493e567e644d97c"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>get_color_importance</b> ()</td></tr>
+<tr class="separator:ad59d288ae696d9c43493e567e644d97c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57f4da1d9159065858e89dc64216bfe9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a57f4da1d9159065858e89dc64216bfe9"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>get_spatial_importance</b> ()</td></tr>
+<tr class="separator:a57f4da1d9159065858e89dc64216bfe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1dda1e3bdc6a198409c6a8b5b1ee7460"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1dda1e3bdc6a198409c6a8b5b1ee7460"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>get_normal_importance</b> ()</td></tr>
+<tr class="separator:a1dda1e3bdc6a198409c6a8b5b1ee7460"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f08e47899bf875fd8691b314bfb45c3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4f08e47899bf875fd8691b314bfb45c3"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>get_concavity_tolerance_threshold</b> ()</td></tr>
+<tr class="separator:a4f08e47899bf875fd8691b314bfb45c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab02089d8ff34552693911dd437ef1b54"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab02089d8ff34552693911dd437ef1b54"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>get_smoothness_threshold</b> ()</td></tr>
+<tr class="separator:ab02089d8ff34552693911dd437ef1b54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae222d5db60f666996a6cad42e8ff1e8e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae222d5db60f666996a6cad42e8ff1e8e"></a>
+int&#160;</td><td class="memItemRight" valign="bottom"><b>get_min_segment_size</b> ()</td></tr>
+<tr class="separator:ae222d5db60f666996a6cad42e8ff1e8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70508b556903b41d409b25af17698793"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70508b556903b41d409b25af17698793"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>get_use_extended_convexity</b> ()</td></tr>
+<tr class="separator:a70508b556903b41d409b25af17698793"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19a552d77134637bb057919ce73b2a0a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a19a552d77134637bb057919ce73b2a0a"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>get_use_sanity_criterion</b> ()</td></tr>
+<tr class="separator:a19a552d77134637bb057919ce73b2a0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af27e15ba795278e6538fd62e680d56f7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af27e15ba795278e6538fd62e680d56f7"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>get_zmin</b> ()</td></tr>
+<tr class="separator:af27e15ba795278e6538fd62e680d56f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1294cf3f0cc8872b9d7ffddaea9478e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af1294cf3f0cc8872b9d7ffddaea9478e"></a>
+double&#160;</td><td class="memItemRight" valign="bottom"><b>get_zmax</b> ()</td></tr>
+<tr class="separator:af1294cf3f0cc8872b9d7ffddaea9478e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a175bd137364f6bb2f55fbac2a07fd9ba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a175bd137364f6bb2f55fbac2a07fd9ba"></a>
+int&#160;</td><td class="memItemRight" valign="bottom"><b>get_th_points</b> ()</td></tr>
+<tr class="separator:a175bd137364f6bb2f55fbac2a07fd9ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Class to detect the table top objects in a cluttered scene segmenting the point cloud(organized or not) It returns through the</p>
+<div class="fragment"><div class="line"><a class="code" href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">get_segmented_objects</a>() </div>
+</div><!-- fragment --><p> a vector of Objects, where each object is defined by a point cloud and a label. The table must be the bigger plane in the point cloud. The algorithm is based on the lccp segmentation algorithm: <a href="http://docs.pointclouds.org/trunk/classpcl_1_1_l_c_c_p_segmentation.html">http://docs.pointclouds.org/trunk/classpcl_1_1_l_c_c_p_segmentation.html</a></p>
+<p>How to use: </p>
+<div class="fragment"><div class="line"><a class="code" href="classTableTop__Object__Detection.html">TableTop_Object_Detection</a> seg;</div>
+<div class="line">seg(cloud); <span class="comment">//not pointer</span></div>
+<div class="line">seg.<a class="code" href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">segment</a>();</div>
+<div class="line">std::vector&lt;Object&gt; objects = seg.<a class="code" href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">get_segmented_objects</a>(); </div>
+</div><!-- fragment --><p> or: </p>
+<div class="fragment"><div class="line">std::vector&lt;pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; &gt; objects = seg.<a class="code" href="classTableTop__Object__Detection.html#a3225e48172e84101b8ae82a8c9dd08dd">get_segmented_objects_simple</a>();  </div>
+</div><!-- fragment --> 
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00091">91</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a40051e60619a46e0a1fe3df06a6367d9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void TableTop_Object_Detection::init </td>
+          <td>(</td>
+          <td class="paramtype">pcl::PointCloud&lt; pcl::PointXYZRGBA &gt;&#160;</td>
+          <td class="paramname"><em>input_cloud</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a> &amp;&#160;</td>
+          <td class="paramname"><em>opt</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">input_cloud</td><td>input cloud to segment </td></tr>
+    <tr><td class="paramname">opt</td><td>parameters for the algorithm </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8cpp_source.html#l00013">13</a> of file <a class="el" href="tabletop__object__detection_8cpp_source.html">tabletop_object_detection.cpp</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a52028dcd2c15d9609ca4f5c0419c3e14"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void TableTop_Object_Detection::init </td>
+          <td>(</td>
+          <td class="paramtype">pcl::PointCloud&lt; pcl::PointXYZRGBA &gt;&#160;</td>
+          <td class="paramname"><em>input_cloud</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">input_cloud</td><td>input cloud to segment </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8cpp_source.html#l00021">21</a> of file <a class="el" href="tabletop__object__detection_8cpp_source.html">tabletop_object_detection.cpp</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a04a52e6b5c3c906514a0ef111075f93e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void TableTop_Object_Detection::show_super_voxels </td>
+          <td>(</td>
+          <td class="paramtype">boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;&#160;</td>
+          <td class="paramname"><em>viewer</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>show_adjacency_map</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>show_super_voxel_normals</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">viewer</td><td>viewer on which shows the supervoxels </td></tr>
+    <tr><td class="paramname">show_adjacency_map</td><td>show the connection of the supervoxels </td></tr>
+    <tr><td class="paramname">show_super_voxel_normals</td><td>show the normals of the supervoxels </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8cpp_source.html#l00321">321</a> of file <a class="el" href="tabletop__object__detection_8cpp_source.html">tabletop_object_detection.cpp</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a892f9cc8b0ab76b1fcac802c4a55cb55"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void TableTop_Object_Detection::show_super_voxels </td>
+          <td>(</td>
+          <td class="paramtype">boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;&#160;</td>
+          <td class="paramname"><em>viewer</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">viewer</td><td>viewer on which shows the supervoxels </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8cpp_source.html#l00367">367</a> of file <a class="el" href="tabletop__object__detection_8cpp_source.html">tabletop_object_detection.cpp</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="abe6dd4074db8cec51da0e85d4841c2e9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void TableTop_Object_Detection::show_segmented_objects </td>
+          <td>(</td>
+          <td class="paramtype">boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;&#160;</td>
+          <td class="paramname"><em>viewer</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">viewer</td><td>viewer in which shows the objects </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8cpp_source.html#l00404">404</a> of file <a class="el" href="tabletop__object__detection_8cpp_source.html">tabletop_object_detection.cpp</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5b99f038253f4bb3282b3ffea82cd444"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void TableTop_Object_Detection::clean_viewer </td>
+          <td>(</td>
+          <td class="paramtype">boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;&#160;</td>
+          <td class="paramname"><em>viewer</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">viewer</td><td>viewer to clean up </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8cpp_source.html#l00430">430</a> of file <a class="el" href="tabletop__object__detection_8cpp_source.html">tabletop_object_detection.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>/home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/<a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a></li>
+<li>/home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/<a class="el" href="tabletop__object__detection_8cpp_source.html">tabletop_object_detection.cpp</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/classes.html b/trunk/doc/html/classes.html
new file mode 100644
index 0000000000000000000000000000000000000000..2e0e126be89c164de424e481965123eec65b4ea4
--- /dev/null
+++ b/trunk/doc/html/classes.html
@@ -0,0 +1,69 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: Data Structure Index</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Data Structure Index</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="qindex"><a class="qindex" href="#letter_O">O</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a></div>
+<table style="margin: 10px; white-space: nowrap;" align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
+<tr><td rowspan="2" valign="bottom"><a name="letter_O"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;O&#160;&#160;</div></td></tr></table>
+</td><td rowspan="2" valign="bottom"><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;T&#160;&#160;</div></td></tr></table>
+</td><td rowspan="2" valign="bottom"><a name="letter_t"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;t&#160;&#160;</div></td></tr></table>
+</td><td></td></tr>
+<tr><td></td></tr>
+<tr><td valign="top"><a class="el" href="structObject.html">Object</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classTableTop__Object__Detection.html">TableTop_Object_Detection</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a>&#160;&#160;&#160;</td><td></td></tr>
+<tr><td></td><td></td><td></td><td></td></tr>
+</table>
+<div class="qindex"><a class="qindex" href="#letter_O">O</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a></div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/closed.png b/trunk/doc/html/closed.png
new file mode 100644
index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5
Binary files /dev/null and b/trunk/doc/html/closed.png differ
diff --git a/trunk/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/trunk/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html
new file mode 100644
index 0000000000000000000000000000000000000000..d43513902081b24485d2ebf9175dc827a9372484
--- /dev/null
+++ b/trunk/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html
@@ -0,0 +1,68 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: /home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">src Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_e931c1a3f0014e624d0645a271726ad2"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_e931c1a3f0014e624d0645a271726ad2.html">examples</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:tabletop__object__detection_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>tabletop_object_detection.cpp</b> <a href="tabletop__object__detection_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tabletop__object__detection_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>tabletop_object_detection.h</b> <a href="tabletop__object__detection_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/dir_e931c1a3f0014e624d0645a271726ad2.html b/trunk/doc/html/dir_e931c1a3f0014e624d0645a271726ad2.html
new file mode 100644
index 0000000000000000000000000000000000000000..0b9de46a09adf5c1615e2ebb213aa8ef615ed68b
--- /dev/null
+++ b/trunk/doc/html/dir_e931c1a3f0014e624d0645a271726ad2.html
@@ -0,0 +1,61 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: /home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/examples Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_e931c1a3f0014e624d0645a271726ad2.html">examples</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">examples Directory Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:tabletop__object__detection__test_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>tabletop_object_detection_test.cpp</b> <a href="tabletop__object__detection__test_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/doxygen.css b/trunk/doc/html/doxygen.css
new file mode 100644
index 0000000000000000000000000000000000000000..f0f36f89f58f4aaf380c768f6f8d3020e225ec58
--- /dev/null
+++ b/trunk/doc/html/doxygen.css
@@ -0,0 +1,1366 @@
+/* The standard CSS for doxygen 1.8.6 */
+
+body, table, div, p, dl {
+	font: 400 14px/22px Roboto,sans-serif;
+}
+
+/* @group Heading Levels */
+
+h1.groupheader {
+	font-size: 150%;
+}
+
+.title {
+	font: 400 14px/28px Roboto,sans-serif;
+	font-size: 150%;
+	font-weight: bold;
+	margin: 10px 2px;
+}
+
+h2.groupheader {
+	border-bottom: 1px solid #879ECB;
+	color: #354C7B;
+	font-size: 150%;
+	font-weight: normal;
+	margin-top: 1.75em;
+	padding-top: 8px;
+	padding-bottom: 4px;
+	width: 100%;
+}
+
+h3.groupheader {
+	font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+	-webkit-transition: text-shadow 0.5s linear;
+	-moz-transition: text-shadow 0.5s linear;
+	-ms-transition: text-shadow 0.5s linear;
+	-o-transition: text-shadow 0.5s linear;
+	transition: text-shadow 0.5s linear;
+	margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+	text-shadow: 0 0 15px cyan;
+}
+
+dt {
+	font-weight: bold;
+}
+
+div.multicol {
+	-moz-column-gap: 1em;
+	-webkit-column-gap: 1em;
+	-moz-column-count: 3;
+	-webkit-column-count: 3;
+}
+
+p.startli, p.startdd {
+	margin-top: 2px;
+}
+
+p.starttd {
+	margin-top: 0px;
+}
+
+p.endli {
+	margin-bottom: 0px;
+}
+
+p.enddd {
+	margin-bottom: 4px;
+}
+
+p.endtd {
+	margin-bottom: 2px;
+}
+
+/* @end */
+
+caption {
+	font-weight: bold;
+}
+
+span.legend {
+        font-size: 70%;
+        text-align: center;
+}
+
+h3.version {
+        font-size: 90%;
+        text-align: center;
+}
+
+div.qindex, div.navtab{
+	background-color: #EBEFF6;
+	border: 1px solid #A3B4D7;
+	text-align: center;
+}
+
+div.qindex, div.navpath {
+	width: 100%;
+	line-height: 140%;
+}
+
+div.navtab {
+	margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+	color: #3D578C;
+	font-weight: normal;
+	text-decoration: none;
+}
+
+.contents a:visited {
+	color: #4665A2;
+}
+
+a:hover {
+	text-decoration: underline;
+}
+
+a.qindex {
+	font-weight: bold;
+}
+
+a.qindexHL {
+	font-weight: bold;
+	background-color: #9CAFD4;
+	color: #ffffff;
+	border: 1px double #869DCA;
+}
+
+.contents a.qindexHL:visited {
+        color: #ffffff;
+}
+
+a.el {
+	font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited, a.line, a.line:visited {
+	color: #4665A2; 
+}
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
+	color: #4665A2; 
+}
+
+/* @end */
+
+dl.el {
+	margin-left: -1cm;
+}
+
+pre.fragment {
+        border: 1px solid #C4CFE5;
+        background-color: #FBFCFD;
+        padding: 4px 6px;
+        margin: 4px 8px 4px 2px;
+        overflow: auto;
+        word-wrap: break-word;
+        font-size:  9pt;
+        line-height: 125%;
+        font-family: monospace, fixed;
+        font-size: 105%;
+}
+
+div.fragment {
+        padding: 4px 6px;
+        margin: 4px 8px 4px 2px;
+	background-color: #FBFCFD;
+	border: 1px solid #C4CFE5;
+}
+
+div.line {
+	font-family: monospace, fixed;
+        font-size: 13px;
+	min-height: 13px;
+	line-height: 1.0;
+	text-wrap: unrestricted;
+	white-space: -moz-pre-wrap; /* Moz */
+	white-space: -pre-wrap;     /* Opera 4-6 */
+	white-space: -o-pre-wrap;   /* Opera 7 */
+	white-space: pre-wrap;      /* CSS3  */
+	word-wrap: break-word;      /* IE 5.5+ */
+	text-indent: -53px;
+	padding-left: 53px;
+	padding-bottom: 0px;
+	margin: 0px;
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+div.line.glow {
+	background-color: cyan;
+	box-shadow: 0 0 10px cyan;
+}
+
+
+span.lineno {
+	padding-right: 4px;
+	text-align: right;
+	border-right: 2px solid #0F0;
+	background-color: #E8E8E8;
+        white-space: pre;
+}
+span.lineno a {
+	background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+	background-color: #C8C8C8;
+}
+
+div.ah {
+	background-color: black;
+	font-weight: bold;
+	color: #ffffff;
+	margin-bottom: 3px;
+	margin-top: 3px;
+	padding: 0.2em;
+	border: solid thin #333;
+	border-radius: 0.5em;
+	-webkit-border-radius: .5em;
+	-moz-border-radius: .5em;
+	box-shadow: 2px 2px 3px #999;
+	-webkit-box-shadow: 2px 2px 3px #999;
+	-moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+	background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+	background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000);
+}
+
+div.groupHeader {
+	margin-left: 16px;
+	margin-top: 12px;
+	font-weight: bold;
+}
+
+div.groupText {
+	margin-left: 16px;
+	font-style: italic;
+}
+
+body {
+	background-color: white;
+	color: black;
+        margin: 0;
+}
+
+div.contents {
+	margin-top: 10px;
+	margin-left: 12px;
+	margin-right: 8px;
+}
+
+td.indexkey {
+	background-color: #EBEFF6;
+	font-weight: bold;
+	border: 1px solid #C4CFE5;
+	margin: 2px 0px 2px 0;
+	padding: 2px 10px;
+        white-space: nowrap;
+        vertical-align: top;
+}
+
+td.indexvalue {
+	background-color: #EBEFF6;
+	border: 1px solid #C4CFE5;
+	padding: 2px 10px;
+	margin: 2px 0px;
+}
+
+tr.memlist {
+	background-color: #EEF1F7;
+}
+
+p.formulaDsp {
+	text-align: center;
+}
+
+img.formulaDsp {
+	
+}
+
+img.formulaInl {
+	vertical-align: middle;
+}
+
+div.center {
+	text-align: center;
+        margin-top: 0px;
+        margin-bottom: 0px;
+        padding: 0px;
+}
+
+div.center img {
+	border: 0px;
+}
+
+address.footer {
+	text-align: right;
+	padding-right: 12px;
+}
+
+img.footer {
+	border: 0px;
+	vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+	color: #008000
+}
+
+span.keywordtype {
+	color: #604020
+}
+
+span.keywordflow {
+	color: #e08000
+}
+
+span.comment {
+	color: #800000
+}
+
+span.preprocessor {
+	color: #806020
+}
+
+span.stringliteral {
+	color: #002080
+}
+
+span.charliteral {
+	color: #008080
+}
+
+span.vhdldigit { 
+	color: #ff00ff 
+}
+
+span.vhdlchar { 
+	color: #000000 
+}
+
+span.vhdlkeyword { 
+	color: #700070 
+}
+
+span.vhdllogic { 
+	color: #ff0000 
+}
+
+blockquote {
+        background-color: #F7F8FB;
+        border-left: 2px solid #9CAFD4;
+        margin: 0 24px 0 4px;
+        padding: 0 12px 0 16px;
+}
+
+/* @end */
+
+/*
+.search {
+	color: #003399;
+	font-weight: bold;
+}
+
+form.search {
+	margin-bottom: 0px;
+	margin-top: 0px;
+}
+
+input.search {
+	font-size: 75%;
+	color: #000080;
+	font-weight: normal;
+	background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+	font-size: 75%;
+}
+
+.dirtab {
+	padding: 4px;
+	border-collapse: collapse;
+	border: 1px solid #A3B4D7;
+}
+
+th.dirtab {
+	background: #EBEFF6;
+	font-weight: bold;
+}
+
+hr {
+	height: 0px;
+	border: none;
+	border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
+	height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+	border-spacing: 0px;
+	padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+	background-color: cyan;
+	box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+	background-color: #F9FAFC;
+	border: none;
+	margin: 4px;
+	padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+	padding: 0px 8px 4px 8px;
+	color: #555;
+}
+
+.memSeparator {
+        border-bottom: 1px solid #DEE4F0;
+        line-height: 1px;
+        margin: 0px;
+        padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+        white-space: nowrap;
+}
+
+.memItemRight {
+	width: 100%;
+}
+
+.memTemplParams {
+	color: #4665A2;
+        white-space: nowrap;
+	font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtemplate {
+	font-size: 80%;
+	color: #4665A2;
+	font-weight: normal;
+	margin-left: 9px;
+}
+
+.memnav {
+	background-color: #EBEFF6;
+	border: 1px solid #A3B4D7;
+	text-align: center;
+	margin: 2px;
+	margin-right: 15px;
+	padding: 2px;
+}
+
+.mempage {
+	width: 100%;
+}
+
+.memitem {
+	padding: 0;
+	margin-bottom: 10px;
+	margin-right: 5px;
+        -webkit-transition: box-shadow 0.5s linear;
+        -moz-transition: box-shadow 0.5s linear;
+        -ms-transition: box-shadow 0.5s linear;
+        -o-transition: box-shadow 0.5s linear;
+        transition: box-shadow 0.5s linear;
+        display: table !important;
+        width: 100%;
+}
+
+.memitem.glow {
+         box-shadow: 0 0 15px cyan;
+}
+
+.memname {
+        font-weight: bold;
+        margin-left: 6px;
+}
+
+.memname td {
+	vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+        border-top: 1px solid #A8B8D9;
+        border-left: 1px solid #A8B8D9;
+        border-right: 1px solid #A8B8D9;
+        padding: 6px 0px 6px 0px;
+        color: #253555;
+        font-weight: bold;
+        text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+        background-image:url('nav_f.png');
+        background-repeat:repeat-x;
+        background-color: #E2E8F2;
+        /* opera specific markup */
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        border-top-right-radius: 4px;
+        border-top-left-radius: 4px;
+        /* firefox specific markup */
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        -moz-border-radius-topright: 4px;
+        -moz-border-radius-topleft: 4px;
+        /* webkit specific markup */
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        -webkit-border-top-right-radius: 4px;
+        -webkit-border-top-left-radius: 4px;
+
+}
+
+.memdoc, dl.reflist dd {
+        border-bottom: 1px solid #A8B8D9;      
+        border-left: 1px solid #A8B8D9;      
+        border-right: 1px solid #A8B8D9; 
+        padding: 6px 10px 2px 10px;
+        background-color: #FBFCFD;
+        border-top-width: 0;
+        background-image:url('nav_g.png');
+        background-repeat:repeat-x;
+        background-color: #FFFFFF;
+        /* opera specific markup */
+        border-bottom-left-radius: 4px;
+        border-bottom-right-radius: 4px;
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        /* firefox specific markup */
+        -moz-border-radius-bottomleft: 4px;
+        -moz-border-radius-bottomright: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        /* webkit specific markup */
+        -webkit-border-bottom-left-radius: 4px;
+        -webkit-border-bottom-right-radius: 4px;
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+        padding: 5px;
+}
+
+dl.reflist dd {
+        margin: 0px 0px 10px 0px;
+        padding: 5px;
+}
+
+.paramkey {
+	text-align: right;
+}
+
+.paramtype {
+	white-space: nowrap;
+}
+
+.paramname {
+	color: #602020;
+	white-space: nowrap;
+}
+.paramname em {
+	font-style: normal;
+}
+.paramname code {
+        line-height: 14px;
+}
+
+.params, .retval, .exception, .tparams {
+        margin-left: 0px;
+        padding-left: 0px;
+}       
+
+.params .paramname, .retval .paramname {
+        font-weight: bold;
+        vertical-align: top;
+}
+        
+.params .paramtype {
+        font-style: italic;
+        vertical-align: top;
+}       
+        
+.params .paramdir {
+        font-family: "courier new",courier,monospace;
+        vertical-align: top;
+}
+
+table.mlabels {
+	border-spacing: 0px;
+}
+
+td.mlabels-left {
+	width: 100%;
+	padding: 0px;
+}
+
+td.mlabels-right {
+	vertical-align: bottom;
+	padding: 0px;
+	white-space: nowrap;
+}
+
+span.mlabels {
+        margin-left: 8px;
+}
+
+span.mlabel {
+        background-color: #728DC1;
+        border-top:1px solid #5373B4;
+        border-left:1px solid #5373B4;
+        border-right:1px solid #C4CFE5;
+        border-bottom:1px solid #C4CFE5;
+	text-shadow: none;
+	color: white;
+	margin-right: 4px;
+	padding: 2px 3px;
+	border-radius: 3px;
+	font-size: 7pt;
+	white-space: nowrap;
+	vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view when not used as main index */
+
+div.directory {
+        margin: 10px 0px;
+        border-top: 1px solid #A8B8D9;
+        border-bottom: 1px solid #A8B8D9;
+        width: 100%;
+}
+
+.directory table {
+        border-collapse:collapse;
+}
+
+.directory td {
+        margin: 0px;
+        padding: 0px;
+	vertical-align: top;
+}
+
+.directory td.entry {
+        white-space: nowrap;
+        padding-right: 6px;
+	padding-top: 3px;
+}
+
+.directory td.entry a {
+        outline:none;
+}
+
+.directory td.entry a img {
+        border: none;
+}
+
+.directory td.desc {
+        width: 100%;
+        padding-left: 6px;
+	padding-right: 6px;
+	padding-top: 3px;
+	border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+	padding-left: 6px;
+	background-color: #F7F8FB;
+}
+
+.directory img {
+	vertical-align: -30%;
+}
+
+.directory .levels {
+        white-space: nowrap;
+        width: 100%;
+        text-align: right;
+        font-size: 9pt;
+}
+
+.directory .levels span {
+        cursor: pointer;
+        padding-left: 2px;
+        padding-right: 2px;
+	color: #3D578C;
+}
+
+div.dynheader {
+        margin-top: 8px;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+address {
+	font-style: normal;
+	color: #2A3D61;
+}
+
+table.doxtable {
+	border-collapse:collapse;
+        margin-top: 4px;
+        margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+	border: 1px solid #2D4068;
+	padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+	background-color: #374F7F;
+	color: #FFFFFF;
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+}
+
+table.fieldtable {
+        /*width: 100%;*/
+        margin-bottom: 10px;
+        border: 1px solid #A8B8D9;
+        border-spacing: 0px;
+        -moz-border-radius: 4px;
+        -webkit-border-radius: 4px;
+        border-radius: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+        -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+        box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+        padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+        white-space: nowrap;
+        border-right: 1px solid #A8B8D9;
+        border-bottom: 1px solid #A8B8D9;
+        vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+        padding-top: 3px;
+}
+
+.fieldtable td.fielddoc {
+        border-bottom: 1px solid #A8B8D9;
+        /*width: 100%;*/
+}
+
+.fieldtable td.fielddoc p:first-child {
+        margin-top: 0px;
+}       
+        
+.fieldtable td.fielddoc p:last-child {
+        margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+        border-bottom: none;
+}
+
+.fieldtable th {
+        background-image:url('nav_f.png');
+        background-repeat:repeat-x;
+        background-color: #E2E8F2;
+        font-size: 90%;
+        color: #253555;
+        padding-bottom: 4px;
+        padding-top: 5px;
+        text-align:left;
+        -moz-border-radius-topleft: 4px;
+        -moz-border-radius-topright: 4px;
+        -webkit-border-top-left-radius: 4px;
+        -webkit-border-top-right-radius: 4px;
+        border-top-left-radius: 4px;
+        border-top-right-radius: 4px;
+        border-bottom: 1px solid #A8B8D9;
+}
+
+
+.tabsearch {
+	top: 0px;
+	left: 10px;
+	height: 36px;
+	background-image: url('tab_b.png');
+	z-index: 101;
+	overflow: hidden;
+	font-size: 13px;
+}
+
+.navpath ul
+{
+	font-size: 11px;
+	background-image:url('tab_b.png');
+	background-repeat:repeat-x;
+	background-position: 0 -5px;
+	height:30px;
+	line-height:30px;
+	color:#8AA0CC;
+	border:solid 1px #C2CDE4;
+	overflow:hidden;
+	margin:0px;
+	padding:0px;
+}
+
+.navpath li
+{
+	list-style-type:none;
+	float:left;
+	padding-left:10px;
+	padding-right:15px;
+	background-image:url('bc_s.png');
+	background-repeat:no-repeat;
+	background-position:right;
+	color:#364D7C;
+}
+
+.navpath li.navelem a
+{
+	height:32px;
+	display:block;
+	text-decoration: none;
+	outline: none;
+	color: #283A5D;
+	font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+	text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+	text-decoration: none;        
+}
+
+.navpath li.navelem a:hover
+{
+	color:#6884BD;
+}
+
+.navpath li.footer
+{
+        list-style-type:none;
+        float:right;
+        padding-left:10px;
+        padding-right:15px;
+        background-image:none;
+        background-repeat:no-repeat;
+        background-position:right;
+        color:#364D7C;
+        font-size: 8pt;
+}
+
+
+div.summary
+{
+	float: right;
+	font-size: 8pt;
+	padding-right: 5px;
+	width: 50%;
+	text-align: right;
+}       
+
+div.summary a
+{
+	white-space: nowrap;
+}
+
+div.ingroups
+{
+	font-size: 8pt;
+	width: 50%;
+	text-align: left;
+}
+
+div.ingroups a
+{
+	white-space: nowrap;
+}
+
+div.header
+{
+        background-image:url('nav_h.png');
+        background-repeat:repeat-x;
+	background-color: #F9FAFC;
+	margin:  0px;
+	border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+	padding: 5px 5px 5px 10px;
+}
+
+dl
+{
+        padding: 0 0 0 10px;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
+dl.section
+{
+	margin-left: 0px;
+	padding-left: 0px;
+}
+
+dl.note
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #D0C000;
+}
+
+dl.warning, dl.attention
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #00D000;
+}
+
+dl.deprecated
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #505050;
+}
+
+dl.todo
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #00C0E0;
+}
+
+dl.test
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #3030E0;
+}
+
+dl.bug
+{
+        margin-left:-7px;
+        padding-left: 3px;
+        border-left:4px solid;
+        border-color: #C08050;
+}
+
+dl.section dd {
+	margin-bottom: 6px;
+}
+
+
+#projectlogo
+{
+	text-align: center;
+	vertical-align: bottom;
+	border-collapse: separate;
+}
+ 
+#projectlogo img
+{ 
+	border: 0px none;
+}
+ 
+#projectname
+{
+	font: 300% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 2px 0px;
+}
+    
+#projectbrief
+{
+	font: 120% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 0px;
+}
+
+#projectnumber
+{
+	font: 50% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 0px;
+}
+
+#titlearea
+{
+	padding: 0px;
+	margin: 0px;
+	width: 100%;
+	border-bottom: 1px solid #5373B4;
+}
+
+.image
+{
+        text-align: center;
+}
+
+.dotgraph
+{
+        text-align: center;
+}
+
+.mscgraph
+{
+        text-align: center;
+}
+
+.diagraph
+{
+        text-align: center;
+}
+
+.caption
+{
+	font-weight: bold;
+}
+
+div.zoom
+{
+	border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+        margin-bottom:50px;
+}
+
+dl.citelist dt {
+        color:#334975;
+        float:left;
+        font-weight:bold;
+        margin-right:10px;
+        padding:5px;
+}
+
+dl.citelist dd {
+        margin:2px 0;
+        padding:5px 0;
+}
+
+div.toc {
+        padding: 14px 25px;
+        background-color: #F4F6FA;
+        border: 1px solid #D8DFEE;
+        border-radius: 7px 7px 7px 7px;
+        float: right;
+        height: auto;
+        margin: 0 20px 10px 10px;
+        width: 200px;
+}
+
+div.toc li {
+        background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+        font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+        margin-top: 5px;
+        padding-left: 10px;
+        padding-top: 2px;
+}
+
+div.toc h3 {
+        font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+	color: #4665A2;
+        border-bottom: 0 none;
+        margin: 0;
+}
+
+div.toc ul {
+        list-style: none outside none;
+        border: medium none;
+        padding: 0px;
+}       
+
+div.toc li.level1 {
+        margin-left: 0px;
+}
+
+div.toc li.level2 {
+        margin-left: 15px;
+}
+
+div.toc li.level3 {
+        margin-left: 30px;
+}
+
+div.toc li.level4 {
+        margin-left: 45px;
+}
+
+.inherit_header {
+        font-weight: bold;
+        color: gray;
+        cursor: pointer;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+.inherit_header td {
+        padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+        display: none;
+}
+
+tr.heading h2 {
+        margin-top: 12px;
+        margin-bottom: 4px;
+}
+
+/* tooltip related style info */
+
+.ttc {
+        position: absolute;
+        display: none;
+}
+
+#powerTip {
+	cursor: default;
+	white-space: nowrap;
+	background-color: white;
+	border: 1px solid gray;
+	border-radius: 4px 4px 4px 4px;
+	box-shadow: 1px 1px 7px gray;
+	display: none;
+	font-size: smaller;
+	max-width: 80%;
+	opacity: 0.9;
+	padding: 1ex 1em 1em;
+	position: absolute;
+	z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+        color: grey;
+	font-style: italic;
+}
+
+#powerTip div.ttname a {
+        font-weight: bold;
+}
+
+#powerTip div.ttname {
+        font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+        color: #006318;
+}
+
+#powerTip div {
+        margin: 0px;
+        padding: 0px;
+        font: 12px/16px Roboto,sans-serif;
+}
+
+#powerTip:before, #powerTip:after {
+	content: "";
+	position: absolute;
+	margin: 0px;
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.w:after,  #powerTip.w:before,
+#powerTip.e:after,  #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	border: solid transparent;
+	content: " ";
+	height: 0;
+	width: 0;
+	position: absolute;
+}
+
+#powerTip.n:after,  #powerTip.s:after,
+#powerTip.w:after,  #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+	border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before,  #powerTip.s:before,
+#powerTip.w:before,  #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+	border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+	top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+	border-top-color: #ffffff;
+	border-width: 10px;
+	margin: 0px -10px;
+}
+#powerTip.n:before {
+	border-top-color: #808080;
+	border-width: 11px;
+	margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+	left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+	right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+	left: 14px;
+}
+
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+	border-bottom-color: #ffffff;
+	border-width: 10px;
+	margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+	border-bottom-color: #808080;
+	border-width: 11px;
+	margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+	left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+	right: 14px;
+}
+
+#powerTip.se:after, #powerTip.se:before {
+	left: 14px;
+}
+
+#powerTip.e:after, #powerTip.e:before {
+	left: 100%;
+}
+#powerTip.e:after {
+	border-left-color: #ffffff;
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.e:before {
+	border-left-color: #808080;
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+#powerTip.w:after, #powerTip.w:before {
+	right: 100%;
+}
+#powerTip.w:after {
+	border-right-color: #ffffff;
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.w:before {
+	border-right-color: #808080;
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+@media print
+{
+  #top { display: none; }
+  #side-nav { display: none; }
+  #nav-path { display: none; }
+  body { overflow:visible; }
+  h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+  .summary { display: none; }
+  .memitem { page-break-inside: avoid; }
+  #doc-content
+  {
+    margin-left:0 !important;
+    height:auto !important;
+    width:auto !important;
+    overflow:inherit;
+    display:inline;
+  }
+}
+
diff --git a/trunk/doc/html/doxygen.png b/trunk/doc/html/doxygen.png
new file mode 100644
index 0000000000000000000000000000000000000000..3ff17d807fd8aa003bed8bb2a69e8f0909592fd1
Binary files /dev/null and b/trunk/doc/html/doxygen.png differ
diff --git a/trunk/doc/html/dynsections.js b/trunk/doc/html/dynsections.js
new file mode 100644
index 0000000000000000000000000000000000000000..2f15470d723d3741239ced1702c4b02648199dae
--- /dev/null
+++ b/trunk/doc/html/dynsections.js
@@ -0,0 +1,104 @@
+function toggleVisibility(linkObj)
+{
+ var base = $(linkObj).attr('id');
+ var summary = $('#'+base+'-summary');
+ var content = $('#'+base+'-content');
+ var trigger = $('#'+base+'-trigger');
+ var src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+   content.hide();
+   summary.show();
+   $(linkObj).addClass('closed').removeClass('opened');
+   $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+   content.show();
+   summary.hide();
+   $(linkObj).removeClass('closed').addClass('opened');
+   $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+ } 
+ return false;
+}
+
+function updateStripes()
+{
+  $('table.directory tr').
+       removeClass('even').filter(':visible:even').addClass('even');
+}
+function toggleLevel(level)
+{
+  $('table.directory tr').each(function(){ 
+    var l = this.id.split('_').length-1;
+    var i = $('#img'+this.id.substring(3));
+    var a = $('#arr'+this.id.substring(3));
+    if (l<level+1) {
+      i.attr('src','ftv2folderopen.png');
+      a.attr('src','ftv2mnode.png');
+      $(this).show();
+    } else if (l==level+1) {
+      i.attr('src','ftv2folderclosed.png');
+      a.attr('src','ftv2pnode.png');
+      $(this).show();
+    } else {
+      $(this).hide();
+    }
+  });
+  updateStripes();
+}
+
+function toggleFolder(id)
+{
+  //The clicked row
+  var currentRow = $('#row_'+id);
+  var currentRowImages = currentRow.find("img");
+
+  //All rows after the clicked row
+  var rows = currentRow.nextAll("tr");
+
+  //Only match elements AFTER this one (can't hide elements before)
+  var childRows = rows.filter(function() {
+    var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+    return this.id.match(re);
+  });
+
+  //First row is visible we are HIDING
+  if (childRows.filter(':first').is(':visible')===true) {
+    currentRowImages.filter("[id^=arr]").attr('src', 'ftv2pnode.png');
+    currentRowImages.filter("[id^=img]").attr('src', 'ftv2folderclosed.png');
+    rows.filter("[id^=row_"+id+"]").hide();
+  } else { //We are SHOWING
+    //All sub images
+    var childImages = childRows.find("img");
+    var childImg = childImages.filter("[id^=img]");
+    var childArr = childImages.filter("[id^=arr]");
+
+    currentRow.find("[id^=arr]").attr('src', 'ftv2mnode.png'); //open row
+    currentRow.find("[id^=img]").attr('src', 'ftv2folderopen.png'); //open row
+    childImg.attr('src','ftv2folderclosed.png'); //children closed
+    childArr.attr('src','ftv2pnode.png'); //children closed
+    childRows.show(); //show all children
+  }
+  updateStripes();
+}
+
+
+function toggleInherit(id)
+{
+  var rows = $('tr.inherit.'+id);
+  var img = $('tr.inherit_header.'+id+' img');
+  var src = $(img).attr('src');
+  if (rows.filter(':first').is(':visible')===true) {
+    rows.css('display','none');
+    $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+  } else {
+    rows.css('display','table-row'); // using show() causes jump in firefox
+    $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+  }
+}
+
+
+$(document).ready(function() {
+  $('.code,.codeRef').each(function() {
+    $(this).data('powertip',$('#'+$(this).attr('href').replace(/.*\//,'').replace(/[^a-z_A-Z0-9]/g,'_')).html());
+    $(this).powerTip({ placement: 's', smartPlacement: true, mouseOnToPopup: true });
+  });
+});
diff --git a/trunk/doc/html/examples.html b/trunk/doc/html/examples.html
new file mode 100644
index 0000000000000000000000000000000000000000..1dfb076dffdc27486425706d0f179d64a90b7578
--- /dev/null
+++ b/trunk/doc/html/examples.html
@@ -0,0 +1,55 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: Examples</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li class="current"><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Examples</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all examples:</div><ul>
+<li><a class="el" href="tableTop_object_segmentation_test_8cpp-example.html">tableTop_object_segmentation_test.cpp</a></li>
+
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/files.html b/trunk/doc/html/files.html
new file mode 100644
index 0000000000000000000000000000000000000000..b9269a61b75a3aef2c434360486577e6b3e882cd
--- /dev/null
+++ b/trunk/doc/html/files.html
@@ -0,0 +1,65 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: File List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="files.html"><span>File&#160;List</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">File List</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all documented files with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img id="arr_0_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('0_')"/><img id="img_0_" src="ftv2folderopen.png" alt="-" width="24" height="22" onclick="toggleFolder('0_')"/><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" target="_self">src</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_0_0_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_0_')"/><img id="img_0_0_" src="ftv2folderopen.png" alt="-" width="24" height="22" onclick="toggleFolder('0_0_')"/><a class="el" href="dir_e931c1a3f0014e624d0645a271726ad2.html" target="_self">examples</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="tabletop__object__detection__test_8cpp_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>tabletop_object_detection_test.cpp</b></td><td class="desc"></td></tr>
+<tr id="row_0_1_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="tabletop__object__detection_8cpp_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>tabletop_object_detection.cpp</b></td><td class="desc"></td></tr>
+<tr id="row_0_2_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="tabletop__object__detection_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>tabletop_object_detection.h</b></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/ftv2blank.png b/trunk/doc/html/ftv2blank.png
new file mode 100644
index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48
Binary files /dev/null and b/trunk/doc/html/ftv2blank.png differ
diff --git a/trunk/doc/html/ftv2cl.png b/trunk/doc/html/ftv2cl.png
new file mode 100644
index 0000000000000000000000000000000000000000..132f6577bf7f085344904602815a260d29f55d9b
Binary files /dev/null and b/trunk/doc/html/ftv2cl.png differ
diff --git a/trunk/doc/html/ftv2doc.png b/trunk/doc/html/ftv2doc.png
new file mode 100644
index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501
Binary files /dev/null and b/trunk/doc/html/ftv2doc.png differ
diff --git a/trunk/doc/html/ftv2folderclosed.png b/trunk/doc/html/ftv2folderclosed.png
new file mode 100644
index 0000000000000000000000000000000000000000..bb8ab35edce8e97554e360005ee9fc5bffb36e66
Binary files /dev/null and b/trunk/doc/html/ftv2folderclosed.png differ
diff --git a/trunk/doc/html/ftv2folderopen.png b/trunk/doc/html/ftv2folderopen.png
new file mode 100644
index 0000000000000000000000000000000000000000..d6c7f676a3b3ef8c2c307d319dff3c6a604eb227
Binary files /dev/null and b/trunk/doc/html/ftv2folderopen.png differ
diff --git a/trunk/doc/html/ftv2lastnode.png b/trunk/doc/html/ftv2lastnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48
Binary files /dev/null and b/trunk/doc/html/ftv2lastnode.png differ
diff --git a/trunk/doc/html/ftv2link.png b/trunk/doc/html/ftv2link.png
new file mode 100644
index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501
Binary files /dev/null and b/trunk/doc/html/ftv2link.png differ
diff --git a/trunk/doc/html/ftv2mlastnode.png b/trunk/doc/html/ftv2mlastnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..0b63f6d38c4b9ec907b820192ebe9724ed6eca22
Binary files /dev/null and b/trunk/doc/html/ftv2mlastnode.png differ
diff --git a/trunk/doc/html/ftv2mnode.png b/trunk/doc/html/ftv2mnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..0b63f6d38c4b9ec907b820192ebe9724ed6eca22
Binary files /dev/null and b/trunk/doc/html/ftv2mnode.png differ
diff --git a/trunk/doc/html/ftv2mo.png b/trunk/doc/html/ftv2mo.png
new file mode 100644
index 0000000000000000000000000000000000000000..4bfb80f76e65815989a9350ad79d8ce45380e2b1
Binary files /dev/null and b/trunk/doc/html/ftv2mo.png differ
diff --git a/trunk/doc/html/ftv2node.png b/trunk/doc/html/ftv2node.png
new file mode 100644
index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48
Binary files /dev/null and b/trunk/doc/html/ftv2node.png differ
diff --git a/trunk/doc/html/ftv2ns.png b/trunk/doc/html/ftv2ns.png
new file mode 100644
index 0000000000000000000000000000000000000000..72e3d71c2892d6f00e259facebc88b45f6db2e35
Binary files /dev/null and b/trunk/doc/html/ftv2ns.png differ
diff --git a/trunk/doc/html/ftv2plastnode.png b/trunk/doc/html/ftv2plastnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..c6ee22f937a07d1dbfc27c669d11f8ed13e2f152
Binary files /dev/null and b/trunk/doc/html/ftv2plastnode.png differ
diff --git a/trunk/doc/html/ftv2pnode.png b/trunk/doc/html/ftv2pnode.png
new file mode 100644
index 0000000000000000000000000000000000000000..c6ee22f937a07d1dbfc27c669d11f8ed13e2f152
Binary files /dev/null and b/trunk/doc/html/ftv2pnode.png differ
diff --git a/trunk/doc/html/ftv2splitbar.png b/trunk/doc/html/ftv2splitbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e
Binary files /dev/null and b/trunk/doc/html/ftv2splitbar.png differ
diff --git a/trunk/doc/html/ftv2vertline.png b/trunk/doc/html/ftv2vertline.png
new file mode 100644
index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48
Binary files /dev/null and b/trunk/doc/html/ftv2vertline.png differ
diff --git a/trunk/doc/html/functions.html b/trunk/doc/html/functions.html
new file mode 100644
index 0000000000000000000000000000000000000000..882807010f3fc295dce84d53437197c574da7731
--- /dev/null
+++ b/trunk/doc/html/functions.html
@@ -0,0 +1,217 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+      <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li class="current"><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow4" class="tabs3">
+    <ul class="tablist">
+      <li><a href="#index_c"><span>c</span></a></li>
+      <li><a href="#index_d"><span>d</span></a></li>
+      <li><a href="#index_g"><span>g</span></a></li>
+      <li><a href="#index_i"><span>i</span></a></li>
+      <li><a href="#index_m"><span>m</span></a></li>
+      <li><a href="#index_n"><span>n</span></a></li>
+      <li><a href="#index_p"><span>p</span></a></li>
+      <li><a href="#index_s"><span>s</span></a></li>
+      <li><a href="#index_t"><span>t</span></a></li>
+      <li><a href="#index_u"><span>u</span></a></li>
+      <li><a href="#index_v"><span>v</span></a></li>
+      <li><a href="#index_z"><span>z</span></a></li>
+      <li class="current"><a href="#index_~"><span>~</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="contents">
+<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>clean_viewer()
+: <a class="el" href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">TableTop_Object_Detection</a>
+</li>
+<li>color_importance
+: <a class="el" href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">tableTop_object_detection_parameters</a>
+</li>
+<li>concavity_tolerance_threshold
+: <a class="el" href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>disable_transform
+: <a class="el" href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>get_default_parameters()
+: <a class="el" href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">TableTop_Object_Detection</a>
+</li>
+<li>get_labeled_voxel_cloud()
+: <a class="el" href="classTableTop__Object__Detection.html#a48985d7b12316ccecbd85c7e09f1e6af">TableTop_Object_Detection</a>
+</li>
+<li>get_segmented_objects()
+: <a class="el" href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">TableTop_Object_Detection</a>
+</li>
+<li>get_segmented_objects_simple()
+: <a class="el" href="classTableTop__Object__Detection.html#a3225e48172e84101b8ae82a8c9dd08dd">TableTop_Object_Detection</a>
+</li>
+<li>get_supervoxel_adjacency()
+: <a class="el" href="classTableTop__Object__Detection.html#a2d6ea56e8d89a278a4640ca827c9da4d">TableTop_Object_Detection</a>
+</li>
+<li>get_supervoxel_clusters()
+: <a class="el" href="classTableTop__Object__Detection.html#abe94e4ef82ab5c9474853a97f3bc0d11">TableTop_Object_Detection</a>
+</li>
+<li>get_sv_normal_cloud()
+: <a class="el" href="classTableTop__Object__Detection.html#a7f4100b194f701841e3fe565a613415c">TableTop_Object_Detection</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>init()
+: <a class="el" href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">TableTop_Object_Detection</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>min_segment_size
+: <a class="el" href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>normal_importance
+: <a class="el" href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>print_parameters()
+: <a class="el" href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">TableTop_Object_Detection</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>seed_resolution
+: <a class="el" href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">tableTop_object_detection_parameters</a>
+</li>
+<li>segment()
+: <a class="el" href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">TableTop_Object_Detection</a>
+</li>
+<li>show_segmented_objects()
+: <a class="el" href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">TableTop_Object_Detection</a>
+</li>
+<li>show_super_voxels()
+: <a class="el" href="classTableTop__Object__Detection.html#a892f9cc8b0ab76b1fcac802c4a55cb55">TableTop_Object_Detection</a>
+</li>
+<li>smoothness_threshold
+: <a class="el" href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">tableTop_object_detection_parameters</a>
+</li>
+<li>spatial_importance
+: <a class="el" href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>TableTop_Object_Detection()
+: <a class="el" href="classTableTop__Object__Detection.html#aae7c3acdedfe90a1a78d4ba019d53939">TableTop_Object_Detection</a>
+</li>
+<li>th_points
+: <a class="el" href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>use_extended_convexity
+: <a class="el" href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">tableTop_object_detection_parameters</a>
+</li>
+<li>use_sanity_criterion
+: <a class="el" href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>voxel_resolution
+: <a class="el" href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_z"></a>- z -</h3><ul>
+<li>zmax
+: <a class="el" href="structtableTop__object__detection__parameters.html#a69899eb7a9504e03e75286f437e8da71">tableTop_object_detection_parameters</a>
+</li>
+<li>zmin
+: <a class="el" href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_~"></a>- ~ -</h3><ul>
+<li>~TableTop_Object_Detection()
+: <a class="el" href="classTableTop__Object__Detection.html#a75fb88d53b6d2d70fb6f24e0360dcef8">TableTop_Object_Detection</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/functions_func.html b/trunk/doc/html/functions_func.html
new file mode 100644
index 0000000000000000000000000000000000000000..3b15a062c7e6354febcd00873131b531b6f5023b
--- /dev/null
+++ b/trunk/doc/html/functions_func.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+      <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+      <li><a href="functions_vars.html"><span>Variables</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="contents">
+&#160;<ul>
+<li>clean_viewer()
+: <a class="el" href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">TableTop_Object_Detection</a>
+</li>
+<li>get_default_parameters()
+: <a class="el" href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">TableTop_Object_Detection</a>
+</li>
+<li>get_labeled_voxel_cloud()
+: <a class="el" href="classTableTop__Object__Detection.html#a48985d7b12316ccecbd85c7e09f1e6af">TableTop_Object_Detection</a>
+</li>
+<li>get_segmented_objects()
+: <a class="el" href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">TableTop_Object_Detection</a>
+</li>
+<li>get_segmented_objects_simple()
+: <a class="el" href="classTableTop__Object__Detection.html#a3225e48172e84101b8ae82a8c9dd08dd">TableTop_Object_Detection</a>
+</li>
+<li>get_supervoxel_adjacency()
+: <a class="el" href="classTableTop__Object__Detection.html#a2d6ea56e8d89a278a4640ca827c9da4d">TableTop_Object_Detection</a>
+</li>
+<li>get_supervoxel_clusters()
+: <a class="el" href="classTableTop__Object__Detection.html#abe94e4ef82ab5c9474853a97f3bc0d11">TableTop_Object_Detection</a>
+</li>
+<li>get_sv_normal_cloud()
+: <a class="el" href="classTableTop__Object__Detection.html#a7f4100b194f701841e3fe565a613415c">TableTop_Object_Detection</a>
+</li>
+<li>init()
+: <a class="el" href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">TableTop_Object_Detection</a>
+</li>
+<li>print_parameters()
+: <a class="el" href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">TableTop_Object_Detection</a>
+</li>
+<li>segment()
+: <a class="el" href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">TableTop_Object_Detection</a>
+</li>
+<li>show_segmented_objects()
+: <a class="el" href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">TableTop_Object_Detection</a>
+</li>
+<li>show_super_voxels()
+: <a class="el" href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">TableTop_Object_Detection</a>
+</li>
+<li>TableTop_Object_Detection()
+: <a class="el" href="classTableTop__Object__Detection.html#aae7c3acdedfe90a1a78d4ba019d53939">TableTop_Object_Detection</a>
+</li>
+<li>~TableTop_Object_Detection()
+: <a class="el" href="classTableTop__Object__Detection.html#a75fb88d53b6d2d70fb6f24e0360dcef8">TableTop_Object_Detection</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/functions_vars.html b/trunk/doc/html/functions_vars.html
new file mode 100644
index 0000000000000000000000000000000000000000..2a55d7b698ce77446e0fdbc897de598c95bd490e
--- /dev/null
+++ b/trunk/doc/html/functions_vars.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+      <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow3" class="tabs2">
+    <ul class="tablist">
+      <li><a href="functions.html"><span>All</span></a></li>
+      <li><a href="functions_func.html"><span>Functions</span></a></li>
+      <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="contents">
+&#160;<ul>
+<li>color_importance
+: <a class="el" href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">tableTop_object_detection_parameters</a>
+</li>
+<li>concavity_tolerance_threshold
+: <a class="el" href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">tableTop_object_detection_parameters</a>
+</li>
+<li>disable_transform
+: <a class="el" href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">tableTop_object_detection_parameters</a>
+</li>
+<li>min_segment_size
+: <a class="el" href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">tableTop_object_detection_parameters</a>
+</li>
+<li>normal_importance
+: <a class="el" href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">tableTop_object_detection_parameters</a>
+</li>
+<li>seed_resolution
+: <a class="el" href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">tableTop_object_detection_parameters</a>
+</li>
+<li>smoothness_threshold
+: <a class="el" href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">tableTop_object_detection_parameters</a>
+</li>
+<li>spatial_importance
+: <a class="el" href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">tableTop_object_detection_parameters</a>
+</li>
+<li>th_points
+: <a class="el" href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">tableTop_object_detection_parameters</a>
+</li>
+<li>use_extended_convexity
+: <a class="el" href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">tableTop_object_detection_parameters</a>
+</li>
+<li>use_sanity_criterion
+: <a class="el" href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">tableTop_object_detection_parameters</a>
+</li>
+<li>voxel_resolution
+: <a class="el" href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">tableTop_object_detection_parameters</a>
+</li>
+<li>zmax
+: <a class="el" href="structtableTop__object__detection__parameters.html#a69899eb7a9504e03e75286f437e8da71">tableTop_object_detection_parameters</a>
+</li>
+<li>zmin
+: <a class="el" href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">tableTop_object_detection_parameters</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/graph_legend.html b/trunk/doc/html/graph_legend.html
new file mode 100644
index 0000000000000000000000000000000000000000..c495aa8207cbbd2f4758376acd54e022d861b1cc
--- /dev/null
+++ b/trunk/doc/html/graph_legend.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: Graph Legend</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Graph Legend</div>  </div>
+</div><!--header-->
+<div class="contents">
+<p>This page explains how to interpret the graphs that are generated by doxygen.</p>
+<p>Consider the following example: </p>
+<div class="fragment"><div class="line"><span class="comment">/*! Invisible class because of truncation */</span></div>
+<div class="line"><span class="keyword">class </span>Invisible { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Truncated class, inheritance relation is hidden */</span></div>
+<div class="line"><span class="keyword">class </span>Truncated : <span class="keyword">public</span> Invisible { };</div>
+<div class="line"></div>
+<div class="line"><span class="comment">/* Class not documented with doxygen comments */</span></div>
+<div class="line"><span class="keyword">class </span>Undocumented { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is inherited using public inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>PublicBase : <span class="keyword">public</span> Truncated { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! A template class */</span></div>
+<div class="line"><span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">class </span>Templ { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is inherited using protected inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>ProtectedBase { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is inherited using private inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>PrivateBase { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is used by the Inherited class */</span></div>
+<div class="line"><span class="keyword">class </span>Used { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Super class that inherits a number of other classes */</span></div>
+<div class="line"><span class="keyword">class </span>Inherited : <span class="keyword">public</span> PublicBase,</div>
+<div class="line">                  <span class="keyword">protected</span> ProtectedBase,</div>
+<div class="line">                  <span class="keyword">private</span> PrivateBase,</div>
+<div class="line">                  <span class="keyword">public</span> Undocumented,</div>
+<div class="line">                  <span class="keyword">public</span> Templ&lt;int&gt;</div>
+<div class="line">{</div>
+<div class="line">  <span class="keyword">private</span>:</div>
+<div class="line">    Used *m_usedClass;</div>
+<div class="line">};</div>
+</div><!-- fragment --><p> This will result in the following graph:</p>
+<center><div class="image">
+<img src="graph_legend.png" />
+</div>
+</center><p>The boxes in the above graph have the following meaning: </p>
+<ul>
+<li>
+A filled gray box represents the struct or class for which the graph is generated. </li>
+<li>
+A box with a black border denotes a documented struct or class. </li>
+<li>
+A box with a grey border denotes an undocumented struct or class. </li>
+<li>
+A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries. </li>
+</ul>
+<p>The arrows have the following meaning: </p>
+<ul>
+<li>
+A dark blue arrow is used to visualize a public inheritance relation between two classes. </li>
+<li>
+A dark green arrow is used for protected inheritance. </li>
+<li>
+A dark red arrow is used for private inheritance. </li>
+<li>
+A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible. </li>
+<li>
+A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance. </li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/graph_legend.md5 b/trunk/doc/html/graph_legend.md5
new file mode 100644
index 0000000000000000000000000000000000000000..7bd9957038cec38600f8bc2f05185f4c4c1419ec
--- /dev/null
+++ b/trunk/doc/html/graph_legend.md5
@@ -0,0 +1 @@
+1bffc4ef6cd06b95fb6c5ee5c51e8968
\ No newline at end of file
diff --git a/trunk/doc/html/graph_legend.png b/trunk/doc/html/graph_legend.png
new file mode 100644
index 0000000000000000000000000000000000000000..9d1e08163e5aff76ba36f5ef1511507117378614
Binary files /dev/null and b/trunk/doc/html/graph_legend.png differ
diff --git a/trunk/doc/html/index.html b/trunk/doc/html/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..c46e4232b37a7080add1a4bf4c86146b7e25ec6b
--- /dev/null
+++ b/trunk/doc/html/index.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: tabletop_object_detection</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li class="current"><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">tabletop_object_detection </div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><h1><a class="anchor" id="Introduction"></a>
+Introduction</h1>
+<p>This library detects objects that stand on a table in a given point cloud. It also include a structure to define all the parameters used by the alrogithm in a compact way.</p>
+<h2><a class="anchor" id="Pre-Requisites"></a>
+Pre-Requisites</h2>
+<p>This package requires of the following libraries and packages</p>
+<ul>
+<li><a href="http://pointclouds.org/">PCL</a>, open project for 2D/3D image and point cloud processing.</li>
+<li><a href="http://opencv.org/">OpenCV</a>, open source computer vision and machine learning software library (this only for the example).<ul>
+<li><a href="http://www.cmake.org">cmake</a>, a cross-platform build system.</li>
+<li><a href="http://www.doxygen.org">doxygen</a> and <a href="http://www.graphviz.org">graphviz</a> to generate the documentation.</li>
+<li>stdc++,</li>
+</ul>
+Under linux all of these utilities are available in ready-to-use packages.</li>
+</ul>
+<p>Under MacOS most of the packages are available via <a href="http://www.finkproject.org/">fink</a>. <br/>
+</p>
+<h2><a class="anchor" id="Compilation"></a>
+Compilation</h2>
+<p>Just download this package, uncompress it, and execute</p>
+<ul>
+<li>cd build</li>
+<li>cmake ..</li>
+</ul>
+<p>to generate the makefile and then</p>
+<ul>
+<li>make</li>
+</ul>
+<p>to obtain the shared library (in this case called <em>iriutils.so</em>) and also all the example programs.</p>
+<p>The <em>cmake</em> only need to be executed once (make will automatically call <em>cmake</em> if you modify one of the <em>CMakeList.txt</em> files).</p>
+<p>To generate this documentation type</p>
+<ul>
+<li>make doc</li>
+</ul>
+<p>The files in the <em>build</em> directory are genetated by <em>cmake</em> and <em>make</em> and can be safely removed. After doing so you will need to call cmake manually again.</p>
+<h2><a class="anchor" id="Configuration"></a>
+Configuration</h2>
+<p>The default build mode is DEBUG. That is, objects and executables include debug information.</p>
+<p>The RELEASE build mode optimizes for speed. To build in this mode execute</p>
+<ul>
+<li>cmake .. -DCMAKE_BUILD_TYPE=RELEASE</li>
+</ul>
+<p>The release mode will be kept until next time cmake is executed.</p>
+<h2><a class="anchor" id="Installation"></a>
+Installation</h2>
+<p>In order to be able to use the library, it it necessary to copy it into the system. To do that, execute </p>
+<pre class="fragment">- make install
+.
+</pre><p>as root and the shared libraries will be copied to <em>/usr/local/lib/iriutils</em> directory and the header files will be copied to <em>/usr/local/include/iriutils</em> dierctory. At this point, the library may be used by any user.</p>
+<p>To remove the library from the system, exceute</p>
+<ul>
+<li>make uninstall</li>
+</ul>
+<p>as root, and all the associated files will be removed from the system.</p>
+<h1><a class="anchor" id="Customization"></a>
+Customization</h1>
+<p>To build a new application using these library, first it is necessary to locate if the library has been installed or not using the following command </p>
+<pre class="fragment">- FIND_PACKAGE(tabletop_object_detection REQUIRED)
+</pre><p>In the case that the package is present, it is necessary to add the header files directory to the include directory path by using </p>
+<pre class="fragment">- INCLUDE_DIRECTORIES(${tabletop_object_detection_INCLUDE_DIR})
+</pre><p>Finally, it is also nevessary to link with the desired libraries by using the following command </p>
+<pre class="fragment">- TARGET_LINK_LIBRARIES(&lt;executable name&gt; ${tabletop_object_detection_LIBRARY})
+.
+</pre><h1><a class="anchor" id="License"></a>
+License</h1>
+<p>This package is licensed under a <a href="http://www.gnu.org/licenses/lgpl.html">LGPL 3.0 License</a>.</p>
+<h1><a class="anchor" id="Disclaimer"></a>
+Disclaimer</h1>
+<p>This is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or at your option) any later version.</p>
+<p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.</p>
+<p>You should have received a copy of the GNU Lesser General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. </p>
+</div></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/nav_f.png b/trunk/doc/html/nav_f.png
new file mode 100644
index 0000000000000000000000000000000000000000..72a58a529ed3a9ed6aa0c51a79cf207e026deee2
Binary files /dev/null and b/trunk/doc/html/nav_f.png differ
diff --git a/trunk/doc/html/nav_g.png b/trunk/doc/html/nav_g.png
new file mode 100644
index 0000000000000000000000000000000000000000..2093a237a94f6c83e19ec6e5fd42f7ddabdafa81
Binary files /dev/null and b/trunk/doc/html/nav_g.png differ
diff --git a/trunk/doc/html/nav_h.png b/trunk/doc/html/nav_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..33389b101d9cd9b4c98ad286b5d9c46a6671f650
Binary files /dev/null and b/trunk/doc/html/nav_h.png differ
diff --git a/trunk/doc/html/open.png b/trunk/doc/html/open.png
new file mode 100644
index 0000000000000000000000000000000000000000..30f75c7efe2dd0c9e956e35b69777a02751f048b
Binary files /dev/null and b/trunk/doc/html/open.png differ
diff --git a/trunk/doc/html/structObject.html b/trunk/doc/html/structObject.html
new file mode 100644
index 0000000000000000000000000000000000000000..053fdeba3d44c4b644bd99bd6ae921fdebab327e
--- /dev/null
+++ b/trunk/doc/html/structObject.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: Object Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-attribs">Data Fields</a>  </div>
+  <div class="headertitle">
+<div class="title">Object Struct Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:af91b515b4d00b4245252c250bb9d0a90"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af91b515b4d00b4245252c250bb9d0a90"></a>
+pcl::PointCloud<br class="typebreak"/>
+&lt; pcl::PointXYZRGBA &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>object_cloud</b></td></tr>
+<tr class="separator:af91b515b4d00b4245252c250bb9d0a90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45cf3c764fbbd9fd49fb64dd4d2c1b6d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a45cf3c764fbbd9fd49fb64dd4d2c1b6d"></a>
+int&#160;</td><td class="memItemRight" valign="bottom"><b>label</b></td></tr>
+<tr class="separator:a45cf3c764fbbd9fd49fb64dd4d2c1b6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00037">37</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+</div><hr/>The documentation for this struct was generated from the following file:<ul>
+<li>/home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/<a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/structtableTop__object__detection__parameters.html b/trunk/doc/html/structtableTop__object__detection__parameters.html
new file mode 100644
index 0000000000000000000000000000000000000000..52826f2ac96db3051674e902f675377f095188c7
--- /dev/null
+++ b/trunk/doc/html/structtableTop__object__detection__parameters.html
@@ -0,0 +1,337 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: tableTop_object_detection_parameters Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-attribs">Data Fields</a>  </div>
+  <div class="headertitle">
+<div class="title">tableTop_object_detection_parameters Struct Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ad839812934dce3dc30bfce50a6c7979b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">disable_transform</a></td></tr>
+<tr class="separator:ad839812934dce3dc30bfce50a6c7979b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd2df80ddd63d2527fdb3e2173dfa7bd"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">voxel_resolution</a></td></tr>
+<tr class="separator:abd2df80ddd63d2527fdb3e2173dfa7bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b5cf25fa26e9d6a5762ccaaa59bd980"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">seed_resolution</a></td></tr>
+<tr class="separator:a5b5cf25fa26e9d6a5762ccaaa59bd980"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1cc4d45794c3a1e232d7a5f43243622e"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">color_importance</a></td></tr>
+<tr class="separator:a1cc4d45794c3a1e232d7a5f43243622e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac427e4c80d7791bbe503f560740aee88"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">spatial_importance</a></td></tr>
+<tr class="separator:ac427e4c80d7791bbe503f560740aee88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad3a5a13616c968ec81f2ed95eb8ef6c"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">normal_importance</a></td></tr>
+<tr class="separator:aad3a5a13616c968ec81f2ed95eb8ef6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9edebad24574492fb986884155cecd3"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">concavity_tolerance_threshold</a></td></tr>
+<tr class="separator:af9edebad24574492fb986884155cecd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25ae1cdac1117e64e8e14b2c1cd6c361"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">smoothness_threshold</a></td></tr>
+<tr class="separator:a25ae1cdac1117e64e8e14b2c1cd6c361"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0d42a5811ff6ff88e5364462b891adc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">min_segment_size</a></td></tr>
+<tr class="separator:ab0d42a5811ff6ff88e5364462b891adc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adbd04002cc3f21b67dedc7d5a4817ea9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">use_extended_convexity</a></td></tr>
+<tr class="separator:adbd04002cc3f21b67dedc7d5a4817ea9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a979341d0bcf0d9b8696b65054bec5838"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">use_sanity_criterion</a></td></tr>
+<tr class="separator:a979341d0bcf0d9b8696b65054bec5838"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0545fba1336d1a337d6693b4b85bac04"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">zmin</a></td></tr>
+<tr class="separator:a0545fba1336d1a337d6693b4b85bac04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69899eb7a9504e03e75286f437e8da71"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#a69899eb7a9504e03e75286f437e8da71">zmax</a></td></tr>
+<tr class="separator:a69899eb7a9504e03e75286f437e8da71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1dac5b182b352220c6ca6a4f169ebc85"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">th_points</a></td></tr>
+<tr class="separator:a1dac5b182b352220c6ca6a4f169ebc85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00047">47</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ad839812934dce3dc30bfce50a6c7979b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool tableTop_object_detection_parameters::disable_transform</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of disable_transform for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00050">50</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="abd2df80ddd63d2527fdb3e2173dfa7bd"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double tableTop_object_detection_parameters::voxel_resolution</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of voxel_resolution for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00051">51</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5b5cf25fa26e9d6a5762ccaaa59bd980"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double tableTop_object_detection_parameters::seed_resolution</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of seed_resolution for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00052">52</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a1cc4d45794c3a1e232d7a5f43243622e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double tableTop_object_detection_parameters::color_importance</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of color_importance for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00053">53</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ac427e4c80d7791bbe503f560740aee88"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double tableTop_object_detection_parameters::spatial_importance</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of spatial_importance for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00054">54</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="aad3a5a13616c968ec81f2ed95eb8ef6c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double tableTop_object_detection_parameters::normal_importance</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of normal_importance for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00055">55</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="af9edebad24574492fb986884155cecd3"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double tableTop_object_detection_parameters::concavity_tolerance_threshold</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of concavity_tolerance_threshold for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00058">58</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a25ae1cdac1117e64e8e14b2c1cd6c361"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double tableTop_object_detection_parameters::smoothness_threshold</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of smoothness_threshold for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00059">59</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ab0d42a5811ff6ff88e5364462b891adc"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int tableTop_object_detection_parameters::min_segment_size</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of min_segment_size for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00060">60</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="adbd04002cc3f21b67dedc7d5a4817ea9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool tableTop_object_detection_parameters::use_extended_convexity</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of use_extended_convexity for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00061">61</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a979341d0bcf0d9b8696b65054bec5838"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool tableTop_object_detection_parameters::use_sanity_criterion</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>value of use_sanity_criterion for supervoxel algorithm </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00062">62</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a0545fba1336d1a337d6693b4b85bac04"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double tableTop_object_detection_parameters::zmin</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Minimum distance orthogonal to the table plane to be considered as a tabletop point </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00065">65</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a69899eb7a9504e03e75286f437e8da71"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">double tableTop_object_detection_parameters::zmax</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Maximum distance orthogonal to the table plane to be considered as a tabletop point </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00066">66</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a1dac5b182b352220c6ca6a4f169ebc85"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int tableTop_object_detection_parameters::th_points</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>threshold of minimum point required to consider a cluster as valid </p>
+
+<p>Definition at line <a class="el" href="tabletop__object__detection_8h_source.html#l00067">67</a> of file <a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a>.</p>
+
+<p>Referenced by <a class="el" href="tabletop__object__detection_8cpp_source.html#l00170">TableTop_Object_Detection::get_default_parameters()</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>/home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/<a class="el" href="tabletop__object__detection_8h_source.html">tabletop_object_detection.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/sync_off.png b/trunk/doc/html/sync_off.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc
Binary files /dev/null and b/trunk/doc/html/sync_off.png differ
diff --git a/trunk/doc/html/sync_on.png b/trunk/doc/html/sync_on.png
new file mode 100644
index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76
Binary files /dev/null and b/trunk/doc/html/sync_on.png differ
diff --git a/trunk/doc/html/tab_a.png b/trunk/doc/html/tab_a.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247
Binary files /dev/null and b/trunk/doc/html/tab_a.png differ
diff --git a/trunk/doc/html/tab_b.png b/trunk/doc/html/tab_b.png
new file mode 100644
index 0000000000000000000000000000000000000000..e2b4a8638cb3496a016eaed9e16ffc12846dea18
Binary files /dev/null and b/trunk/doc/html/tab_b.png differ
diff --git a/trunk/doc/html/tab_h.png b/trunk/doc/html/tab_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..fd5cb705488e60fcf30f56fcc951dee74f3b095b
Binary files /dev/null and b/trunk/doc/html/tab_h.png differ
diff --git a/trunk/doc/html/tab_s.png b/trunk/doc/html/tab_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..ab478c95b67371d700a20869f7de1ddd73522d50
Binary files /dev/null and b/trunk/doc/html/tab_s.png differ
diff --git a/trunk/doc/html/tableTop_object_segmentation_test_8cpp-example.html b/trunk/doc/html/tableTop_object_segmentation_test_8cpp-example.html
new file mode 100644
index 0000000000000000000000000000000000000000..86234426b8135e04da8300163c1dc60aebb528a1
--- /dev/null
+++ b/trunk/doc/html/tableTop_object_segmentation_test_8cpp-example.html
@@ -0,0 +1,59 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: tableTop_object_segmentation_test.cpp</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">tableTop_object_segmentation_test.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<p><b>Description:</b> This program tests the tableTop_object_segmentation Library API serving it as a test. The table must be the bigger plane in the point cloud. It also shows how to retrieve the objects' points in the RGB image. The RGB image is built from the organized input cloud.</p>
+<p><b>Usage:</b> </p>
+<div class="fragment"><div class="line">$ ./bin/tableTop_objects_segmentation_test </div>
+</div><!-- fragment --><p> to see the help with all the options you can use </p>
+<div class="fragment"><div class="line">$  ./bin/tableTop_objects_segmentation_test ./cloud.pcd </div>
+</div><!-- fragment --><p> to segment the tabletop objects in the point cloud "cloud.pcd" </p>
+<div class="fragment"><div class="line">$ ./bin/tableTop_objects_segmentation_test ./cloud.pcd -smooth 5 -ct 7 </div>
+</div><!-- fragment --><p> To segment changing some parameters</p>
+<div class="fragment"></div><!-- fragment --> </div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/tabletop__object__detection_8cpp_source.html b/trunk/doc/html/tabletop__object__detection_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9995f62fd4d71d7e1aedb719a9cf079d01bb7061
--- /dev/null
+++ b/trunk/doc/html/tabletop__object__detection_8cpp_source.html
@@ -0,0 +1,710 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: /home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/tabletop_object_detection.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+    </ul>
+  </div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">tabletop_object_detection.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;tabletop_object_detection.h&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
+<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#aae7c3acdedfe90a1a78d4ba019d53939">    3</a></span>&#160;<a class="code" href="classTableTop__Object__Detection.html#aae7c3acdedfe90a1a78d4ba019d53939">TableTop_Object_Detection::TableTop_Object_Detection</a>()</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;{</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;}</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;</div>
+<div class="line"><a name="l00008"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a75fb88d53b6d2d70fb6f24e0360dcef8">    8</a></span>&#160;<a class="code" href="classTableTop__Object__Detection.html#a75fb88d53b6d2d70fb6f24e0360dcef8">TableTop_Object_Detection::~TableTop_Object_Detection</a>()</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;{</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;}</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div>
+<div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">   13</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">TableTop_Object_Detection::init</a>(pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; input_cloud,</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;              <a class="code" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a> &amp;opt)</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;{</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;  this-&gt;cloud = input_cloud.makeShared();</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;  this-&gt;filt_objs.resize(0);</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;  set_parameters(opt);</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;} </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160; </div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a52028dcd2c15d9609ca4f5c0419c3e14">   21</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">TableTop_Object_Detection::init</a>(pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; input_cloud)</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;{</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;  this-&gt;cloud = input_cloud.makeShared();</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;  this-&gt;filt_objs.resize(0);</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;  set_default_parameters();</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;} </div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_parameters(<a class="code" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a> &amp; opt)</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;{</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;  this-&gt;disable_transform = opt.<a class="code" href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">disable_transform</a>;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;  this-&gt;voxel_resolution = opt.<a class="code" href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">voxel_resolution</a>;</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;  this-&gt;seed_resolution = opt.<a class="code" href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">seed_resolution</a>;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;  this-&gt;color_importance = opt.<a class="code" href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">color_importance</a>;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;  this-&gt;spatial_importance = opt.<a class="code" href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">spatial_importance</a>;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;  this-&gt;normal_importance = opt.<a class="code" href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">normal_importance</a>;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;  <span class="comment">// LCCPSegmentation Stuff</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;  this-&gt;concavity_tolerance_threshold = opt.<a class="code" href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">concavity_tolerance_threshold</a>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;  this-&gt;smoothness_threshold = opt.<a class="code" href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">smoothness_threshold</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;  this-&gt;min_segment_size = opt.<a class="code" href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">min_segment_size</a>; </div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;  this-&gt;use_extended_convexity = opt.<a class="code" href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">use_extended_convexity</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;  this-&gt;use_sanity_criterion = opt.<a class="code" href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">use_sanity_criterion</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;  this-&gt;zmin = opt.<a class="code" href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">zmin</a>;<span class="comment">//meters</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;  this-&gt;zmax = opt.<a class="code" href="structtableTop__object__detection__parameters.html#a69899eb7a9504e03e75286f437e8da71">zmax</a>;<span class="comment">//meters</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;  this-&gt;th_points = opt.<a class="code" href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">th_points</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;}</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_default_parameters()</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;{</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;  this-&gt;disable_transform = this-&gt;DISABLE_TRANSFORM;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;  this-&gt;voxel_resolution = this-&gt;VOXEL_RESOLUTION;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;  this-&gt;seed_resolution = this-&gt;SEED_RESOLUTION;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;  this-&gt;color_importance = this-&gt;COLOR_IMPORTANCE;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;  this-&gt;spatial_importance = this-&gt;SPATIAL_IMPORTANCE;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;  this-&gt;normal_importance = this-&gt;NORMAL_IMPORTANCE;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;  <span class="comment">// LCCPSegmentation Stuff</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;  this-&gt;concavity_tolerance_threshold = this-&gt;CONCAVITY_TOLERANCE_THRESHOLD;</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;  this-&gt;smoothness_threshold = this-&gt;SMOOTHNESS_THRESHOLD;</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;  this-&gt;min_segment_size = this-&gt;MIN_SEGMENT_SIZE; </div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;  this-&gt;use_extended_convexity = this-&gt;USE_EXTENDED_CONVEXITY;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  this-&gt;use_sanity_criterion = this-&gt;USE_SANITY_CRITERION;</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;  this-&gt;zmin = this-&gt;ZMIN;<span class="comment">//meters</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;  this-&gt;zmax = this-&gt;ZMAX;<span class="comment">//meters</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;  this-&gt;th_points = this-&gt;TH_POINTS;</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;  <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;}</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="keywordtype">void</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;TableTop_Object_Detection::addSupervoxelConnectionsToViewer (pcl::PointXYZRGBA &amp;supervoxel_center,</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                                  pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;&amp; adjacent_supervoxel_centers,</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                                  std::string supervoxel_name,</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                                  boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer)</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;{</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;  vtkSmartPointer&lt;vtkPoints&gt; points = vtkSmartPointer&lt;vtkPoints&gt;::New ();</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;  vtkSmartPointer&lt;vtkCellArray&gt; cells = vtkSmartPointer&lt;vtkCellArray&gt;::New ();</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;  vtkSmartPointer&lt;vtkPolyLine&gt; polyLine = vtkSmartPointer&lt;vtkPolyLine&gt;::New ();</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;  <span class="comment">//Iterate through all adjacent points, and add a center point to adjacent point pair</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;::iterator adjacent_itr = adjacent_supervoxel_centers.begin ();</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;  <span class="keywordflow">for</span> ( ; adjacent_itr != adjacent_supervoxel_centers.end (); ++adjacent_itr)</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;  {</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    points-&gt;InsertNextPoint (supervoxel_center.data);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    points-&gt;InsertNextPoint (adjacent_itr-&gt;data);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  }</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;  <span class="comment">// Create a polydata to store everything in</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;  vtkSmartPointer&lt;vtkPolyData&gt; polyData = vtkSmartPointer&lt;vtkPolyData&gt;::New ();</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;  <span class="comment">// Add the points to the dataset</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  polyData-&gt;SetPoints (points);</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;  polyLine-&gt;GetPointIds  ()-&gt;SetNumberOfIds(points-&gt;GetNumberOfPoints ());</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;  <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; points-&gt;GetNumberOfPoints (); i++)</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    polyLine-&gt;GetPointIds ()-&gt;SetId (i,i);</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;  cells-&gt;InsertNextCell (polyLine);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;  <span class="comment">// Add the lines to the dataset</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  polyData-&gt;SetLines (cells);</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;  viewer-&gt;addModelFromPolyData (polyData,supervoxel_name);</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;}</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::detectObjectsOnTable(pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;::Ptr cloud, <span class="keywordtype">double</span> zmin, <span class="keywordtype">double</span> zmax, pcl::PointIndices::Ptr objectIndices, <span class="keywordtype">bool</span> filter_input_cloud)</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;{</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  <span class="comment">// Objects for storing the point clouds.</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;::Ptr plane(<span class="keyword">new</span> pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;);</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;::Ptr convexHull(<span class="keyword">new</span> pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;);</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160; </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;  <span class="comment">// Get the plane model, if present.</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  pcl::ModelCoefficients::Ptr coefficients(<span class="keyword">new</span> pcl::ModelCoefficients);</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  pcl::SACSegmentation&lt;pcl::PointXYZRGBA&gt; segmentation;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  segmentation.setInputCloud(cloud);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;  segmentation.setModelType(pcl::SACMODEL_PLANE);</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  segmentation.setMethodType(pcl::SAC_RANSAC);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;  segmentation.setDistanceThreshold(0.01);</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;  segmentation.setOptimizeCoefficients(<span class="keyword">true</span>);</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;  pcl::PointIndices::Ptr planeIndices(<span class="keyword">new</span> pcl::PointIndices);</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;  segmentation.segment(*planeIndices, *coefficients);</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;  <span class="keywordflow">if</span> (planeIndices-&gt;indices.size() == 0)</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    std::cout &lt;&lt; <span class="stringliteral">&quot;Could not find a plane in the scene.&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;  <span class="keywordflow">else</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;  {</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <span class="comment">// Copy the points of the plane to a new cloud.</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    pcl::ExtractIndices&lt;pcl::PointXYZRGBA&gt; extract;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    extract.setInputCloud(cloud);</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    extract.setIndices(planeIndices);</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    extract.filter(*plane);</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160; </div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    <span class="comment">// Retrieve the convex hull.</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    pcl::ConvexHull&lt;pcl::PointXYZRGBA&gt; hull;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    hull.setInputCloud(plane);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <span class="comment">// Make sure that the resulting hull is bidimensional.</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    hull.setDimension(2); <span class="comment">//2dimension -&gt; planar convex hull</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    hull.reconstruct(*convexHull);</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="comment">// Redundant check.</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    <span class="keywordflow">if</span> (hull.getDimension() == 2)</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    {</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;      <span class="comment">// Prism object.</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;      pcl::ExtractPolygonalPrismData&lt;pcl::PointXYZRGBA&gt; prism;</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;      prism.setInputCloud(cloud);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;      prism.setInputPlanarHull(convexHull);</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;      <span class="comment">// First parameter: minimum Z value. Set to 0, segments objects lying on the plane (can be negative).</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;      <span class="comment">// Second parameter: maximum Z value[meters], set to 10cm. Tune it according to the height of the objects you expect.</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;      prism.setHeightLimits(zmin, zmax);</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160; </div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;      <span class="comment">//std::cout &lt;&lt; &quot;size of objectIndices before segmentation: &quot; &lt;&lt; objectIndices.indices.size() &lt;&lt; std::endl;</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;      <span class="comment">//pcl::PointIndices::Ptr objectIndices(new pcl::PointIndices);</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;      prism.segment(*objectIndices);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;      <span class="comment">//std::cout &lt;&lt; &quot;size of objectIndices AFTER segmentation: &quot; &lt;&lt; objectIndices.indices.size() &lt;&lt; std::endl;</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; </div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;      <span class="comment">// Get and show all points retrieved by the hull.</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;      extract.setIndices(objectIndices);</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;      </div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;      <span class="keywordflow">if</span>(filter_input_cloud)</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        extract.filter(*cloud);</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    }</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    <span class="keywordflow">else</span> std::cout &lt;&lt; <span class="stringliteral">&quot;The chosen hull is not planar.&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;  }</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;}</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<a class="code" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a></div>
+<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">  170</a></span>&#160;<a class="code" href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">TableTop_Object_Detection::get_default_parameters</a>()</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;{</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;  <a class="code" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a> opt;</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">disable_transform</a> = this-&gt;DISABLE_TRANSFORM;</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">voxel_resolution</a> = this-&gt;VOXEL_RESOLUTION;</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">seed_resolution</a> = this-&gt;SEED_RESOLUTION;</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">color_importance</a> = this-&gt;COLOR_IMPORTANCE;</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">spatial_importance</a> = this-&gt;SPATIAL_IMPORTANCE;</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">normal_importance</a> = this-&gt;NORMAL_IMPORTANCE;</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;  <span class="comment">// LCCPSegmentation Stuff</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">concavity_tolerance_threshold</a> = this-&gt;CONCAVITY_TOLERANCE_THRESHOLD;</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">smoothness_threshold</a> = this-&gt;SMOOTHNESS_THRESHOLD;</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">min_segment_size</a> = this-&gt;MIN_SEGMENT_SIZE; </div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">use_extended_convexity</a> = this-&gt;USE_EXTENDED_CONVEXITY;</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">use_sanity_criterion</a> = this-&gt;USE_SANITY_CRITERION;</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">zmin</a> = this-&gt;ZMIN;<span class="comment">//meters</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#a69899eb7a9504e03e75286f437e8da71">zmax</a> = this-&gt;ZMAX;<span class="comment">//meters</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">th_points</a> = this-&gt;TH_POINTS;</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;  <span class="keywordflow">return</span> opt;</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;}</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;</div>
+<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">  198</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">TableTop_Object_Detection::segment</a>()</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;{</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;  <span class="comment">//float t_ini = cv::getTickCount();</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;  pcl::PointIndices::Ptr obj_idx (<span class="keyword">new</span> pcl::PointIndices());</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;  detectObjectsOnTable(cloud, zmin, this-&gt;zmax , obj_idx, <span class="keyword">true</span>);</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  <span class="comment">//float elapsed_time_plane = (cv::getTickCount()-t_ini)/cv::getTickFrequency();</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;  <span class="comment">//-------------------- parameters ----------</span></div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  <span class="comment">//Super Voxel Algorithm&#39;s parameters</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;  <span class="keywordtype">bool</span> disable_transform = this-&gt;disable_transform;</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;  <span class="keywordtype">float</span> voxel_resolution = (float)this-&gt;voxel_resolution; <span class="comment">//0.0075f</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  <span class="keywordtype">float</span> seed_resolution = (float)this-&gt;seed_resolution; <span class="comment">//0.03f;</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  <span class="keywordtype">float</span> color_importance = (float)this-&gt;color_importance;</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;  <span class="keywordtype">float</span> spatial_importance = (float)this-&gt;spatial_importance;</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;  <span class="keywordtype">float</span> normal_importance = (float)this-&gt;normal_importance;</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;  <span class="comment">// LCCPSegmentation parameters</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;  <span class="keywordtype">float</span> concavity_tolerance_threshold = (float)this-&gt;concavity_tolerance_threshold;</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;  <span class="keywordtype">float</span> smoothness_threshold = (float)this-&gt;smoothness_threshold;</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  uint32_t min_segment_size = (uint32_t)this-&gt;min_segment_size;</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;  <span class="keywordtype">bool</span> use_extended_convexity = this-&gt;use_extended_convexity;</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;  <span class="keywordtype">bool</span> use_sanity_criterion = this-&gt;use_sanity_criterion;</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;  <span class="comment">//-------------------------------------------</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;  pcl::SupervoxelClustering&lt;pcl::PointXYZRGBA&gt; super (voxel_resolution, seed_resolution);</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;  super.setInputCloud (cloud);</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;  <span class="comment">//super.setNormalCloud (input_normals);</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;  super.setColorImportance (color_importance);</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;  super.setSpatialImportance (spatial_importance);</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;  super.setNormalImportance (normal_importance);</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160; </div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;  super.extract (supervoxel_clusters);</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;  labeled_voxel_cloud = super.getLabeledVoxelCloud ();</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;::Ptr voxel_centroid_cloud = super.getVoxelCentroidCloud ();</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;  sv_normal_cloud = super.makeSupervoxelNormalCloud (supervoxel_clusters);</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZL&gt;::Ptr full_labeled_cloud = super.getLabeledCloud ();</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;  </div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;  super.getSupervoxelAdjacency (supervoxel_adjacency);</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;   </div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;  std::map &lt;uint32_t, pcl::Supervoxel&lt;pcl::PointXYZRGBA&gt;::Ptr &gt; refined_supervoxel_clusters;</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;  <span class="comment">// NO REFINEMENT!!</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;  <span class="comment">//super.refineSupervoxels (3, refined_supervoxel_clusters);</span></div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZL&gt;::Ptr refined_labeled_voxel_cloud = super.getLabeledVoxelCloud ();</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;  pcl::PointCloud&lt;pcl::PointNormal&gt;::Ptr refined_sv_normal_cloud = super.makeSupervoxelNormalCloud (refined_supervoxel_clusters);</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZL&gt;::Ptr refined_full_labeled_cloud = super.getLabeledCloud ();</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;  </div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;  <span class="keyword">typedef</span> boost::adjacency_list&lt;boost::setS, boost::setS, boost::undirectedS, uint32_t, float&gt; VoxelAdjacencyList;</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;  VoxelAdjacencyList supervoxel_adjacency_list;</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;  super.getSupervoxelAdjacencyList (supervoxel_adjacency_list);</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;  <span class="keywordtype">float</span> normals_scale = seed_resolution / 2.0;</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;  </div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;  <span class="comment">// Segmentation Stuff</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;  </div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;  uint k_factor = 0;</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;  <span class="keywordflow">if</span> (use_extended_convexity)</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    k_factor = 1;</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;  pcl::LCCPSegmentation&lt;pcl::PointXYZRGBA&gt; lccp;</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;  lccp.setConcavityToleranceThreshold (concavity_tolerance_threshold);</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;  lccp.setSanityCheck (use_sanity_criterion);</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;  lccp.setSmoothnessCheck (<span class="keyword">true</span>, voxel_resolution, seed_resolution, smoothness_threshold);</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;  lccp.setKFactor (k_factor);</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;  lccp.setInputSupervoxels (supervoxel_clusters, supervoxel_adjacency);</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;  lccp.setMinSegmentSize (min_segment_size);</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;  lccp.segment ();</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZL&gt;::Ptr sv_labeled_cloud = super.getLabeledCloud ();</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;  lccp_labeled_cloud = sv_labeled_cloud-&gt;makeShared ();</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;  lccp.relabelCloud (*lccp_labeled_cloud);</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;  <span class="comment">//std::cout &lt;&lt; &quot;size lccp_labeled_cloud: &quot;&lt;&lt;lccp_labeled_cloud-&gt;points.size() &lt;&lt; &quot;\n&quot;;</span></div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;  <span class="comment">//---------------------------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;  <span class="comment">//float elapsed_time_seg = (cv::getTickCount()-t_ini)/cv::getTickFrequency() - elapsed_time_plane;</span></div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;  <span class="comment">//------------------------------ SEGMENTATION POST PROCESSING ---------------------------------</span></div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;  <span class="comment">//construct for each segmented object the point cloud associated to that object</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; lccp_labeled_cloud-&gt;points.size(); ++i)</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;  {</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;    </div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    uint32_t idx = lccp_labeled_cloud-&gt;points.at(i).label;</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;    <span class="comment">//in this way we enlarges the vector everytime we encounter a greater label. So we don&#39;t need to pass all </span></div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;    <span class="comment">// labeeld point cloud to see what is the greater label, and then to resize the vector. </span></div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;    <span class="keywordflow">if</span>(idx &gt;= filt_objs.size()) <span class="comment">// keep in mind that there is also the label 0! </span></div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;      filt_objs.resize(idx+1);</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;        </div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;    pcl::PointXYZRGBA tmp_point_rgb;</div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;    tmp_point_rgb = cloud-&gt;points.at(i);</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;    filt_objs[idx].object_cloud.points.push_back(tmp_point_rgb);</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;    filt_objs[idx].label = (int)idx;</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;  } </div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;  <span class="comment">//remove segments with too few points</span></div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;  <span class="comment">// it will removes te ones with few points or the ones with no points (these are created because of the labels of lccp)</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;  <span class="keywordtype">int</span> size = filt_objs.size();</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;  <span class="keywordtype">int</span> i = 0;</div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;  <span class="keywordflow">while</span> (i &lt; size)</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;  {</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;    <span class="keywordflow">if</span>(filt_objs[i].object_cloud.size() &lt; this-&gt;th_points)</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;    {</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;      filt_objs.erase(filt_objs.begin() + i);</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;      size = filt_objs.size();</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    }</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    <span class="keywordflow">else</span></div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;      i++;</div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;  }</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;  <span class="comment">//float elapsed_time = (cv::getTickCount()-t_ini)/cv::getTickFrequency();</span></div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;  </div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;  <span class="comment">//std::cout &lt;&lt; &quot;elapsed_time (segmentation and postprocessing): &quot; &lt;&lt; elapsed_time &lt;&lt; &quot;\nelapsed_time of LCCP segmentation: &quot; &lt;&lt; elapsed_time_seg   &lt;&lt;  std::endl;</span></div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;  <span class="comment">//std::cout &lt;&lt; &quot;elapsed_time plane estimation: &quot; &lt;&lt; elapsed_time_plane &lt;&lt; std::endl;</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;  <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;}</div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;</div>
+<div class="line"><a name="l00321"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">  321</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">TableTop_Object_Detection::show_super_voxels</a>(boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer,</div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;                       <span class="keywordtype">bool</span> show_adjacency_map,</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;                       <span class="keywordtype">bool</span> show_super_voxel_normals)</div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;{</div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;  <span class="keywordflow">if</span>(this-&gt;filt_objs.size() &gt; 0)</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;  {</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    viewer-&gt;addPointCloud (this-&gt;labeled_voxel_cloud, <span class="stringliteral">&quot;supervoxel_cloud&quot;</span>);</div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    <span class="comment">//pcl::visualization::PointCloudColorHandlerRGBField&lt;pcl::PointXYZRGBA&gt; rgb_cloud_obj(cloud);</span></div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    <span class="comment">//viewer-&gt;addPointCloud&lt;pcl::PointXYZRGBA&gt; (cloud, rgb_cloud_obj, &quot;maincloud&quot;);</span></div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    <span class="keywordflow">if</span>(show_super_voxel_normals)</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;      viewer-&gt;addPointCloudNormals&lt;pcl::PointNormal&gt; (this-&gt;sv_normal_cloud,1,0.05f, <span class="stringliteral">&quot;supervoxel_normals&quot;</span>);</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    <span class="keywordflow">if</span>(show_adjacency_map)</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    {</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;      std::multimap&lt;uint32_t,uint32_t&gt;::iterator label_itr = (this-&gt;supervoxel_adjacency).begin ();</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;      <span class="keywordflow">for</span> ( ; label_itr != (this-&gt;supervoxel_adjacency).end(); )</div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;      {</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;        <span class="comment">//First get the label</span></div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;        uint32_t supervoxel_label = label_itr-&gt;first;</div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;        <span class="comment">//Now get the supervoxel corresponding to the label</span></div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;        </div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;        pcl::Supervoxel&lt;pcl::PointXYZRGBA&gt;::Ptr supervoxel = this-&gt;supervoxel_clusters.at (supervoxel_label);</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;        <span class="comment">//Now we need to iterate through the adjacent supervoxels and make a point cloud of them</span></div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;        pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; adjacent_supervoxel_centers;</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;        std::multimap&lt;uint32_t,uint32_t&gt;::iterator adjacent_itr = this-&gt;supervoxel_adjacency.equal_range (supervoxel_label).first;</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;        <span class="keywordflow">for</span> ( ; adjacent_itr!=this-&gt;supervoxel_adjacency.equal_range (supervoxel_label).second; ++adjacent_itr)</div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;        {</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;          pcl::Supervoxel&lt;pcl::PointXYZRGBA&gt;::Ptr neighbor_supervoxel = this-&gt;supervoxel_clusters.at (adjacent_itr-&gt;second);</div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;          adjacent_supervoxel_centers.push_back (neighbor_supervoxel-&gt;centroid_);</div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;        }</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;        <span class="comment">//Now we make a name for this polygon</span></div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;        std::stringstream ss;</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;        ss &lt;&lt; <span class="stringliteral">&quot;supervoxel_&quot;</span> &lt;&lt; supervoxel_label;</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;        <span class="comment">//This function is shown below, but is beyond the scope of this tutorial - basically it just generates a &quot;star&quot; polygon mesh from the points given</span></div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;        addSupervoxelConnectionsToViewer (supervoxel-&gt;centroid_, adjacent_supervoxel_centers, ss.str (), viewer);</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;        <span class="comment">//Move iterator forward to next label</span></div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;        label_itr = (this-&gt;supervoxel_adjacency).upper_bound (supervoxel_label);</div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;      }</div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;    }   </div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;  }</div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;  <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;}</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;</div>
+<div class="line"><a name="l00367"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a892f9cc8b0ab76b1fcac802c4a55cb55">  367</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">TableTop_Object_Detection::show_super_voxels</a>(boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer)</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;{</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;  <span class="keywordflow">if</span>(this-&gt;filt_objs.size() &gt; 0)</div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;  {</div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    viewer-&gt;addPointCloud (this-&gt;labeled_voxel_cloud, <span class="stringliteral">&quot;supervoxel_cloud&quot;</span>);  </div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    viewer-&gt;addPointCloudNormals&lt;pcl::PointNormal&gt; (this-&gt;sv_normal_cloud,1,0.05f, <span class="stringliteral">&quot;supervoxel_normals&quot;</span>);</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    std::multimap&lt;uint32_t,uint32_t&gt;::iterator label_itr = (this-&gt;supervoxel_adjacency).begin ();</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;    <span class="keywordflow">for</span> ( ; label_itr != (this-&gt;supervoxel_adjacency).end(); )</div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;    {</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;      <span class="comment">//First get the label</span></div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;      uint32_t supervoxel_label = label_itr-&gt;first;</div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;      <span class="comment">//Now get the supervoxel corresponding to the label</span></div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;      </div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;      pcl::Supervoxel&lt;pcl::PointXYZRGBA&gt;::Ptr supervoxel = this-&gt;supervoxel_clusters.at (supervoxel_label);</div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;</div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;      <span class="comment">//Now we need to iterate through the adjacent supervoxels and make a point cloud of them</span></div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;      pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; adjacent_supervoxel_centers;</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;      std::multimap&lt;uint32_t,uint32_t&gt;::iterator adjacent_itr = this-&gt;supervoxel_adjacency.equal_range (supervoxel_label).first;</div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;      <span class="keywordflow">for</span> ( ; adjacent_itr!=this-&gt;supervoxel_adjacency.equal_range (supervoxel_label).second; ++adjacent_itr)</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;      {</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;        pcl::Supervoxel&lt;pcl::PointXYZRGBA&gt;::Ptr neighbor_supervoxel = this-&gt;supervoxel_clusters.at (adjacent_itr-&gt;second);</div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;        adjacent_supervoxel_centers.push_back (neighbor_supervoxel-&gt;centroid_);</div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;      }</div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;      <span class="comment">//Now we make a name for this polygon</span></div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;      std::stringstream ss;</div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;      ss &lt;&lt; <span class="stringliteral">&quot;supervoxel_&quot;</span> &lt;&lt; supervoxel_label;</div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;      <span class="comment">//This function is shown below, but is beyond the scope of this tutorial - basically it just generates a &quot;star&quot; polygon mesh from the points given</span></div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;      addSupervoxelConnectionsToViewer (supervoxel-&gt;centroid_, adjacent_supervoxel_centers, ss.str (), viewer);</div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;      <span class="comment">//Move iterator forward to next label</span></div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;      label_itr = (this-&gt;supervoxel_adjacency).upper_bound (supervoxel_label);</div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;    }   </div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;</div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;  }</div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;  <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;}</div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;</div>
+<div class="line"><a name="l00404"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">  404</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">TableTop_Object_Detection::show_segmented_objects</a>(boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer)</div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;{</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZL&gt; objects_cloud;</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; this-&gt;filt_objs.size(); ++i)</div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;  {</div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;    pcl::PointCloud&lt;pcl::PointXYZL&gt; tmp_cloud;</div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> p = 0; p &lt; this-&gt;filt_objs[i].object_cloud.size(); ++p)</div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;    {</div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;      pcl::PointXYZL tmp_point;</div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;      tmp_point.x = this-&gt;filt_objs[i].object_cloud[p].x;</div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;      tmp_point.y = this-&gt;filt_objs[i].object_cloud[p].y;</div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;      tmp_point.z = this-&gt;filt_objs[i].object_cloud[p].z;</div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;      tmp_point.label = this-&gt;filt_objs[i].label;</div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;      tmp_cloud.points.push_back(tmp_point);</div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;    }</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;    </div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;    objects_cloud += tmp_cloud;</div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;  }</div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;</div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;  viewer-&gt;addPointCloud(objects_cloud.makeShared(), <span class="stringliteral">&quot;segmented_object_cloud&quot;</span>);</div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;</div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;  <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;}</div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;</div>
+<div class="line"><a name="l00430"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">  430</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">TableTop_Object_Detection::clean_viewer</a>(boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer)</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;{</div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;  viewer-&gt;removePointCloud(<span class="stringliteral">&quot;supervoxel_cloud&quot;</span>);</div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;  viewer-&gt;removePointCloud(<span class="stringliteral">&quot;supervoxel_normals&quot;</span>);</div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;  viewer-&gt;removePointCloud(<span class="stringliteral">&quot;segmented_object_cloud&quot;</span>);</div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;</div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;  std::multimap&lt;uint32_t,uint32_t&gt;::iterator label_itr = (this-&gt;supervoxel_adjacency).begin ();</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;  <span class="keywordflow">for</span> ( ; label_itr != (this-&gt;supervoxel_adjacency).end(); )</div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;  {</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;    uint32_t supervoxel_label = label_itr-&gt;first;</div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;    std::stringstream ss;</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;    ss &lt;&lt; <span class="stringliteral">&quot;supervoxel_&quot;</span> &lt;&lt; supervoxel_label;</div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;    viewer-&gt;removeShape (ss.str());</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;    label_itr = (this-&gt;supervoxel_adjacency).upper_bound (supervoxel_label);</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;  } </div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;  <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;}</div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;</div>
+<div class="line"><a name="l00449"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">  449</a></span>&#160;std::vector&lt;Object&gt; <a class="code" href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">TableTop_Object_Detection::get_segmented_objects</a>()</div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;{</div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;  <span class="keywordflow">return</span> this-&gt;filt_objs;</div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;}</div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;</div>
+<div class="line"><a name="l00454"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a3225e48172e84101b8ae82a8c9dd08dd">  454</a></span>&#160;std::vector&lt;pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; &gt; <a class="code" href="classTableTop__Object__Detection.html#a3225e48172e84101b8ae82a8c9dd08dd">TableTop_Object_Detection::get_segmented_objects_simple</a>()</div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;{</div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;  std::vector&lt;pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; &gt; obj_vec;</div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;  </div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; this-&gt;filt_objs.size(); ++i)</div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;  {</div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;    obj_vec.push_back(filt_objs[i].object_cloud);</div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;  }</div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;</div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;  <span class="keywordflow">return</span> obj_vec;</div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;}</div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;</div>
+<div class="line"><a name="l00466"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">  466</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">TableTop_Object_Detection::print_parameters</a>()</div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;{</div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;  std::cout &lt;&lt; <span class="stringliteral">&quot;\nTableTop_Object_Detection parameters: \n&quot;</span></div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;----------------- Supervoxel parameters ---------\n&quot;</span></div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;disable_transform: &quot;</span> &lt;&lt; (bool)this-&gt;disable_transform  &lt;&lt; std::endl</div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;voxel_resolution: &quot;</span> &lt;&lt; (<span class="keywordtype">double</span>)this-&gt;voxel_resolution &lt;&lt; std::endl </div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;seed_resolution: &quot;</span> &lt;&lt; (double)this-&gt;seed_resolution &lt;&lt; std::endl </div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;color_importance: &quot;</span> &lt;&lt; (<span class="keywordtype">double</span>)this-&gt;color_importance &lt;&lt; std::endl</div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;spatial_importance: &quot;</span> &lt;&lt; (double)this-&gt;spatial_importance &lt;&lt; std::endl </div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;normal_importance: &quot;</span> &lt;&lt; (<span class="keywordtype">double</span>)this-&gt;normal_importance &lt;&lt; std::endl </div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;----------------- LCCP parameters ---------------\n&quot;</span></div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;concavity_tolerance_threshold: &quot;</span> &lt;&lt; (double)this-&gt;concavity_tolerance_threshold &lt;&lt; std::endl </div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;smoothness_threshold: &quot;</span> &lt;&lt; (<span class="keywordtype">double</span>)this-&gt;smoothness_threshold &lt;&lt; std::endl </div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;min_segment_size: &quot;</span> &lt;&lt; (int)this-&gt;min_segment_size &lt;&lt; std::endl </div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;use_extended_convexity: &quot;</span> &lt;&lt; (<span class="keywordtype">bool</span>)this-&gt;use_extended_convexity &lt;&lt; std::endl </div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;use_sanity_criterion: &quot;</span> &lt;&lt; (bool)this-&gt;use_sanity_criterion &lt;&lt; std::endl </div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;----------------- Others parameters -------------\n&quot;</span></div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;zmin: &quot;</span> &lt;&lt; (<span class="keywordtype">double</span>)this-&gt;zmin &lt;&lt; std::endl </div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;zmax: &quot;</span> &lt;&lt; (double)this-&gt;zmax &lt;&lt; std::endl </div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;            &lt;&lt; <span class="stringliteral">&quot;th_points: &quot;</span> &lt;&lt; (<span class="keywordtype">int</span>)this-&gt;th_points &lt;&lt; std::endl &lt;&lt; std::endl;  </div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;  <span class="keywordflow">return</span>;  </div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;}</div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;</div>
+<div class="line"><a name="l00489"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a48985d7b12316ccecbd85c7e09f1e6af">  489</a></span>&#160;pcl::PointCloud&lt;pcl::PointXYZL&gt; <a class="code" href="classTableTop__Object__Detection.html#a48985d7b12316ccecbd85c7e09f1e6af">TableTop_Object_Detection::get_labeled_voxel_cloud</a>()</div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;{</div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;  <span class="keywordflow">return</span> *(this-&gt;labeled_voxel_cloud);</div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;}</div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;</div>
+<div class="line"><a name="l00494"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a2d6ea56e8d89a278a4640ca827c9da4d">  494</a></span>&#160;std::multimap&lt;uint32_t, uint32_t&gt; <a class="code" href="classTableTop__Object__Detection.html#a2d6ea56e8d89a278a4640ca827c9da4d">TableTop_Object_Detection::get_supervoxel_adjacency</a>()</div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;{</div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;  <span class="keywordflow">return</span> this-&gt;supervoxel_adjacency;</div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;}</div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;</div>
+<div class="line"><a name="l00499"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#abe94e4ef82ab5c9474853a97f3bc0d11">  499</a></span>&#160;std::map &lt;uint32_t, pcl::Supervoxel&lt;pcl::PointXYZRGBA&gt;::Ptr&gt; <a class="code" href="classTableTop__Object__Detection.html#abe94e4ef82ab5c9474853a97f3bc0d11">TableTop_Object_Detection::get_supervoxel_clusters</a>()</div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;{</div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;  <span class="keywordflow">return</span> this-&gt;supervoxel_clusters;</div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;}</div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;</div>
+<div class="line"><a name="l00504"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html#a7f4100b194f701841e3fe565a613415c">  504</a></span>&#160;pcl::PointCloud&lt;pcl::PointNormal&gt; <a class="code" href="classTableTop__Object__Detection.html#a7f4100b194f701841e3fe565a613415c">TableTop_Object_Detection::get_sv_normal_cloud</a>()</div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;{</div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;  <span class="keywordflow">return</span> *(this-&gt;sv_normal_cloud);</div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;}</div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;</div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_disable_transform(<span class="keywordtype">bool</span> disable_transform_in)</div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;{</div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;  this-&gt;disable_transform = disable_transform_in;</div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;}</div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_voxel_resolution(<span class="keywordtype">double</span> voxel_resolution_in)</div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;{</div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;  this-&gt;voxel_resolution = voxel_resolution_in;</div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;}</div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_seed_resolution(<span class="keywordtype">double</span> seed_resolution_in)</div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;{</div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;  this-&gt;seed_resolution = seed_resolution_in;</div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;}</div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_color_importance(<span class="keywordtype">double</span> color_importance_in)</div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;{</div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;  this-&gt;color_importance = color_importance_in;</div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;}</div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_spatial_importance(<span class="keywordtype">double</span> spatial_importance_in)</div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;{</div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;  this-&gt;spatial_importance = spatial_importance_in;</div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;}</div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_normal_importance(<span class="keywordtype">double</span> normal_importance_in)</div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;{</div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;  this-&gt;normal_importance = normal_importance_in;</div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;}</div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_concavity_tolerance_threshold(<span class="keywordtype">double</span> concavity_tolerance_threshold_in)</div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;{</div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;  this-&gt;concavity_tolerance_threshold = concavity_tolerance_threshold_in;</div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;}</div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_smoothness_threshold(<span class="keywordtype">double</span> smoothness_threshold_in)</div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;{</div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;  this-&gt;smoothness_threshold = smoothness_threshold_in;</div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;}</div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_min_segment_size(<span class="keywordtype">int</span> min_segment_size_in)</div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;{</div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;  this-&gt;min_segment_size = min_segment_size_in;</div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;}</div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_use_extended_convexity(<span class="keywordtype">bool</span> use_extended_convexity_in)</div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;{</div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;  this-&gt;use_extended_convexity = use_extended_convexity_in;</div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;}</div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_use_sanity_criterion(<span class="keywordtype">bool</span> use_sanity_criterion_in)</div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;{</div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;  this-&gt;use_sanity_criterion = use_sanity_criterion_in;</div>
+<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;}</div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_zmin(<span class="keywordtype">double</span> zmin_in)</div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;{</div>
+<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;  this-&gt;zmin = zmin_in;</div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;}</div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_zmax(<span class="keywordtype">double</span> zmax_in)</div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;{</div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;  this-&gt;zmax = zmax_in;</div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;}</div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="keywordtype">void</span> TableTop_Object_Detection::set_th_points(<span class="keywordtype">int</span> th_points_in)</div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;{</div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;  this-&gt;th_points = th_points_in;</div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;}</div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="keywordtype">bool</span> TableTop_Object_Detection::get_disable_transform()</div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;{</div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;  <span class="keywordflow">return</span> this-&gt;disable_transform;</div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;}</div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;<span class="keywordtype">double</span> TableTop_Object_Detection::get_voxel_resolution()</div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;{</div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;  <span class="keywordflow">return</span> this-&gt;voxel_resolution;</div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;}</div>
+<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;<span class="keywordtype">double</span> TableTop_Object_Detection::get_seed_resolution()</div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;{</div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;  <span class="keywordflow">return</span> this-&gt;seed_resolution;</div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;}</div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;<span class="keywordtype">double</span> TableTop_Object_Detection::get_color_importance()</div>
+<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;{</div>
+<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;  <span class="keywordflow">return</span> this-&gt;color_importance;</div>
+<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;}</div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;<span class="keywordtype">double</span> TableTop_Object_Detection::get_spatial_importance()</div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;{</div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;  <span class="keywordflow">return</span> this-&gt;spatial_importance;</div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;}</div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;<span class="keywordtype">double</span> TableTop_Object_Detection::get_normal_importance()</div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;{</div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;  <span class="keywordflow">return</span> this-&gt;normal_importance;</div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;}</div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;<span class="keywordtype">double</span> TableTop_Object_Detection::get_concavity_tolerance_threshold()</div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;{</div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;  <span class="keywordflow">return</span> this-&gt;concavity_tolerance_threshold;</div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;}</div>
+<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;<span class="keywordtype">double</span> TableTop_Object_Detection::TableTop_Object_Detection::TableTop_Object_Detection::get_smoothness_threshold()</div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;{</div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;  <span class="keywordflow">return</span> this-&gt;smoothness_threshold;</div>
+<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;}</div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;<span class="keywordtype">int</span> TableTop_Object_Detection::TableTop_Object_Detection::get_min_segment_size()</div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;{</div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;  <span class="keywordflow">return</span> this-&gt;min_segment_size;</div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;}</div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;<span class="keywordtype">bool</span> TableTop_Object_Detection::get_use_extended_convexity()</div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;{</div>
+<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;  <span class="keywordflow">return</span> this-&gt;use_extended_convexity;</div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;}</div>
+<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;<span class="keywordtype">bool</span> TableTop_Object_Detection::get_use_sanity_criterion()</div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;{</div>
+<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;  <span class="keywordflow">return</span> this-&gt;use_sanity_criterion;</div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;}</div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;<span class="keywordtype">double</span> TableTop_Object_Detection::get_zmin()</div>
+<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;{</div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;  <span class="keywordflow">return</span> this-&gt;zmin;</div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;}</div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;<span class="keywordtype">double</span> TableTop_Object_Detection::get_zmax()</div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;{</div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;  <span class="keywordflow">return</span> this-&gt;zmax;</div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;}</div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;<span class="keywordtype">int</span> TableTop_Object_Detection::get_th_points()</div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;{</div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;  <span class="keywordflow">return</span> this-&gt;th_points;</div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;}</div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a1dac5b182b352220c6ca6a4f169ebc85"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">tableTop_object_detection_parameters::th_points</a></div><div class="ttdeci">int th_points</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00067">tabletop_object_detection.h:67</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_adbd04002cc3f21b67dedc7d5a4817ea9"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">tableTop_object_detection_parameters::use_extended_convexity</a></div><div class="ttdeci">bool use_extended_convexity</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00061">tabletop_object_detection.h:61</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html"><div class="ttname"><a href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a></div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00047">tabletop_object_detection.h:47</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_af9edebad24574492fb986884155cecd3"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">tableTop_object_detection_parameters::concavity_tolerance_threshold</a></div><div class="ttdeci">double concavity_tolerance_threshold</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00058">tabletop_object_detection.h:58</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a5b99f038253f4bb3282b3ffea82cd444"><div class="ttname"><a href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">TableTop_Object_Detection::clean_viewer</a></div><div class="ttdeci">void clean_viewer(boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer)</div><div class="ttdoc">clean all the pointclouds or shapes introduced by the class in the viewer </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00430">tabletop_object_detection.cpp:430</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a75fb88d53b6d2d70fb6f24e0360dcef8"><div class="ttname"><a href="classTableTop__Object__Detection.html#a75fb88d53b6d2d70fb6f24e0360dcef8">TableTop_Object_Detection::~TableTop_Object_Detection</a></div><div class="ttdeci">~TableTop_Object_Detection()</div><div class="ttdoc">class destructor </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00008">tabletop_object_detection.cpp:8</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_aae7c3acdedfe90a1a78d4ba019d53939"><div class="ttname"><a href="classTableTop__Object__Detection.html#aae7c3acdedfe90a1a78d4ba019d53939">TableTop_Object_Detection::TableTop_Object_Detection</a></div><div class="ttdeci">TableTop_Object_Detection()</div><div class="ttdoc">Class costructor. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00003">tabletop_object_detection.cpp:3</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a48985d7b12316ccecbd85c7e09f1e6af"><div class="ttname"><a href="classTableTop__Object__Detection.html#a48985d7b12316ccecbd85c7e09f1e6af">TableTop_Object_Detection::get_labeled_voxel_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointXYZL &gt; get_labeled_voxel_cloud()</div><div class="ttdoc">returns labeld voxel cloud </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00489">tabletop_object_detection.cpp:489</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a2d6ea56e8d89a278a4640ca827c9da4d"><div class="ttname"><a href="classTableTop__Object__Detection.html#a2d6ea56e8d89a278a4640ca827c9da4d">TableTop_Object_Detection::get_supervoxel_adjacency</a></div><div class="ttdeci">std::multimap&lt; uint32_t, uint32_t &gt; get_supervoxel_adjacency()</div><div class="ttdoc">returns supervoxel_adjacency map </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00494">tabletop_object_detection.cpp:494</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a25ae1cdac1117e64e8e14b2c1cd6c361"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">tableTop_object_detection_parameters::smoothness_threshold</a></div><div class="ttdeci">double smoothness_threshold</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00059">tabletop_object_detection.h:59</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a1cc4d45794c3a1e232d7a5f43243622e"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">tableTop_object_detection_parameters::color_importance</a></div><div class="ttdeci">double color_importance</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00053">tabletop_object_detection.h:53</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a5b5cf25fa26e9d6a5762ccaaa59bd980"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">tableTop_object_detection_parameters::seed_resolution</a></div><div class="ttdeci">double seed_resolution</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00052">tabletop_object_detection.h:52</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_abe6dd4074db8cec51da0e85d4841c2e9"><div class="ttname"><a href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">TableTop_Object_Detection::show_segmented_objects</a></div><div class="ttdeci">void show_segmented_objects(boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer)</div><div class="ttdoc">show the segmented objects </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00404">tabletop_object_detection.cpp:404</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a04a52e6b5c3c906514a0ef111075f93e"><div class="ttname"><a href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">TableTop_Object_Detection::show_super_voxels</a></div><div class="ttdeci">void show_super_voxels(boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer, bool show_adjacency_map, bool show_super_voxel_normals)</div><div class="ttdoc">shows in the viewer the supervoxels </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00321">tabletop_object_detection.cpp:321</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_ad13b6dd411e0a557a4de7a9323da33bb"><div class="ttname"><a href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">TableTop_Object_Detection::print_parameters</a></div><div class="ttdeci">void print_parameters()</div><div class="ttdoc">Print the parameters of the algorithm in the shell. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00466">tabletop_object_detection.cpp:466</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a7f4100b194f701841e3fe565a613415c"><div class="ttname"><a href="classTableTop__Object__Detection.html#a7f4100b194f701841e3fe565a613415c">TableTop_Object_Detection::get_sv_normal_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointNormal &gt; get_sv_normal_cloud()</div><div class="ttdoc">returns normals point cloud of the supervoxels </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00504">tabletop_object_detection.cpp:504</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a69899eb7a9504e03e75286f437e8da71"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a69899eb7a9504e03e75286f437e8da71">tableTop_object_detection_parameters::zmax</a></div><div class="ttdeci">double zmax</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00066">tabletop_object_detection.h:66</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_aad3a5a13616c968ec81f2ed95eb8ef6c"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">tableTop_object_detection_parameters::normal_importance</a></div><div class="ttdeci">double normal_importance</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00055">tabletop_object_detection.h:55</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a98e6dbcffc628ec9ff8c0b91bd07bf7d"><div class="ttname"><a href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">TableTop_Object_Detection::get_segmented_objects</a></div><div class="ttdeci">std::vector&lt; Object &gt; get_segmented_objects()</div><div class="ttdoc">Get the detected objects as a vector of the variable Object. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00449">tabletop_object_detection.cpp:449</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_ab0d42a5811ff6ff88e5364462b891adc"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">tableTop_object_detection_parameters::min_segment_size</a></div><div class="ttdeci">int min_segment_size</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00060">tabletop_object_detection.h:60</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_abd2df80ddd63d2527fdb3e2173dfa7bd"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">tableTop_object_detection_parameters::voxel_resolution</a></div><div class="ttdeci">double voxel_resolution</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00051">tabletop_object_detection.h:51</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a40051e60619a46e0a1fe3df06a6367d9"><div class="ttname"><a href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">TableTop_Object_Detection::init</a></div><div class="ttdeci">void init(pcl::PointCloud&lt; pcl::PointXYZRGBA &gt; input_cloud, tableTop_object_detection_parameters &amp;opt)</div><div class="ttdoc">Class initializer. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00013">tabletop_object_detection.cpp:13</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_ac427e4c80d7791bbe503f560740aee88"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">tableTop_object_detection_parameters::spatial_importance</a></div><div class="ttdeci">double spatial_importance</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00054">tabletop_object_detection.h:54</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_ad839812934dce3dc30bfce50a6c7979b"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">tableTop_object_detection_parameters::disable_transform</a></div><div class="ttdeci">bool disable_transform</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00050">tabletop_object_detection.h:50</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a82b13b33ede8b98cc506715700f5760a"><div class="ttname"><a href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">TableTop_Object_Detection::segment</a></div><div class="ttdeci">void segment()</div><div class="ttdoc">Detect and segment the objects on the table. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00198">tabletop_object_detection.cpp:198</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_abe94e4ef82ab5c9474853a97f3bc0d11"><div class="ttname"><a href="classTableTop__Object__Detection.html#abe94e4ef82ab5c9474853a97f3bc0d11">TableTop_Object_Detection::get_supervoxel_clusters</a></div><div class="ttdeci">std::map&lt; uint32_t, pcl::Supervoxel&lt; pcl::PointXYZRGBA &gt;::Ptr &gt; get_supervoxel_clusters()</div><div class="ttdoc">returns supervoxel_clusters </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00499">tabletop_object_detection.cpp:499</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a890c8e6be3cae5aa41b8b2ecbc3bf34a"><div class="ttname"><a href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">TableTop_Object_Detection::get_default_parameters</a></div><div class="ttdeci">tableTop_object_detection_parameters get_default_parameters()</div><div class="ttdoc">get the default parameters of the algorithm </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00170">tabletop_object_detection.cpp:170</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a979341d0bcf0d9b8696b65054bec5838"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">tableTop_object_detection_parameters::use_sanity_criterion</a></div><div class="ttdeci">bool use_sanity_criterion</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00062">tabletop_object_detection.h:62</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a3225e48172e84101b8ae82a8c9dd08dd"><div class="ttname"><a href="classTableTop__Object__Detection.html#a3225e48172e84101b8ae82a8c9dd08dd">TableTop_Object_Detection::get_segmented_objects_simple</a></div><div class="ttdeci">std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZRGBA &gt; &gt; get_segmented_objects_simple()</div><div class="ttdoc">Get the detected objects as a vector of point clouds. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00454">tabletop_object_detection.cpp:454</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a0545fba1336d1a337d6693b4b85bac04"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">tableTop_object_detection_parameters::zmin</a></div><div class="ttdeci">double zmin</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00065">tabletop_object_detection.h:65</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/tabletop__object__detection_8h_source.html b/trunk/doc/html/tabletop__object__detection_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..386b735e9765efd2a7ba9f3953542fa1831c1dc4
--- /dev/null
+++ b/trunk/doc/html/tabletop__object__detection_8h_source.html
@@ -0,0 +1,286 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: /home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/tabletop_object_detection.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+    </ul>
+  </div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">tabletop_object_detection.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef SEGMENTATION_H_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define SEGMENTATION_H_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#include &lt;pcl/console/parse.h&gt;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#include &lt;pcl/point_cloud.h&gt;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#include &lt;pcl/point_types.h&gt;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;pcl/io/pcd_io.h&gt;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;pcl/visualization/pcl_visualizer.h&gt;</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &lt;pcl/segmentation/supervoxel_clustering.h&gt;</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;iostream&gt;</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;pcl/ModelCoefficients.h&gt;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;pcl/io/pcd_io.h&gt;</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;pcl/sample_consensus/method_types.h&gt;</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;pcl/sample_consensus/model_types.h&gt;</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &lt;pcl/segmentation/sac_segmentation.h&gt;</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &lt;pcl/filters/extract_indices.h&gt;</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &lt;pcl/segmentation/lccp_segmentation.h&gt;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &lt;vtkPolyLine.h&gt;</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &lt;pcl/sample_consensus/method_types.h&gt;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &lt;pcl/sample_consensus/model_types.h&gt;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &lt;pcl/segmentation/sac_segmentation.h&gt;</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &lt;pcl/filters/extract_indices.h&gt;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &lt;pcl/surface/convex_hull.h&gt;</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &lt;pcl/segmentation/extract_polygonal_prism_data.h&gt;</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">typedef</span> pcl::LCCPSegmentation&lt;pcl::PointXYZRGBA&gt;::SupervoxelAdjacencyList SuperVoxelAdjacencyList;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#ifndef OBJECT</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define OBJECT </span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="structObject.html">   37</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structObject.html">Object</a></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;{</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; object_cloud;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;  <span class="keywordtype">int</span> label;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;};</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html">   47</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;{</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;  <span class="comment">//supervoxels parameters </span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">   50</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">disable_transform</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">   51</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">voxel_resolution</a>; </div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">   52</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">seed_resolution</a>; </div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">   53</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">color_importance</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">   54</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">spatial_importance</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">   55</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">normal_importance</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;  <span class="comment">// LCCPSegmentation parameters</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">   58</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">concavity_tolerance_threshold</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">   59</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">smoothness_threshold</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">   60</a></span>&#160;  <span class="keywordtype">int</span> <a class="code" href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">min_segment_size</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">   61</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">use_extended_convexity</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">   62</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">use_sanity_criterion</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;  <span class="comment">// other parameters    </span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">   65</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">zmin</a>; </div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#a69899eb7a9504e03e75286f437e8da71">   66</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="structtableTop__object__detection__parameters.html#a69899eb7a9504e03e75286f437e8da71">zmax</a>; </div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">   67</a></span>&#160;  <span class="keywordtype">int</span> <a class="code" href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">th_points</a>; </div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;}; </div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="classTableTop__Object__Detection.html">   91</a></span>&#160;<span class="keyword">class </span><a class="code" href="classTableTop__Object__Detection.html">TableTop_Object_Detection</a></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;{</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;  <span class="comment">// -------- Default Parameters --------</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  <span class="comment">// supervoxels parameters </span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> DISABLE_TRANSFORM = <span class="keyword">false</span>; </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> VOXEL_RESOLUTION = 0.0075f;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> SEED_RESOLUTION = 0.03f; </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> COLOR_IMPORTANCE = 0.0f;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> SPATIAL_IMPORTANCE = 1.0f;</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> NORMAL_IMPORTANCE = 4.0f;</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;  <span class="comment">// LCCPSegmentation parameters</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> CONCAVITY_TOLERANCE_THRESHOLD = 10;</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> SMOOTHNESS_THRESHOLD = 0.1f;</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> MIN_SEGMENT_SIZE = 3;</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> USE_EXTENDED_CONVEXITY = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> USE_SANITY_CRITERION = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;      <span class="comment">// Others parameters</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> ZMIN = 0.02;</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">double</span> ZMAX = 2.; </div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> TH_POINTS = 400; </div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;  <span class="comment">//-------------------</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  std::vector&lt;Object&gt; filt_objs;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;::Ptr cloud;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZL&gt;::Ptr lccp_labeled_cloud;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;  std::multimap&lt;uint32_t, uint32_t&gt; supervoxel_adjacency;</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZL&gt;::Ptr labeled_voxel_cloud;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;  std::map &lt;uint32_t, pcl::Supervoxel&lt;pcl::PointXYZRGBA&gt;::Ptr &gt; supervoxel_clusters;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;  pcl::PointCloud&lt;pcl::PointNormal&gt;::Ptr sv_normal_cloud;</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;  <span class="keywordtype">void</span> addSupervoxelConnectionsToViewer (pcl::PointXYZRGBA &amp;supervoxel_center,</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                                        pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;&amp; adjacent_supervoxel_centers,</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                                        std::string supervoxel_name,</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;                                        boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer);</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;  <span class="keywordtype">void</span> detectObjectsOnTable(pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;::Ptr cloud, <span class="keywordtype">double</span> zmin, <span class="keywordtype">double</span> zmax, pcl::PointIndices::Ptr objectIndices, <span class="keywordtype">bool</span> filter_input_cloud);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;  <span class="comment">//supervoxels parameters </span></div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;  <span class="keywordtype">bool</span> disable_transform;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;  <span class="keywordtype">double</span> voxel_resolution; </div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;  <span class="keywordtype">double</span> seed_resolution; </div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;  <span class="keywordtype">double</span> color_importance;</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;  <span class="keywordtype">double</span> spatial_importance;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;  <span class="keywordtype">double</span> normal_importance;</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;  <span class="comment">// LCCPSegmentation parameters</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;  <span class="keywordtype">double</span> concavity_tolerance_threshold;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;  <span class="keywordtype">double</span> smoothness_threshold;</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;  <span class="keywordtype">int</span> min_segment_size;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;  <span class="keywordtype">bool</span> use_extended_convexity;</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;  <span class="keywordtype">bool</span> use_sanity_criterion;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;  <span class="comment">// other parameters    </span></div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  <span class="keywordtype">double</span> zmin; </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;  <span class="keywordtype">double</span> zmax; </div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;  <span class="keywordtype">int</span> th_points; </div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;  <span class="keywordtype">void</span> set_default_parameters();</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;  <span class="keywordtype">void</span> set_parameters(<a class="code" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a> &amp; opt);</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;  <span class="keyword">public</span>:               </div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;    <a class="code" href="classTableTop__Object__Detection.html#aae7c3acdedfe90a1a78d4ba019d53939">TableTop_Object_Detection</a>();</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;    <a class="code" href="classTableTop__Object__Detection.html#a75fb88d53b6d2d70fb6f24e0360dcef8">~TableTop_Object_Detection</a>();</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">init</a>(pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; input_cloud,</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;              <a class="code" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a> &amp;opt);</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">init</a>(pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; input_cloud);</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    <a class="code" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a> <a class="code" href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">get_default_parameters</a>(); </div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">segment</a>();</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">show_super_voxels</a>(boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer,<span class="keywordtype">bool</span> show_adjacency_map, <span class="keywordtype">bool</span> show_super_voxel_normals);</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">show_super_voxels</a>(boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer);</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">show_segmented_objects</a>(boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer); </div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">clean_viewer</a>(boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; &amp; viewer);</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    std::vector&lt;Object&gt; <a class="code" href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">get_segmented_objects</a>();</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;    std::vector&lt;pcl::PointCloud&lt;pcl::PointXYZRGBA&gt; &gt; <a class="code" href="classTableTop__Object__Detection.html#a3225e48172e84101b8ae82a8c9dd08dd">get_segmented_objects_simple</a>();</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">print_parameters</a>();</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    pcl::PointCloud&lt;pcl::PointXYZL&gt; <a class="code" href="classTableTop__Object__Detection.html#a48985d7b12316ccecbd85c7e09f1e6af">get_labeled_voxel_cloud</a>();</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    std::multimap&lt;uint32_t, uint32_t&gt; <a class="code" href="classTableTop__Object__Detection.html#a2d6ea56e8d89a278a4640ca827c9da4d">get_supervoxel_adjacency</a>();</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;    std::map &lt;uint32_t, pcl::Supervoxel&lt;pcl::PointXYZRGBA&gt;::Ptr&gt; <a class="code" href="classTableTop__Object__Detection.html#abe94e4ef82ab5c9474853a97f3bc0d11">get_supervoxel_clusters</a>();</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;    pcl::PointCloud&lt;pcl::PointNormal&gt; <a class="code" href="classTableTop__Object__Detection.html#a7f4100b194f701841e3fe565a613415c">get_sv_normal_cloud</a>();</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    <span class="keywordtype">void</span> set_disable_transform(<span class="keywordtype">bool</span> disable_transform_in);</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    <span class="keywordtype">void</span> set_voxel_resolution(<span class="keywordtype">double</span> voxel_resolution_in);</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    <span class="keywordtype">void</span> set_seed_resolution(<span class="keywordtype">double</span> seed_resolution_in);</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    <span class="keywordtype">void</span> set_color_importance(<span class="keywordtype">double</span> color_importance_in);</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    <span class="keywordtype">void</span> set_spatial_importance(<span class="keywordtype">double</span> spatial_importance_in);</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    <span class="keywordtype">void</span> set_normal_importance(<span class="keywordtype">double</span> normal_importance_in);</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    </div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;    <span class="keywordtype">void</span> set_concavity_tolerance_threshold(<span class="keywordtype">double</span> concavity_tolerance_threshold_in);</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;    <span class="keywordtype">void</span> set_smoothness_threshold(<span class="keywordtype">double</span> smoothness_threshold_in);</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;    <span class="keywordtype">void</span> set_min_segment_size(<span class="keywordtype">int</span> min_segment_size_in);</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;    <span class="keywordtype">void</span> set_use_extended_convexity(<span class="keywordtype">bool</span> use_extended_convexity_in);</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    <span class="keywordtype">void</span> set_use_sanity_criterion(<span class="keywordtype">bool</span> use_sanity_criterion_in);</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    <span class="keywordtype">void</span> set_zmin(<span class="keywordtype">double</span> zmin_in);</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;    <span class="keywordtype">void</span> set_zmax(<span class="keywordtype">double</span> zmax_in);</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <span class="keywordtype">void</span> set_th_points(<span class="keywordtype">int</span> th_points_in);</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    <span class="keywordtype">bool</span> get_disable_transform();</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;    <span class="keywordtype">double</span> get_voxel_resolution();</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;    <span class="keywordtype">double</span> get_seed_resolution();</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;    <span class="keywordtype">double</span> get_color_importance();</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;    <span class="keywordtype">double</span> get_spatial_importance();</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;    <span class="keywordtype">double</span> get_normal_importance();</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;    </div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;    <span class="keywordtype">double</span> get_concavity_tolerance_threshold();</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;    <span class="keywordtype">double</span> get_smoothness_threshold();</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    <span class="keywordtype">int</span> get_min_segment_size();</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;    <span class="keywordtype">bool</span> get_use_extended_convexity();</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;    <span class="keywordtype">bool</span> get_use_sanity_criterion();</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;    <span class="keywordtype">double</span> get_zmin();</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;    <span class="keywordtype">double</span> get_zmax();</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    <span class="keywordtype">int</span> get_th_points();</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;</div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;};</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="preprocessor">#endif </span></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a1dac5b182b352220c6ca6a4f169ebc85"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">tableTop_object_detection_parameters::th_points</a></div><div class="ttdeci">int th_points</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00067">tabletop_object_detection.h:67</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_adbd04002cc3f21b67dedc7d5a4817ea9"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">tableTop_object_detection_parameters::use_extended_convexity</a></div><div class="ttdeci">bool use_extended_convexity</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00061">tabletop_object_detection.h:61</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html"><div class="ttname"><a href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a></div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00047">tabletop_object_detection.h:47</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_af9edebad24574492fb986884155cecd3"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">tableTop_object_detection_parameters::concavity_tolerance_threshold</a></div><div class="ttdeci">double concavity_tolerance_threshold</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00058">tabletop_object_detection.h:58</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a5b99f038253f4bb3282b3ffea82cd444"><div class="ttname"><a href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">TableTop_Object_Detection::clean_viewer</a></div><div class="ttdeci">void clean_viewer(boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer)</div><div class="ttdoc">clean all the pointclouds or shapes introduced by the class in the viewer </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00430">tabletop_object_detection.cpp:430</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a75fb88d53b6d2d70fb6f24e0360dcef8"><div class="ttname"><a href="classTableTop__Object__Detection.html#a75fb88d53b6d2d70fb6f24e0360dcef8">TableTop_Object_Detection::~TableTop_Object_Detection</a></div><div class="ttdeci">~TableTop_Object_Detection()</div><div class="ttdoc">class destructor </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00008">tabletop_object_detection.cpp:8</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_aae7c3acdedfe90a1a78d4ba019d53939"><div class="ttname"><a href="classTableTop__Object__Detection.html#aae7c3acdedfe90a1a78d4ba019d53939">TableTop_Object_Detection::TableTop_Object_Detection</a></div><div class="ttdeci">TableTop_Object_Detection()</div><div class="ttdoc">Class costructor. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00003">tabletop_object_detection.cpp:3</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a48985d7b12316ccecbd85c7e09f1e6af"><div class="ttname"><a href="classTableTop__Object__Detection.html#a48985d7b12316ccecbd85c7e09f1e6af">TableTop_Object_Detection::get_labeled_voxel_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointXYZL &gt; get_labeled_voxel_cloud()</div><div class="ttdoc">returns labeld voxel cloud </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00489">tabletop_object_detection.cpp:489</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a2d6ea56e8d89a278a4640ca827c9da4d"><div class="ttname"><a href="classTableTop__Object__Detection.html#a2d6ea56e8d89a278a4640ca827c9da4d">TableTop_Object_Detection::get_supervoxel_adjacency</a></div><div class="ttdeci">std::multimap&lt; uint32_t, uint32_t &gt; get_supervoxel_adjacency()</div><div class="ttdoc">returns supervoxel_adjacency map </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00494">tabletop_object_detection.cpp:494</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a25ae1cdac1117e64e8e14b2c1cd6c361"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">tableTop_object_detection_parameters::smoothness_threshold</a></div><div class="ttdeci">double smoothness_threshold</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00059">tabletop_object_detection.h:59</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a1cc4d45794c3a1e232d7a5f43243622e"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">tableTop_object_detection_parameters::color_importance</a></div><div class="ttdeci">double color_importance</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00053">tabletop_object_detection.h:53</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a5b5cf25fa26e9d6a5762ccaaa59bd980"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">tableTop_object_detection_parameters::seed_resolution</a></div><div class="ttdeci">double seed_resolution</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00052">tabletop_object_detection.h:52</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_abe6dd4074db8cec51da0e85d4841c2e9"><div class="ttname"><a href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">TableTop_Object_Detection::show_segmented_objects</a></div><div class="ttdeci">void show_segmented_objects(boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer)</div><div class="ttdoc">show the segmented objects </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00404">tabletop_object_detection.cpp:404</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a04a52e6b5c3c906514a0ef111075f93e"><div class="ttname"><a href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">TableTop_Object_Detection::show_super_voxels</a></div><div class="ttdeci">void show_super_voxels(boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer, bool show_adjacency_map, bool show_super_voxel_normals)</div><div class="ttdoc">shows in the viewer the supervoxels </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00321">tabletop_object_detection.cpp:321</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_ad13b6dd411e0a557a4de7a9323da33bb"><div class="ttname"><a href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">TableTop_Object_Detection::print_parameters</a></div><div class="ttdeci">void print_parameters()</div><div class="ttdoc">Print the parameters of the algorithm in the shell. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00466">tabletop_object_detection.cpp:466</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a7f4100b194f701841e3fe565a613415c"><div class="ttname"><a href="classTableTop__Object__Detection.html#a7f4100b194f701841e3fe565a613415c">TableTop_Object_Detection::get_sv_normal_cloud</a></div><div class="ttdeci">pcl::PointCloud&lt; pcl::PointNormal &gt; get_sv_normal_cloud()</div><div class="ttdoc">returns normals point cloud of the supervoxels </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00504">tabletop_object_detection.cpp:504</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a69899eb7a9504e03e75286f437e8da71"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a69899eb7a9504e03e75286f437e8da71">tableTop_object_detection_parameters::zmax</a></div><div class="ttdeci">double zmax</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00066">tabletop_object_detection.h:66</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_aad3a5a13616c968ec81f2ed95eb8ef6c"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">tableTop_object_detection_parameters::normal_importance</a></div><div class="ttdeci">double normal_importance</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00055">tabletop_object_detection.h:55</a></div></div>
+<div class="ttc" id="structObject_html"><div class="ttname"><a href="structObject.html">Object</a></div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00037">tabletop_object_detection.h:37</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a98e6dbcffc628ec9ff8c0b91bd07bf7d"><div class="ttname"><a href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">TableTop_Object_Detection::get_segmented_objects</a></div><div class="ttdeci">std::vector&lt; Object &gt; get_segmented_objects()</div><div class="ttdoc">Get the detected objects as a vector of the variable Object. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00449">tabletop_object_detection.cpp:449</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_ab0d42a5811ff6ff88e5364462b891adc"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">tableTop_object_detection_parameters::min_segment_size</a></div><div class="ttdeci">int min_segment_size</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00060">tabletop_object_detection.h:60</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_abd2df80ddd63d2527fdb3e2173dfa7bd"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">tableTop_object_detection_parameters::voxel_resolution</a></div><div class="ttdeci">double voxel_resolution</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00051">tabletop_object_detection.h:51</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a40051e60619a46e0a1fe3df06a6367d9"><div class="ttname"><a href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">TableTop_Object_Detection::init</a></div><div class="ttdeci">void init(pcl::PointCloud&lt; pcl::PointXYZRGBA &gt; input_cloud, tableTop_object_detection_parameters &amp;opt)</div><div class="ttdoc">Class initializer. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00013">tabletop_object_detection.cpp:13</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_ac427e4c80d7791bbe503f560740aee88"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">tableTop_object_detection_parameters::spatial_importance</a></div><div class="ttdeci">double spatial_importance</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00054">tabletop_object_detection.h:54</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html"><div class="ttname"><a href="classTableTop__Object__Detection.html">TableTop_Object_Detection</a></div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00091">tabletop_object_detection.h:91</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_ad839812934dce3dc30bfce50a6c7979b"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">tableTop_object_detection_parameters::disable_transform</a></div><div class="ttdeci">bool disable_transform</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00050">tabletop_object_detection.h:50</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a82b13b33ede8b98cc506715700f5760a"><div class="ttname"><a href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">TableTop_Object_Detection::segment</a></div><div class="ttdeci">void segment()</div><div class="ttdoc">Detect and segment the objects on the table. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00198">tabletop_object_detection.cpp:198</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_abe94e4ef82ab5c9474853a97f3bc0d11"><div class="ttname"><a href="classTableTop__Object__Detection.html#abe94e4ef82ab5c9474853a97f3bc0d11">TableTop_Object_Detection::get_supervoxel_clusters</a></div><div class="ttdeci">std::map&lt; uint32_t, pcl::Supervoxel&lt; pcl::PointXYZRGBA &gt;::Ptr &gt; get_supervoxel_clusters()</div><div class="ttdoc">returns supervoxel_clusters </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00499">tabletop_object_detection.cpp:499</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a890c8e6be3cae5aa41b8b2ecbc3bf34a"><div class="ttname"><a href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">TableTop_Object_Detection::get_default_parameters</a></div><div class="ttdeci">tableTop_object_detection_parameters get_default_parameters()</div><div class="ttdoc">get the default parameters of the algorithm </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00170">tabletop_object_detection.cpp:170</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a979341d0bcf0d9b8696b65054bec5838"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">tableTop_object_detection_parameters::use_sanity_criterion</a></div><div class="ttdeci">bool use_sanity_criterion</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00062">tabletop_object_detection.h:62</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a3225e48172e84101b8ae82a8c9dd08dd"><div class="ttname"><a href="classTableTop__Object__Detection.html#a3225e48172e84101b8ae82a8c9dd08dd">TableTop_Object_Detection::get_segmented_objects_simple</a></div><div class="ttdeci">std::vector&lt; pcl::PointCloud&lt; pcl::PointXYZRGBA &gt; &gt; get_segmented_objects_simple()</div><div class="ttdoc">Get the detected objects as a vector of point clouds. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00454">tabletop_object_detection.cpp:454</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a0545fba1336d1a337d6693b4b85bac04"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">tableTop_object_detection_parameters::zmin</a></div><div class="ttdeci">double zmin</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00065">tabletop_object_detection.h:65</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/tabletop__object__detection__test_8cpp_source.html b/trunk/doc/html/tabletop__object__detection__test_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..a2f93dd1247df6a25c8774355122e666b8111406
--- /dev/null
+++ b/trunk/doc/html/tabletop__object__detection__test_8cpp_source.html
@@ -0,0 +1,291 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>tabletop_object_detection: /home/nicola/iri_ws/labrobotica/algorithms/tableTop_object_detection/trunk/src/examples/tabletop_object_detection_test.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">tabletop_object_detection
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li><a href="examples.html"><span>Examples</span></a></li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File&#160;List</span></a></li>
+    </ul>
+  </div>
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_e931c1a3f0014e624d0645a271726ad2.html">examples</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">tabletop_object_detection_test.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;tabletop_object_detection.h&quot;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &lt;pcl/visualization/pcl_visualizer.h&gt;</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment">// these includes are for retrieve the objects&#39; points in the RGB image</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;opencv2/imgproc/imgproc.hpp&quot;</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &quot;opencv2/highgui/highgui.hpp&quot;</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &quot;opencv2/core/core.hpp&quot;</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &lt;pcl/kdtree/kdtree_flann.h&gt;</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keywordtype">bool</span> pressed = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keywordtype">void</span> keyboardEventOccurred (<span class="keyword">const</span> pcl::visualization::KeyboardEvent &amp;event,</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                        <span class="keywordtype">void</span>* viewer_void)</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;{</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;  boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; viewer = *<span class="keyword">static_cast&lt;</span>boost::shared_ptr&lt;pcl::visualization::PCLVisualizer&gt; *<span class="keyword">&gt;</span> (viewer_void);</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;  <span class="keywordflow">if</span> (event.getKeySym() == <span class="stringliteral">&quot;n&quot;</span> &amp;&amp; <span class="keyword">event</span>.keyDown ())</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;  {</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    pressed = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;  }</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;}</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="keywordtype">int</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;main (<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> ** argv)</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;{</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;   <span class="keywordflow">if</span> (argc &lt; 2)</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;   {</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;     pcl::console::print_error (<span class="stringliteral">&quot;Syntax is: %s &lt;pcd-file&gt; \n&quot;</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;     <span class="stringliteral">&quot;--NT Dsables the single cloud transform \n&quot;</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;     <span class="stringliteral">&quot;-v &lt;voxel resolution&gt;\n-s &lt;seed resolution&gt;\n&quot;</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;     <span class="stringliteral">&quot;-c &lt;color weight&gt; \n-z &lt;spatial weight&gt; \n&quot;</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;     <span class="stringliteral">&quot;-n &lt;normal_weight&gt;\n&quot;</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;     <span class="stringliteral">&quot;---LCCP params----\n&quot;</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;     <span class="stringliteral">&quot;-sc disable sanity criterion\n&quot;</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;     <span class="stringliteral">&quot;-ct concavity tolerance\n&quot;</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;     <span class="stringliteral">&quot;-st smoothness threshold\n&quot;</span>                                 </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;     <span class="stringliteral">&quot;-ec enable extended criterion\n&quot;</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;     <span class="stringliteral">&quot;-smooth min segment size\n&quot;</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;     <span class="stringliteral">&quot;-- Others parameters ---&quot;</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;     <span class="stringliteral">&quot;-zmin minimum distance orthogonal to the table plane to consider a point as valid\n&quot;</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;     <span class="stringliteral">&quot;-zmax maximum distance orthogonal to the table plane to consider a point as valid\n&quot;</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;     <span class="stringliteral">&quot;-th_points minimum amount of points to consider a cluster as an object\n&quot;</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;     <span class="stringliteral">&quot;\n&quot;</span>, argv[0]);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;     <span class="keywordflow">return</span> (1);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;   }</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;  <span class="comment">// parameters for the LCCP segmentation</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;  <a class="code" href="classTableTop__Object__Detection.html">TableTop_Object_Detection</a> segLCCP;</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;  <a class="code" href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a> opt = segLCCP.<a class="code" href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">get_default_parameters</a>();</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;  <span class="comment">// ------------------- parsing the inputs ----------------------------     </span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;  <span class="comment">//--------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">disable_transform</a> = pcl::console::find_switch (argc, argv, <span class="stringliteral">&quot;--NT&quot;</span>);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-v&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">voxel_resolution</a>);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-s&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">seed_resolution</a>);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-c&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">color_importance</a>);</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-z&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">spatial_importance</a>);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-n&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">normal_importance</a>);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-ct&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">concavity_tolerance_threshold</a>);</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-st&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">smoothness_threshold</a>);</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">use_extended_convexity</a> = pcl::console::find_switch (argc, argv, <span class="stringliteral">&quot;-ec&quot;</span>);</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;  opt.<a class="code" href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">use_sanity_criterion</a> = !pcl::console::find_switch (argc, argv, <span class="stringliteral">&quot;-sc&quot;</span>);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-smooth&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">min_segment_size</a>);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;  <span class="comment">// table plane estimation - parameters</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-zmin&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">zmin</a>);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  <span class="comment">// minimum amount of points to consider a cluster as an object</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;  pcl::console::parse (argc, argv, <span class="stringliteral">&quot;-th_points&quot;</span>, opt.<a class="code" href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">th_points</a>);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;  <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;::Ptr cloud(<span class="keyword">new</span> pcl::PointCloud&lt;pcl::PointXYZRGBA&gt;);</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;  pcl::console::print_highlight (<span class="stringliteral">&quot;Loading point cloud...\n&quot;</span>);</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;  <span class="keywordflow">if</span> (pcl::io::loadPCDFile&lt;pcl::PointXYZRGBA&gt; (argv[1], *cloud))</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;  {</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    pcl::console::print_error (<span class="stringliteral">&quot;Error loading cloud file!\n&quot;</span>);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="keywordflow">return</span> (1);</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  }</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;  <span class="comment">//----------------------------------------</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;  <span class="comment">//TableTop_Object_Detection segLCCP;</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;  std::vector&lt;Object&gt; seg_objs; <span class="comment">//(&quot;seg_objs&quot; stands for &quot;filtered objects&quot;) </span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;  segLCCP.<a class="code" href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">init</a>(*cloud,opt);</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;  segLCCP.<a class="code" href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">print_parameters</a>();</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  segLCCP.<a class="code" href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">segment</a>();</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;  seg_objs = segLCCP.<a class="code" href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">get_segmented_objects</a>();</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  std::cout &lt;&lt; <span class="stringliteral">&quot;\nDetected &quot;</span> &lt;&lt; seg_objs.size() &lt;&lt; <span class="stringliteral">&quot; objects.\n\n&quot;</span>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;  <span class="comment">//----------------------------------------</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  pcl::visualization::PCLVisualizer::Ptr viewer (<span class="keyword">new</span> pcl::visualization::PCLVisualizer (<span class="stringliteral">&quot;3D Viewer&quot;</span>));</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  viewer-&gt;setBackgroundColor (0, 0, 0);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;  viewer-&gt;registerKeyboardCallback (keyboardEventOccurred, (<span class="keywordtype">void</span>*)&amp;viewer);  </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;  <span class="comment">// show super voxels with normals and adiacency map </span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;  <span class="keywordtype">bool</span> show_adjacency_map = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;  <span class="keywordtype">bool</span> show_super_voxel_normals = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;  segLCCP.<a class="code" href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">show_super_voxels</a>(viewer,show_adjacency_map,show_super_voxel_normals);  </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;  </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;  std::cout &lt;&lt; <span class="stringliteral">&quot;Press &#39;n&#39; to show the segmented objects\n&quot;</span>;</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;  <span class="keywordflow">while</span> (!viewer-&gt;wasStopped () &amp;&amp; !pressed) <span class="comment">// the pressed variable is just usfull only for this first while (bad programming)</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;      viewer-&gt;spinOnce (100);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;  segLCCP.<a class="code" href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">clean_viewer</a>(viewer);</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;  <span class="comment">// show the segmented objects, the result of the segmentation</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;  std::cout &lt;&lt; <span class="stringliteral">&quot;\nClose the visualzier to go to the next step\n&quot;</span>;</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;  segLCCP.<a class="code" href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">show_segmented_objects</a>(viewer);</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;  <span class="keywordflow">while</span> (!viewer-&gt;wasStopped ()) <span class="comment">// the pressed variable is just usfull only for this first while (bad programming)</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;      viewer-&gt;spinOnce (100);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;  segLCCP.<a class="code" href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">clean_viewer</a>(viewer);</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;  <span class="keywordflow">if</span>(cloud-&gt;isOrganized())<span class="comment">//if the point cloud is organized we can work with the RGB image</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;  {</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    <span class="comment">// recover the RGB IMAGE from the point cloud </span></div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    cv::Mat img_orignal(480, 640, CV_8UC3); <span class="comment">//create an image ( 3 channels, 8 bit image depth);</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> row = 0; row &lt; img_orignal.rows; ++row)</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    {</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;      <span class="keywordflow">for</span> (<span class="keywordtype">int</span> c = 0; c &lt; img_orignal.cols; ++c)</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;      {             </div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;        </div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        pcl::PointXYZRGBA point = (*cloud)(c,row); <span class="comment">//note: there is a transformation in the reference frame of the pclò and the image!!!!!!!!!!!!!!!!</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        uint8_t r = (uint8_t)point.r;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        uint8_t g = (uint8_t)point.g;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      </div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        uint8_t b = (uint8_t)point.b;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     </div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;                  </div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        cv::Vec3b color;<span class="comment">//vector of colors             </span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;        color.val[0] = b;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        color.val[1] = g;</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        color.val[2] = r;</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        img_orignal.at&lt;cv::Vec3b&gt;(row,c) = color;</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;      }</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    }</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;    cv::namedWindow(<span class="stringliteral">&quot;Original&quot;</span>, CV_WINDOW_AUTOSIZE); <span class="comment">//create a window with the name &quot;MyWindow&quot;</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    cv::imshow(<span class="stringliteral">&quot;Original&quot;</span>, img_orignal); <span class="comment">//display the image which is stored in the &#39;img&#39; in the &quot;MyWindow&quot; window</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    std::cout &lt;&lt; <span class="stringliteral">&quot;You are now viewing the RGB image (recovered by the point cloud).&quot;</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;              &lt;&lt; <span class="stringliteral">&quot; Press whatever key to go further.&quot;</span>;</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    cv::waitKey(0);</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    <span class="comment">// displaying in the RGB image what are the pixels of the rgb image related to the segmented objects</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    std::cout &lt;&lt; <span class="stringliteral">&quot;\nYou are now visualizing the results of the segmentation in the 2D rgb image.&quot;</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;              &lt;&lt; <span class="stringliteral">&quot; Press right arrow to visualize the next object, the left one to visualize the previous one, and ESC to exit.\n&quot;</span>;           </div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    </div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    <span class="comment">// to retireve the points in the RGB image we have to use a KdTree to get the points of the object</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    <span class="comment">// in the input cloud              </span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;    pcl::KdTreeFLANN&lt;pcl::PointXYZRGBA&gt; kdtree;</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;    kdtree.setInputCloud (cloud);</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;    <span class="keywordtype">int</span> k = 0;</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    uint32_t idx_v = 0; <span class="comment">//index of the object to work with </span></div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    cv::namedWindow(<span class="stringliteral">&quot;Segmented Results&quot;</span>, CV_WINDOW_AUTOSIZE); <span class="comment">//create a window with the name &quot;MyWindow&quot;</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    <span class="keywordflow">while</span>( (k != 27 &amp;&amp; k != 1048603) &amp;&amp; idx_v &lt; seg_objs.size() &amp;&amp; idx_v &gt;= 0) <span class="comment">//while it ESC is not pressed </span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;    {</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;      <span class="keywordflow">if</span>(seg_objs[idx_v].object_cloud.points.size() &gt; 400)</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;      {</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;        cv::Mat img(480, 640, CV_8UC3,cv::Scalar(255,255,255)); <span class="comment">//create an image ( 3 channels, 8 bit image depth);</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;        <span class="comment">//fill the matrix &quot;img&quot; with only the points of the current object</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; seg_objs[idx_v].object_cloud.points.size(); ++i)</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        {</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;          pcl::PointXYZRGBA searchPoint;</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;          searchPoint.x = seg_objs[idx_v].object_cloud.points[i].x;</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;          searchPoint.y = seg_objs[idx_v].object_cloud.points[i].y;</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;          searchPoint.z = seg_objs[idx_v].object_cloud.points[i].z;</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;          std::vector&lt;int&gt; pointIdxNKNSearch(1);</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;          std::vector&lt;float&gt; pointNKNSquaredDistance(1);</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;          <span class="keywordflow">if</span> ( kdtree.nearestKSearch (searchPoint, 1, pointIdxNKNSearch, pointNKNSquaredDistance) &gt; 0 )</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;          {</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;            pcl::PointXYZRGBA point = cloud-&gt;points[pointIdxNKNSearch[0]];         </div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;            uint8_t r = (uint8_t)point.r;</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;            uint8_t g = (uint8_t)point.g;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     </div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;            uint8_t b = (uint8_t)point.b;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     </div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;                    </div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;            cv::Vec3b color; <span class="comment">//vector of colors             </span></div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;            color.val[0] = b;</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;            color.val[1] = g;</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;            color.val[2] = r;</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;            <span class="keywordtype">float</span> x,y;</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;            y = (<span class="keywordtype">int</span>)(pointIdxNKNSearch[0]/cloud-&gt;width);</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;            x = pointIdxNKNSearch[0] - y*cloud-&gt;width;</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;            img.at&lt;cv::Vec3b&gt;(y,x) = color; <span class="comment">//transformation coordinates</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;          }</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        }</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        cv::imshow(<span class="stringliteral">&quot;Segmented Results&quot;</span>, img); <span class="comment">//display the image which is stored in the &#39;img&#39; in the &quot;MyWindow&quot; window</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;        k = cv::waitKey(0);</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        std::cout &lt;&lt; <span class="stringliteral">&quot;Object: &quot;</span> &lt;&lt; idx_v &lt;&lt; std::endl;</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;      }</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;      <span class="keywordflow">if</span>( k == 65363 || k == 0 || k == 1113939) <span class="comment">// right arrow</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;        idx_v++;</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;      <span class="keywordflow">if</span>( k == 65361 || k == 1113937) <span class="comment">// left arrow</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        idx_v &gt; 0 ? idx_v-- : idx_v = 0;</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    }</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;  }</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;  <span class="keywordflow">else</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    std::cout &lt;&lt; <span class="stringliteral">&quot;The point cloud is not organized&quot;</span>;</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;  <span class="keywordflow">return</span> (0);</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;}</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;</div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a1dac5b182b352220c6ca6a4f169ebc85"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a1dac5b182b352220c6ca6a4f169ebc85">tableTop_object_detection_parameters::th_points</a></div><div class="ttdeci">int th_points</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00067">tabletop_object_detection.h:67</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_adbd04002cc3f21b67dedc7d5a4817ea9"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#adbd04002cc3f21b67dedc7d5a4817ea9">tableTop_object_detection_parameters::use_extended_convexity</a></div><div class="ttdeci">bool use_extended_convexity</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00061">tabletop_object_detection.h:61</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html"><div class="ttname"><a href="structtableTop__object__detection__parameters.html">tableTop_object_detection_parameters</a></div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00047">tabletop_object_detection.h:47</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_af9edebad24574492fb986884155cecd3"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#af9edebad24574492fb986884155cecd3">tableTop_object_detection_parameters::concavity_tolerance_threshold</a></div><div class="ttdeci">double concavity_tolerance_threshold</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00058">tabletop_object_detection.h:58</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a5b99f038253f4bb3282b3ffea82cd444"><div class="ttname"><a href="classTableTop__Object__Detection.html#a5b99f038253f4bb3282b3ffea82cd444">TableTop_Object_Detection::clean_viewer</a></div><div class="ttdeci">void clean_viewer(boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer)</div><div class="ttdoc">clean all the pointclouds or shapes introduced by the class in the viewer </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00430">tabletop_object_detection.cpp:430</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a25ae1cdac1117e64e8e14b2c1cd6c361"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a25ae1cdac1117e64e8e14b2c1cd6c361">tableTop_object_detection_parameters::smoothness_threshold</a></div><div class="ttdeci">double smoothness_threshold</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00059">tabletop_object_detection.h:59</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a1cc4d45794c3a1e232d7a5f43243622e"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a1cc4d45794c3a1e232d7a5f43243622e">tableTop_object_detection_parameters::color_importance</a></div><div class="ttdeci">double color_importance</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00053">tabletop_object_detection.h:53</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a5b5cf25fa26e9d6a5762ccaaa59bd980"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a5b5cf25fa26e9d6a5762ccaaa59bd980">tableTop_object_detection_parameters::seed_resolution</a></div><div class="ttdeci">double seed_resolution</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00052">tabletop_object_detection.h:52</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_abe6dd4074db8cec51da0e85d4841c2e9"><div class="ttname"><a href="classTableTop__Object__Detection.html#abe6dd4074db8cec51da0e85d4841c2e9">TableTop_Object_Detection::show_segmented_objects</a></div><div class="ttdeci">void show_segmented_objects(boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer)</div><div class="ttdoc">show the segmented objects </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00404">tabletop_object_detection.cpp:404</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a04a52e6b5c3c906514a0ef111075f93e"><div class="ttname"><a href="classTableTop__Object__Detection.html#a04a52e6b5c3c906514a0ef111075f93e">TableTop_Object_Detection::show_super_voxels</a></div><div class="ttdeci">void show_super_voxels(boost::shared_ptr&lt; pcl::visualization::PCLVisualizer &gt; &amp;viewer, bool show_adjacency_map, bool show_super_voxel_normals)</div><div class="ttdoc">shows in the viewer the supervoxels </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00321">tabletop_object_detection.cpp:321</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_ad13b6dd411e0a557a4de7a9323da33bb"><div class="ttname"><a href="classTableTop__Object__Detection.html#ad13b6dd411e0a557a4de7a9323da33bb">TableTop_Object_Detection::print_parameters</a></div><div class="ttdeci">void print_parameters()</div><div class="ttdoc">Print the parameters of the algorithm in the shell. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00466">tabletop_object_detection.cpp:466</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_aad3a5a13616c968ec81f2ed95eb8ef6c"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#aad3a5a13616c968ec81f2ed95eb8ef6c">tableTop_object_detection_parameters::normal_importance</a></div><div class="ttdeci">double normal_importance</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00055">tabletop_object_detection.h:55</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a98e6dbcffc628ec9ff8c0b91bd07bf7d"><div class="ttname"><a href="classTableTop__Object__Detection.html#a98e6dbcffc628ec9ff8c0b91bd07bf7d">TableTop_Object_Detection::get_segmented_objects</a></div><div class="ttdeci">std::vector&lt; Object &gt; get_segmented_objects()</div><div class="ttdoc">Get the detected objects as a vector of the variable Object. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00449">tabletop_object_detection.cpp:449</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_ab0d42a5811ff6ff88e5364462b891adc"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#ab0d42a5811ff6ff88e5364462b891adc">tableTop_object_detection_parameters::min_segment_size</a></div><div class="ttdeci">int min_segment_size</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00060">tabletop_object_detection.h:60</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_abd2df80ddd63d2527fdb3e2173dfa7bd"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#abd2df80ddd63d2527fdb3e2173dfa7bd">tableTop_object_detection_parameters::voxel_resolution</a></div><div class="ttdeci">double voxel_resolution</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00051">tabletop_object_detection.h:51</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a40051e60619a46e0a1fe3df06a6367d9"><div class="ttname"><a href="classTableTop__Object__Detection.html#a40051e60619a46e0a1fe3df06a6367d9">TableTop_Object_Detection::init</a></div><div class="ttdeci">void init(pcl::PointCloud&lt; pcl::PointXYZRGBA &gt; input_cloud, tableTop_object_detection_parameters &amp;opt)</div><div class="ttdoc">Class initializer. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00013">tabletop_object_detection.cpp:13</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_ac427e4c80d7791bbe503f560740aee88"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#ac427e4c80d7791bbe503f560740aee88">tableTop_object_detection_parameters::spatial_importance</a></div><div class="ttdeci">double spatial_importance</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00054">tabletop_object_detection.h:54</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html"><div class="ttname"><a href="classTableTop__Object__Detection.html">TableTop_Object_Detection</a></div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00091">tabletop_object_detection.h:91</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_ad839812934dce3dc30bfce50a6c7979b"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#ad839812934dce3dc30bfce50a6c7979b">tableTop_object_detection_parameters::disable_transform</a></div><div class="ttdeci">bool disable_transform</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00050">tabletop_object_detection.h:50</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a82b13b33ede8b98cc506715700f5760a"><div class="ttname"><a href="classTableTop__Object__Detection.html#a82b13b33ede8b98cc506715700f5760a">TableTop_Object_Detection::segment</a></div><div class="ttdeci">void segment()</div><div class="ttdoc">Detect and segment the objects on the table. </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00198">tabletop_object_detection.cpp:198</a></div></div>
+<div class="ttc" id="classTableTop__Object__Detection_html_a890c8e6be3cae5aa41b8b2ecbc3bf34a"><div class="ttname"><a href="classTableTop__Object__Detection.html#a890c8e6be3cae5aa41b8b2ecbc3bf34a">TableTop_Object_Detection::get_default_parameters</a></div><div class="ttdeci">tableTop_object_detection_parameters get_default_parameters()</div><div class="ttdoc">get the default parameters of the algorithm </div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8cpp_source.html#l00170">tabletop_object_detection.cpp:170</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a979341d0bcf0d9b8696b65054bec5838"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a979341d0bcf0d9b8696b65054bec5838">tableTop_object_detection_parameters::use_sanity_criterion</a></div><div class="ttdeci">bool use_sanity_criterion</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00062">tabletop_object_detection.h:62</a></div></div>
+<div class="ttc" id="structtableTop__object__detection__parameters_html_a0545fba1336d1a337d6693b4b85bac04"><div class="ttname"><a href="structtableTop__object__detection__parameters.html#a0545fba1336d1a337d6693b4b85bac04">tableTop_object_detection_parameters::zmin</a></div><div class="ttdeci">double zmin</div><div class="ttdef"><b>Definition:</b> <a href="tabletop__object__detection_8h_source.html#l00065">tabletop_object_detection.h:65</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Feb 19 2016 15:00:58 for tabletop_object_detection by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/trunk/doc/html/tabs.css b/trunk/doc/html/tabs.css
new file mode 100644
index 0000000000000000000000000000000000000000..9cf578f23a154ff026365d61ea59013ad431466b
--- /dev/null
+++ b/trunk/doc/html/tabs.css
@@ -0,0 +1,60 @@
+.tabs, .tabs2, .tabs3 {
+    background-image: url('tab_b.png');
+    width: 100%;
+    z-index: 101;
+    font-size: 13px;
+    font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+}
+
+.tabs2 {
+    font-size: 10px;
+}
+.tabs3 {
+    font-size: 9px;
+}
+
+.tablist {
+    margin: 0;
+    padding: 0;
+    display: table;
+}
+
+.tablist li {
+    float: left;
+    display: table-cell;
+    background-image: url('tab_b.png');
+    line-height: 36px;
+    list-style: none;
+}
+
+.tablist a {
+    display: block;
+    padding: 0 20px;
+    font-weight: bold;
+    background-image:url('tab_s.png');
+    background-repeat:no-repeat;
+    background-position:right;
+    color: #283A5D;
+    text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+    text-decoration: none;
+    outline: none;
+}
+
+.tabs3 .tablist a {
+    padding: 0 10px;
+}
+
+.tablist a:hover {
+    background-image: url('tab_h.png');
+    background-repeat:repeat-x;
+    color: #fff;
+    text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+    text-decoration: none;
+}
+
+.tablist li.current a {
+    background-image: url('tab_a.png');
+    background-repeat:repeat-x;
+    color: #fff;
+    text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}
diff --git a/trunk/doc/main.dox b/trunk/doc/main.dox
index dae29a6a84cd2c0b7fd7e9944bf9b4532f103ced..e7a5ef291b809df44687f6a9bc86f4d336e17b1d 100644
--- a/trunk/doc/main.dox
+++ b/trunk/doc/main.dox
@@ -2,9 +2,15 @@
 
   \section Introduction 
 
+  This library detects objects that stand on a table in a given point cloud. 
+  It also include a structure to define all the parameters used by the alrogithm in
+  a compact way. 
+
   \subsection Pre-Requisites
 
   This package requires of the following libraries and packages
+   - <A href="http://pointclouds.org/">PCL</A>, open project for 2D/3D image and point cloud processing.
+   - <A href="http://opencv.org/">OpenCV</A>,  open source computer vision and machine learning software library (this only for the example).
 	 - <A href="http://www.cmake.org">cmake</A>, a cross-platform build system.
 	 - <A href="http://www.doxygen.org">doxygen</a> and 
 	   <A href="http://www.graphviz.org">graphviz</a> to generate the documentation.
diff --git a/trunk/src/examples/tabletop_object_detection_test.cpp b/trunk/src/examples/tabletop_object_detection_test.cpp
index 6299e31c7737754ac8e37186ccdf050a8df2144a..4cfe3879a34b90e5756b9c9792226650bd65b90d 100644
--- a/trunk/src/examples/tabletop_object_detection_test.cpp
+++ b/trunk/src/examples/tabletop_object_detection_test.cpp
@@ -105,7 +105,7 @@ main (int argc, char ** argv)
   //----------------------------------------
   //TableTop_Object_Detection segLCCP;
   std::vector<Object> seg_objs; //("seg_objs" stands for "filtered objects") 
-  segLCCP.init(*cloud);
+  segLCCP.init(*cloud,opt);
   segLCCP.print_parameters();
   segLCCP.segment();
   seg_objs = segLCCP.get_segmented_objects();
@@ -175,7 +175,6 @@ main (int argc, char ** argv)
     int k = 0;
     uint32_t idx_v = 0; //index of the object to work with 
     cv::namedWindow("Segmented Results", CV_WINDOW_AUTOSIZE); //create a window with the name "MyWindow"
-    int n_obj = 0;
     while( (k != 27 && k != 1048603) && idx_v < seg_objs.size() && idx_v >= 0) //while it ESC is not pressed 
     {
       if(seg_objs[idx_v].object_cloud.points.size() > 400)
@@ -216,7 +215,7 @@ main (int argc, char ** argv)
         cv::imshow("Segmented Results", img); //display the image which is stored in the 'img' in the "MyWindow" window
 
         k = cv::waitKey(0);
-        std::cout << "Key code: " << k << std::endl;
+        std::cout << "Object: " << idx_v << std::endl;
       }
 
       if( k == 65363 || k == 0 || k == 1113939) // right arrow