Skip to content
Snippets Groups Projects
Commit 93c8821a authored by Sergi Pujol's avatar Sergi Pujol
Browse files

sceneExtract moved to .h file

parent 2992ef0f
No related branches found
No related tags found
1 merge request!4Resolve "Implementation of Falko lib"
...@@ -42,7 +42,7 @@ namespace laserscanutils{ ...@@ -42,7 +42,7 @@ namespace laserscanutils{
((*scanFALKO).fromRanges)(doubleRanges); ((*scanFALKO).fromRanges)(doubleRanges);
return scanFALKO; return scanFALKO;
} }
/*
template <typename D,typename Extr, typename M> template <typename D,typename Extr, typename M>
typename loopClosureFalko<D,Extr, M>::sceneFalkoBSCPtr loopClosureFalko<D,Extr, M>::extractScene(LaserScan &scan,LaserScanParams &scanParams){ typename loopClosureFalko<D,Extr, M>::sceneFalkoBSCPtr loopClosureFalko<D,Extr, M>::extractScene(LaserScan &scan,LaserScanParams &scanParams){
auto newScene=std::make_shared<sceneFalko<D>>(); auto newScene=std::make_shared<sceneFalko<D>>();
...@@ -54,6 +54,7 @@ namespace laserscanutils{ ...@@ -54,6 +54,7 @@ namespace laserscanutils{
extractor_.compute(*scanFALKO,newScene->keypointsList, newScene->descriptorsList); extractor_.compute(*scanFALKO,newScene->keypointsList, newScene->descriptorsList);
return newScene; return newScene;
} }
*/
/* /*
template <typename D,typename Extr, typename M> template <typename D,typename Extr, typename M>
typename loopClosureFalko<D,Extr, M>::matchLoopClosurePtr matchScene(std::shared_ptr<sceneFalko<D>> scene1,std::shared_ptr<sceneFalko<D>> scene2){ typename loopClosureFalko<D,Extr, M>::matchLoopClosurePtr matchScene(std::shared_ptr<sceneFalko<D>> scene1,std::shared_ptr<sceneFalko<D>> scene2){
......
...@@ -69,15 +69,23 @@ public: ...@@ -69,15 +69,23 @@ public:
**/ **/
//void findLoopClosure(std::list<sceneFalko>& scenes, const cornerScene newScene){} //void findLoopClosure(std::list<sceneFalko>& scenes, const cornerScene newScene){}
/** \brief update the scene struct with keypoints and descriptors /** \brief Create and update the scene struct with keypoints and descriptors
**/ **/
sceneFalkoBSCPtr extractScene(LaserScan &scan,LaserScanParams &scanParams) override; sceneFalkoBSCPtr extractScene(LaserScan &scan,LaserScanParams &scanParams) {
auto newScene=std::make_shared<sceneFalko<D>>();
auto scanFALKO =loopClosureFalko<D,Extr,M>::convert2LaserScanFALKO(scan, scanParams);
// Extract keypoints
extract((*scanFALKO), (newScene->keypointsList));
// Compute descriptors
extractor_.compute(*scanFALKO,newScene->keypointsList, newScene->descriptorsList);
return newScene;
}
/** \brief Convert scans from laserscanutils::LaserScan to falkolib::LaserScan object /** \brief Convert scans from laserscanutils::LaserScan to falkolib::LaserScan object
**/ **/
std::shared_ptr<falkolib::LaserScan> convert2LaserScanFALKO(LaserScan &scan,LaserScanParams &scanParams); std::shared_ptr<falkolib::LaserScan> convert2LaserScanFALKO(LaserScan &scan,LaserScanParams &scanParams);
/** \brief Convert scans from laserscanutils::LaserScan to falkolib::LaserScan object /** \brief Create and update a matchLoopClosure struct with the info that is produced when matching two given scenes
**/ **/
matchLoopClosurePtr matchScene(sceneFalkoBSCPtr scene1 ,sceneFalkoBSCPtr scene2){ matchLoopClosurePtr matchScene(sceneFalkoBSCPtr scene1 ,sceneFalkoBSCPtr scene2){
std::vector<std::pair<int, int> > assoNN; std::vector<std::pair<int, int> > assoNN;
...@@ -93,7 +101,6 @@ public: ...@@ -93,7 +101,6 @@ public:
new_match -> sceneTuple = std::make_tuple(scene1,scene2); new_match -> sceneTuple = std::make_tuple(scene1,scene2);
return new_match; return new_match;
} }
}; };
} /* namespace laserscanutils */ } /* namespace laserscanutils */
......
...@@ -44,7 +44,7 @@ TEST(loop_closure_falko, TestExtractSceneAndMatcher) ...@@ -44,7 +44,7 @@ TEST(loop_closure_falko, TestExtractSceneAndMatcher)
// PRINTF("All good at TestTest::DummyTestExample !\n"); // PRINTF("All good at TestTest::DummyTestExample !\n");
} }
TEST(loop_closure_falko, convert2laserScanFalko) TEST(loop_closure_falko2, convert2laserScanFalko)
{ {
int scanSize = 1440; int scanSize = 1440;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment