Refactoring RTABMapConfig.cmake with targets (#904)

* Config: Using cmake targets

* fixed RTABMAP_DEPRECATED build error

* fixed melodic build

* cleanup

* Fixed qhull exported library error

* Update svg depend private

* removed g2o from public interface

* Fixed Windows with external project

* removed some required dep

* Fixed nsis error (also fixed unspecified components)

* updated workflow rules
This commit is contained in:
matlabbe
2023-02-12 16:18:01 -08:00
committed by GitHub
parent 437ed09335
commit 89e3e10d89
191 changed files with 1150 additions and 2199 deletions

View File

@@ -28,7 +28,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef UTIL2D_H_
#define UTIL2D_H_
#include <rtabmap/core/RtabmapExp.h>
#include <rtabmap/core/rtabmap_core_export.h>
#include <opencv2/core/core.hpp>
#include <rtabmap/core/Transform.h>
@@ -42,11 +42,11 @@ namespace util2d
{
// SSD: Sum of Squared Differences
float RTABMAP_EXP ssd(const cv::Mat & windowLeft, const cv::Mat & windowRight);
float RTABMAP_CORE_EXPORT ssd(const cv::Mat & windowLeft, const cv::Mat & windowRight);
// SAD: Sum of Absolute intensity Differences
float RTABMAP_EXP sad(const cv::Mat & windowLeft, const cv::Mat & windowRight);
float RTABMAP_CORE_EXPORT sad(const cv::Mat & windowLeft, const cv::Mat & windowRight);
std::vector<cv::Point2f> RTABMAP_EXP calcStereoCorrespondences(
std::vector<cv::Point2f> RTABMAP_CORE_EXPORT calcStereoCorrespondences(
const cv::Mat & leftImage,
const cv::Mat & rightImage,
const std::vector<cv::Point2f> & leftCorners,
@@ -59,7 +59,7 @@ std::vector<cv::Point2f> RTABMAP_EXP calcStereoCorrespondences(
bool ssdApproach = true); // SSD by default, otherwise it is SAD
// exactly as cv::calcOpticalFlowPyrLK but it should be called with pyramid (from cv::buildOpticalFlowPyramid()) and delta drops the y error.
void RTABMAP_EXP calcOpticalFlowPyrLKStereo( cv::InputArray _prevImg, cv::InputArray _nextImg,
void RTABMAP_CORE_EXPORT calcOpticalFlowPyrLKStereo( cv::InputArray _prevImg, cv::InputArray _nextImg,
cv::InputArray _prevPts, cv::InputOutputArray _nextPts,
cv::OutputArray _status, cv::OutputArray _err,
cv::Size winSize = cv::Size(15,3), int maxLevel = 3,
@@ -67,16 +67,16 @@ void RTABMAP_EXP calcOpticalFlowPyrLKStereo( cv::InputArray _prevImg, cv::InputA
int flags = 0, double minEigThreshold = 1e-4 );
cv::Mat RTABMAP_EXP disparityFromStereoImages(
cv::Mat RTABMAP_CORE_EXPORT disparityFromStereoImages(
const cv::Mat & leftImage,
const cv::Mat & rightImage,
const ParametersMap & parameters = ParametersMap());
cv::Mat RTABMAP_EXP depthFromDisparity(const cv::Mat & disparity,
cv::Mat RTABMAP_CORE_EXPORT depthFromDisparity(const cv::Mat & disparity,
float fx, float baseline,
int type = CV_32FC1); // CV_32FC1 or CV_16UC1
cv::Mat RTABMAP_EXP depthFromStereoImages(
cv::Mat RTABMAP_CORE_EXPORT depthFromStereoImages(
const cv::Mat & leftImage,
const cv::Mat & rightImage,
const std::vector<cv::Point2f> & leftCorners,
@@ -87,63 +87,63 @@ cv::Mat RTABMAP_EXP depthFromStereoImages(
int flowIterations = 20,
double flowEps = 0.02);
cv::Mat RTABMAP_EXP disparityFromStereoCorrespondences(
cv::Mat RTABMAP_CORE_EXPORT disparityFromStereoCorrespondences(
const cv::Size & disparitySize,
const std::vector<cv::Point2f> & leftCorners,
const std::vector<cv::Point2f> & rightCorners,
const std::vector<unsigned char> & mask);
cv::Mat RTABMAP_EXP depthFromStereoCorrespondences(
cv::Mat RTABMAP_CORE_EXPORT depthFromStereoCorrespondences(
const cv::Mat & leftImage,
const std::vector<cv::Point2f> & leftCorners,
const std::vector<cv::Point2f> & rightCorners,
const std::vector<unsigned char> & mask,
float fx, float baseline);
cv::Mat RTABMAP_EXP cvtDepthFromFloat(const cv::Mat & depth32F);
cv::Mat RTABMAP_EXP cvtDepthToFloat(const cv::Mat & depth16U);
cv::Mat RTABMAP_CORE_EXPORT cvtDepthFromFloat(const cv::Mat & depth32F);
cv::Mat RTABMAP_CORE_EXPORT cvtDepthToFloat(const cv::Mat & depth16U);
float RTABMAP_EXP getDepth(
float RTABMAP_CORE_EXPORT getDepth(
const cv::Mat & depthImage,
float x, float y,
bool smoothing,
float depthErrorRatio = 0.02f, //ratio
bool estWithNeighborsIfNull = false);
cv::Rect RTABMAP_EXP computeRoi(const cv::Mat & image, const std::string & roiRatios);
cv::Rect RTABMAP_EXP computeRoi(const cv::Size & imageSize, const std::string & roiRatios);
cv::Rect RTABMAP_EXP computeRoi(const cv::Mat & image, const std::vector<float> & roiRatios);
cv::Rect RTABMAP_EXP computeRoi(const cv::Size & imageSize, const std::vector<float> & roiRatios);
cv::Rect RTABMAP_CORE_EXPORT computeRoi(const cv::Mat & image, const std::string & roiRatios);
cv::Rect RTABMAP_CORE_EXPORT computeRoi(const cv::Size & imageSize, const std::string & roiRatios);
cv::Rect RTABMAP_CORE_EXPORT computeRoi(const cv::Mat & image, const std::vector<float> & roiRatios);
cv::Rect RTABMAP_CORE_EXPORT computeRoi(const cv::Size & imageSize, const std::vector<float> & roiRatios);
cv::Mat RTABMAP_EXP decimate(const cv::Mat & image, int d);
cv::Mat RTABMAP_EXP interpolate(const cv::Mat & image, int factor, float depthErrorRatio = 0.02f);
cv::Mat RTABMAP_CORE_EXPORT decimate(const cv::Mat & image, int d);
cv::Mat RTABMAP_CORE_EXPORT interpolate(const cv::Mat & image, int factor, float depthErrorRatio = 0.02f);
// Registration Depth to RGB (return registered depth image)
cv::Mat RTABMAP_EXP registerDepth(
cv::Mat RTABMAP_CORE_EXPORT registerDepth(
const cv::Mat & depth,
const cv::Mat & depthK,
const cv::Size & colorSize,
const cv::Mat & colorK,
const rtabmap::Transform & transform);
cv::Mat RTABMAP_EXP fillDepthHoles(
cv::Mat RTABMAP_CORE_EXPORT fillDepthHoles(
const cv::Mat & depth,
int maximumHoleSize = 1,
float errorRatio = 0.02f);
void RTABMAP_EXP fillRegisteredDepthHoles(
void RTABMAP_CORE_EXPORT fillRegisteredDepthHoles(
cv::Mat & depthRegistered,
bool vertical,
bool horizontal,
bool fillDoubleHoles = false);
cv::Mat RTABMAP_EXP fastBilateralFiltering(
cv::Mat RTABMAP_CORE_EXPORT fastBilateralFiltering(
const cv::Mat & depth,
float sigmaS = 15.0f,
float sigmaR = 0.05f,
bool earlyDivision = false);
cv::Mat RTABMAP_EXP brightnessAndContrastAuto(
cv::Mat RTABMAP_CORE_EXPORT brightnessAndContrastAuto(
const cv::Mat & src,
const cv::Mat & mask,
float clipLowHistPercent=0,
@@ -151,10 +151,10 @@ cv::Mat RTABMAP_EXP brightnessAndContrastAuto(
float * alphaOut = 0,
float * betaOut = 0);
cv::Mat RTABMAP_EXP exposureFusion(
cv::Mat RTABMAP_CORE_EXPORT exposureFusion(
const std::vector<cv::Mat> & images);
void RTABMAP_EXP HSVtoRGB( float *r, float *g, float *b, float h, float s, float v );
void RTABMAP_CORE_EXPORT HSVtoRGB( float *r, float *g, float *b, float h, float s, float v );
} // namespace util3d
} // namespace rtabmap