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

gtest_loop_closure_falko added but not implemented

parent e1c5b86d
No related branches found
No related tags found
1 merge request!4Resolve "Implementation of Falko lib"
...@@ -56,7 +56,7 @@ public: ...@@ -56,7 +56,7 @@ public:
/** \brief update the scene struct with keypoints and descriptors /** \brief update the scene struct with keypoints and descriptors
**/ **/
virtual void extractScene(LaserScan &scan,LaserScanParams &scanParams){} //virtual void extractScene(LaserScan &scan,LaserScanParams &scanParams){}
/** \brief Convert scans from laserscanutils::LaserScan to falkolib::LaserScan object /** \brief Convert scans from laserscanutils::LaserScan to falkolib::LaserScan object
**/ **/
......
...@@ -22,10 +22,11 @@ namespace laserscanutils{ ...@@ -22,10 +22,11 @@ namespace laserscanutils{
setGridSectors(16); setGridSectors(16);
// Matcher Extractor Parameters // Matcher Extractor Parameters
matcher.setDistanceThreshold(0.1); //matcher.setDistanceThreshold(0.1);
} }
// DESTRUCTOR // DESTRUCTOR
template <typename D,typename E, typename M> template <typename D,typename E, typename M>
loopClosureFalko<D,E,M>::~loopClosureFalko(){} loopClosureFalko<D,E,M>::~loopClosureFalko(){}
...@@ -35,9 +36,10 @@ namespace laserscanutils{ ...@@ -35,9 +36,10 @@ namespace laserscanutils{
auto scanFALKO =loopClosureFalko<D,E,M>::convert2LaserScanFALKO(scan, scanParams); auto scanFALKO =loopClosureFalko<D,E,M>::convert2LaserScanFALKO(scan, scanParams);
auto NewScene=std::make_shared<cornerScene<D>>(); auto NewScene=std::make_shared<cornerScene<D>>();
//((*NewScene).keypointsList)=((*scanFALKO).ranges);
return NewScene; return NewScene;
} }
...@@ -45,5 +47,6 @@ namespace laserscanutils{ ...@@ -45,5 +47,6 @@ namespace laserscanutils{
//void findLoopClosure(std::list<cornerScene>& scenes, const cornerScene newScene){} //void findLoopClosure(std::list<cornerScene>& scenes, const cornerScene newScene){}
//Explicitly compile all the templates
template class loopClosureFalko <bsc, bscExtractor, NNMatcher>;
} }
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
**************************/ **************************/
#include "laser_scan.h" #include "laser_scan.h"
#include "corner_scene.h" #include "corner_scene.h"
#include "loop_closure_base_2d.h"
/************************** /**************************
* Falko includes * * Falko includes *
...@@ -42,8 +43,9 @@ typedef falkolib::NNMatcher<falkolib::FALKO> NNMatcher; ...@@ -42,8 +43,9 @@ typedef falkolib::NNMatcher<falkolib::FALKO> NNMatcher;
/** \brief A base class for loop closure using falko library /** \brief A base class for loop closure using falko library
**/ **/
template <typename D, typename E, typename M> template <typename D, typename E, typename M>
class loopClosureFalko : public falkolib::FALKOExtractor{ class loopClosureFalko : public loopClosureBase2d, public falkolib::FALKOExtractor{
private: private:
public: public:
...@@ -63,8 +65,8 @@ public: ...@@ -63,8 +65,8 @@ public:
**/ **/
std::shared_ptr<cornerScene<D>> extractScene(LaserScan &scan,LaserScanParams &scanParams); std::shared_ptr<cornerScene<D>> extractScene(LaserScan &scan,LaserScanParams &scanParams);
E extractor; //E extractor;
M matcher; //M matcher;
}; };
} /* namespace laserscanutils */ } /* namespace laserscanutils */
......
#include "gtest/utils_gtest.h" #include "gtest/utils_gtest.h"
#include "testData2.h" #include "testData2.h"
#include "../src/loop_closure_base_2d.h" #include "../src/loop_closure_base_2d.h"
#include "../src/loop_closure_falko.h"
//#include "laser_scan_utils.h" //#include "laser_scan_utils.h"
using namespace laserscanutils; using namespace laserscanutils;
TEST(loop_closure_fako, extractScene)
{
int scanSize = 1440;
LaserScan scan;
LaserScanParams laserParams;
laserParams.angle_min_=0;
laserParams.angle_max_=2.0 * M_PI;
for (int i=0; i<scanSize; i++) {
scan.ranges_raw_.push_back(testRanges1[i]);
}
loopClosureFalko<bsc, bscExtractor, NNMatcher> LCFalko;
std::cout << "AAA" << std::endl;
/*
std::shared_ptr<falkolib::LaserScan> scanFALKO=LCBase.convert2LaserScanFALKO(scan, laserParams);
int firstPoint = ((*scanFALKO).ranges)[0];
EXPECT_FALSE(false);
ASSERT_TRUE(true);
ASSERT_EQ(firstPoint, 250);
*/
// PRINTF("All good at TestTest::DummyTestExample !\n");
}
TEST(loop_closure_base_2d, convert2laserScanFalko) TEST(loop_closure_base_2d, 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