diff --git a/corelib/include/rtabmap/core/OccupancyGrid.h b/corelib/include/rtabmap/core/OccupancyGrid.h index 664bd3d5..5b312ab8 100644 --- a/corelib/include/rtabmap/core/OccupancyGrid.h +++ b/corelib/include/rtabmap/core/OccupancyGrid.h @@ -47,6 +47,7 @@ public: float getMinMapSize() const {return minMapSize_;} bool isGridFromDepth() const {return occupancyFromCloud_;} bool isFullUpdate() const {return fullUpdate_;} + bool isMapFrameProjection() const {return projMapFrame_;} const std::map & addedNodes() const {return addedNodes_;} int cacheSize() const {return (int)cache_.size();} diff --git a/corelib/src/CameraStereo.cpp b/corelib/src/CameraStereo.cpp index 7249075b..cd5edc18 100644 --- a/corelib/src/CameraStereo.cpp +++ b/corelib/src/CameraStereo.cpp @@ -860,18 +860,27 @@ bool CameraStereoZed::init(const std::string & calibrationFolder, const std::str param.depth_minimum_distance=-1; param.camera_disable_self_calib=!selfCalibration_; + sl::ERROR_CODE r = sl::ERROR_CODE::SUCCESS; if(src_ == CameraVideo::kVideoFile) { UINFO("svo file = %s", svoFilePath_.c_str()); zed_ = new sl::Camera(); // Use in SVO playback mode param.svo_input_filename=svoFilePath_.c_str(); - zed_->open(param); + r = zed_->open(param); } else { UINFO("Resolution=%d imagerate=%f device=%d", resolution_, getImageRate(), usbDevice_); zed_ = new sl::Camera(); // Use in Live Mode - zed_->open(param); + r = zed_->open(param); + } + + if(r!=sl::ERROR_CODE::SUCCESS) + { + UERROR("Camera initialization failed: \"%s\"", errorCode2str(r).c_str()); + delete zed_; + zed_ = 0; + return false; }