mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-02 17:40:23 +08:00
OdometryOKVIS: added warning if config file doesn't exist, also replace ~ by home directory for convenience
This commit is contained in:
@@ -32,6 +32,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|||||||
#include "rtabmap/utilite/UTimer.h"
|
#include "rtabmap/utilite/UTimer.h"
|
||||||
#include "rtabmap/utilite/UStl.h"
|
#include "rtabmap/utilite/UStl.h"
|
||||||
#include "rtabmap/utilite/UThread.h"
|
#include "rtabmap/utilite/UThread.h"
|
||||||
|
#include "rtabmap/utilite/UFile.h"
|
||||||
|
#include "rtabmap/utilite/UDirectory.h"
|
||||||
#include <opencv2/imgproc/types_c.h>
|
#include <opencv2/imgproc/types_c.h>
|
||||||
|
|
||||||
#ifdef RTABMAP_OKVIS
|
#ifdef RTABMAP_OKVIS
|
||||||
@@ -140,9 +142,10 @@ OdometryOkvis::OdometryOkvis(const ParametersMap & parameters) :
|
|||||||
{
|
{
|
||||||
#ifdef RTABMAP_OKVIS
|
#ifdef RTABMAP_OKVIS
|
||||||
Parameters::parse(parameters, Parameters::kOdomOKVISConfigPath(), configFilename_);
|
Parameters::parse(parameters, Parameters::kOdomOKVISConfigPath(), configFilename_);
|
||||||
if(configFilename_.empty())
|
configFilename_ = uReplaceChar(configFilename_, '~', UDirectory::homeDir());
|
||||||
|
if(configFilename_.empty() || !UFile::exists(configFilename_))
|
||||||
{
|
{
|
||||||
UERROR("OKVIS config file is empty (%s)!", Parameters::kOdomOKVISConfigPath().c_str());
|
UERROR("OKVIS config file is empty or doesn't exist (%s)!", Parameters::kOdomOKVISConfigPath().c_str());
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -283,14 +286,14 @@ Transform OdometryOkvis::computeTransform(
|
|||||||
}
|
}
|
||||||
|
|
||||||
okvis::VioParameters parameters;
|
okvis::VioParameters parameters;
|
||||||
if(configFilename_.empty())
|
if(configFilename_.empty() || !UFile::exists(configFilename_))
|
||||||
{
|
{
|
||||||
UERROR("OKVIS config file is empty (%s)!", Parameters::kOdomOKVISConfigPath().c_str());
|
UERROR("OKVIS config file is empty or doesn't exist (%s)!", Parameters::kOdomOKVISConfigPath().c_str());
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
okvis::VioParametersReader vio_parameters_reader(configFilename_);
|
okvis::VioParametersReader vio_parameters_reader(uReplaceChar(configFilename_, '~', UDirectory::homeDir()));
|
||||||
vio_parameters_reader.getParameters(parameters);
|
vio_parameters_reader.getParameters(parameters);
|
||||||
if(parameters.nCameraSystem.numCameras() > 0)
|
if(parameters.nCameraSystem.numCameras() > 0)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user