Jafar
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
hough3d.hpp
00001 #ifndef HOUGH_3D_HPP
00002 #define HOUGH_3D_HPP
00003 
00004 
00005 
00006 #include "model3d/point3D.hpp"
00007 #include "model3d/plane3D.hpp"
00008 #include "model3d/point3DVar.hpp"
00009 #include "model3d/Image3D.hpp"
00010 
00011 namespace jafar {
00012   namespace model3d {
00013 
00014 
00015     void extractMainPlane3dHought(std::vector<Point3D>* pPoints, 
00016                                   float fRhoMax,
00017                                   float rhoStep,
00018                                   float angleStep,
00019                                   Plane3D& plane3D);
00020     
00021     // extract N planes (in maximum) which have the bigger score in
00022     // the vote phase
00023     // N will return also the actual number of found planes
00024     void extractPlanes3dHought(std::vector<Point3D>* pPoints,
00025                                float fRhoMax,
00026                                float rhoStep,
00027                                float angleStep,
00028                                float fThresholdOfMaxVote,
00029                                float fMinDistanceOfTowPlane,
00030                                float fMinCosDihedralAngle,
00031                                int &N,
00032                                std::vector<Plane3D>& vPlane3D,
00033                                std::vector<Point3D>& vP1,
00034                                std::vector<Point3D>& vP2,
00035                                std::vector<Point3D>& vP3,
00036                                std::vector<Point3D>& vP4);
00037     
00038     // using a Progressive Probabilistic Hough Transformation to
00039     // extract N planes (in maximum) which have the bigger score in
00040     // the vote phase
00041     // N will return also the actual number of found planes
00042     void ProgressiveProbabHough(std::vector<Point3D>* pPoints,
00043                                 float fRhoMax,
00044                                 float rhoStep,
00045                                 float angleStep,
00046                                 float fThresholdOfMaxVote,
00047                                 float fMinDistanceOfTowPlane,
00048                                 float fMinCosDihedralAngle,
00049                                 int &N,
00050                                 int minPointNumberThreshold,
00051                                 int minFinalVoteThreshold,
00052                                 std::vector<Plane3D>& vPlane3D,
00053                                 std::vector<Point3D>& vP1,
00054                                 std::vector<Point3D>& vP2,
00055                                 std::vector<Point3D>& vP3,
00056                                 std::vector<Point3D>& vP4);
00057     
00058     
00059 /*    void extractPointOfFloor(std::vector<Point3D>* pPoints,
00060                              std::list<int>* vOuterIndex,
00061                              std::list<int>* vInnerIndex,
00062                              Plane3D& plane3dFloor,
00063                              double delta);*/
00064     
00065     // for testing only
00066     void testing();
00067 
00068   } // namesopace model3d
00069 } // namespace jafar
00070 
00071 
00072 #endif // HOUGH_3D_HPP
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Wed Oct 15 2014 00:37:25 for Jafar by doxygen 1.7.6.1
LAAS-CNRS