<divclass="line"><aid="l00005"name="l00005"></a><spanclass="lineno"> 5</span><spanclass="comment">Redistribution and use in source and binary forms, with or without</span></div>
<divclass="line"><aid="l00006"name="l00006"></a><spanclass="lineno"> 6</span><spanclass="comment">modification, are permitted provided that the following conditions are met:</span></div>
<divclass="line"><aid="l00007"name="l00007"></a><spanclass="lineno"> 7</span><spanclass="comment"> * Redistributions of source code must retain the above copyright</span></div>
<divclass="line"><aid="l00008"name="l00008"></a><spanclass="lineno"> 8</span><spanclass="comment"> notice, this list of conditions and the following disclaimer.</span></div>
<divclass="line"><aid="l00009"name="l00009"></a><spanclass="lineno"> 9</span><spanclass="comment"> * Redistributions in binary form must reproduce the above copyright</span></div>
<divclass="line"><aid="l00010"name="l00010"></a><spanclass="lineno"> 10</span><spanclass="comment"> notice, this list of conditions and the following disclaimer in the</span></div>
<divclass="line"><aid="l00011"name="l00011"></a><spanclass="lineno"> 11</span><spanclass="comment"> documentation and/or other materials provided with the distribution.</span></div>
<divclass="line"><aid="l00012"name="l00012"></a><spanclass="lineno"> 12</span><spanclass="comment"> * Neither the name of the Universite de Sherbrooke nor the</span></div>
<divclass="line"><aid="l00013"name="l00013"></a><spanclass="lineno"> 13</span><spanclass="comment"> names of its contributors may be used to endorse or promote products</span></div>
<divclass="line"><aid="l00014"name="l00014"></a><spanclass="lineno"> 14</span><spanclass="comment"> derived from this software without specific prior written permission.</span></div>
<divclass="line"><aid="l00016"name="l00016"></a><spanclass="lineno"> 16</span><spanclass="comment">THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND</span></div>
<divclass="line"><aid="l00017"name="l00017"></a><spanclass="lineno"> 17</span><spanclass="comment">ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED</span></div>
<divclass="line"><aid="l00018"name="l00018"></a><spanclass="lineno"> 18</span><spanclass="comment">WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE</span></div>
<divclass="line"><aid="l00019"name="l00019"></a><spanclass="lineno"> 19</span><spanclass="comment">DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY</span></div>
<divclass="line"><aid="l00020"name="l00020"></a><spanclass="lineno"> 20</span><spanclass="comment">DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES</span></div>
<divclass="line"><aid="l00021"name="l00021"></a><spanclass="lineno"> 21</span><spanclass="comment">(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;</span></div>
<divclass="line"><aid="l00022"name="l00022"></a><spanclass="lineno"> 22</span><spanclass="comment">LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND</span></div>
<divclass="line"><aid="l00023"name="l00023"></a><spanclass="lineno"> 23</span><spanclass="comment">ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
<divclass="line"><aid="l00024"name="l00024"></a><spanclass="lineno"> 24</span><spanclass="comment">(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS</span></div>
<divclass="line"><aid="l00025"name="l00025"></a><spanclass="lineno"> 25</span><spanclass="comment">SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
<divclass="line"><aid="l00239"name="l00239"></a><spanclass="lineno"> 239</span><spanclass="keywordtype">int</span> type = CV_32FC1); <spanclass="comment">// CV_32FC1 or CV_16UC1</span></div>
<divclass="ttc"id="aclassrtabmap_1_1CameraModel_html"><divclass="ttname"><ahref="classrtabmap_1_1CameraModel.html">rtabmap::CameraModel</a></div><divclass="ttdoc">Represents a pinhole camera model containing intrinsic and extrinsic parameters, used for projection,...</div><divclass="ttdef"><b>Definition</b><ahref="CameraModel_8h_source.html#l00052">CameraModel.h:53</a></div></div>
<divclass="ttc"id="aclassrtabmap_1_1Transform_html"><divclass="ttname"><ahref="classrtabmap_1_1Transform.html">rtabmap::Transform</a></div><divclass="ttdoc">Represents a 3D rigid body transformation (rotation + translation).</div><divclass="ttdef"><b>Definition</b><ahref="Transform_8h_source.html#l00052">Transform.h:53</a></div></div>
<divclass="ttc"id="agroup__RoiComputation_html_ga79d3f93673fb236980f0be532695f478"><divclass="ttname"><ahref="group__RoiComputation.html#ga79d3f93673fb236980f0be532695f478">rtabmap::util2d::computeRoi</a></div><divclass="ttdeci">cv::Rect RTABMAP_CORE_EXPORT computeRoi(const cv::Mat &image, const std::string &roiRatios)</div><divclass="ttdoc">Computes a region of interest (ROI) in the image using string-defined ratios.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a076914fde23d1323fccf71a794b9bc51"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a076914fde23d1323fccf71a794b9bc51">rtabmap::util2d::fastBilateralFiltering</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT fastBilateralFiltering(const cv::Mat &depth, float sigmaS=15.0f, float sigmaR=0.05f, bool earlyDivision=false)</div><divclass="ttdoc">Applies a 2D fast bilateral filter to a depth image.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a0b545a9f852684afb0a6d8f835f9eaf2"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a0b545a9f852684afb0a6d8f835f9eaf2">rtabmap::util2d::decimate</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT decimate(const cv::Mat &image, int d)</div><divclass="ttdoc">Downsamples an image by a given decimation factor.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a0e4631bed561b3a694a1a65853221f75"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a0e4631bed561b3a694a1a65853221f75">rtabmap::util2d::cvtDepthToFloat</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT cvtDepthToFloat(const cv::Mat &depth16U)</div><divclass="ttdoc">Converts a 16-bit unsigned depth image (in millimeters) to a 32-bit float depth image (in meters).</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a110359c4884579e1c7b68d8baa7acb6c"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a110359c4884579e1c7b68d8baa7acb6c">rtabmap::util2d::depthFromDisparity</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT depthFromDisparity(const cv::Mat &disparity, float fx, float baseline, int type=CV_32FC1)</div><divclass="ttdoc">Converts a disparity map to a depth map using stereo camera parameters.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a1577494ad9730181d5b768ca8237d5dd"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a1577494ad9730181d5b768ca8237d5dd">rtabmap::util2d::rotateImagesUpsideUpIfNecessary</a></div><divclass="ttdeci">bool RTABMAP_CORE_EXPORT rotateImagesUpsideUpIfNecessary(CameraModel &model, cv::Mat &rgb, cv::Mat &depth)</div><divclass="ttdoc">Rotates the input RGB and depth images to make them appear upright based on the camera's roll angle.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a179e07ca5bc9581ff4782ae8f9d33521"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a179e07ca5bc9581ff4782ae8f9d33521">rtabmap::util2d::ssd</a></div><divclass="ttdeci">float RTABMAP_CORE_EXPORT ssd(const cv::Mat &windowLeft, const cv::Mat &windowRight)</div><divclass="ttdoc">Computes the Sum of Squared Differences (SSD) between two image patches.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a3d01284751a6b46770a28a7f63576600"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a3d01284751a6b46770a28a7f63576600">rtabmap::util2d::calcOpticalFlowPyrLKStereo</a></div><divclass="ttdeci">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, cv::TermCriteria criteria=cv::TermCriteria(cv::TermCriteria::COUNT+cv::TermCriteria::EPS, 30, 0.01), int flags=0, double minEigThreshold=1e-4)</div><divclass="ttdoc">Computes sparse optical flow using a pyramidal Lucas-Kanade method constrained to the x-axis.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a48a7e15282f392e77561dd96ed3320f9"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a48a7e15282f392e77561dd96ed3320f9">rtabmap::util2d::registerDepth</a></div><divclass="ttdeci">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)</div><divclass="ttdoc">Registers a depth image to a different camera frame (typically RGB).</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a48b07b02efba21a914db10e832589aba"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a48b07b02efba21a914db10e832589aba">rtabmap::util2d::getDepth</a></div><divclass="ttdeci">float RTABMAP_CORE_EXPORT getDepth(const cv::Mat &depthImage, float x, float y, bool smoothing, float depthErrorRatio=0.02f, bool estWithNeighborsIfNull=false)</div><divclass="ttdoc">Retrieves a depth value from a depth image at a subpixel coordinate.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a4cd865b8edc489f950b0c1b5e1a0c992"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a4cd865b8edc489f950b0c1b5e1a0c992">rtabmap::util2d::sad</a></div><divclass="ttdeci">float RTABMAP_CORE_EXPORT sad(const cv::Mat &windowLeft, const cv::Mat &windowRight)</div><divclass="ttdoc">Computes the Sum of Absolute Differences (SAD) between two image patches.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a4f10f8038c62a97d3a79bd2dc5bf2c58"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a4f10f8038c62a97d3a79bd2dc5bf2c58">rtabmap::util2d::disparityFromStereoCorrespondences</a></div><divclass="ttdeci">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)</div><divclass="ttdoc">Computes a disparity map from stereo correspondences between two images.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a53e2ae078c4c5c997fda9f1b6d1dda33"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a53e2ae078c4c5c997fda9f1b6d1dda33">rtabmap::util2d::calcStereoCorrespondences</a></div><divclass="ttdeci">std::vector< cv::Point2f > RTABMAP_CORE_EXPORT calcStereoCorrespondences(const cv::Mat &leftImage, const cv::Mat &rightImage, const std::vector< cv::Point2f >&leftCorners, std::vector< unsigned char >&status, cv::Size winSize=cv::Size(6, 3), int maxLevel=3, int iterations=5, float minDisparity=0.0f, float maxDisparity=64.0f, bool ssdApproach=true)</div><divclass="ttdoc">Computes stereo correspondences between left and right images using a pyramidal window-based matching...</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a6740b13198a2c437ab51d8e0503f2d33"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a6740b13198a2c437ab51d8e0503f2d33">rtabmap::util2d::cvtDepthFromFloat</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT cvtDepthFromFloat(const cv::Mat &depth32F)</div><divclass="ttdoc">Converts a 32-bit float depth image (in meters) to a 16-bit unsigned depth image (in millimeters).</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_a7788d4dabf084959aa69162d5dbb2d2e"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#a7788d4dabf084959aa69162d5dbb2d2e">rtabmap::util2d::depthBleedingFiltering</a></div><divclass="ttdeci">void RTABMAP_CORE_EXPORT depthBleedingFiltering(cv::Mat &depth, float maxDepthError)</div><divclass="ttdoc">Filters out depth bleeding artifacts in a depth image.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_aa6957971e17f27bb066efe036d80fd46"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#aa6957971e17f27bb066efe036d80fd46">rtabmap::util2d::SSC</a></div><divclass="ttdeci">std::vector< int > RTABMAP_CORE_EXPORT SSC(const std::vector< cv::KeyPoint >&keypoints, int maxKeypoints, float tolerance, int cols, int rows, const std::vector< int >&indx={})</div><divclass="ttdoc">Applies the SSC (Suppression via Square Covering) algorithm to spatially select keypoints.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_aacf89454b054d86b53a8038c8a404b50"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#aacf89454b054d86b53a8038c8a404b50">rtabmap::util2d::depthFromStereoImages</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT depthFromStereoImages(const cv::Mat &leftImage, const cv::Mat &rightImage, const std::vector< cv::Point2f >&leftCorners, float fx, float baseline, int flowWinSize=9, int flowMaxLevel=4, int flowIterations=20, double flowEps=0.02)</div><divclass="ttdoc">Computes a depth map from stereo image pairs using optical flow tracking.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_aafa9a426c8e7dd0359adf40e1b45ee1c"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#aafa9a426c8e7dd0359adf40e1b45ee1c">rtabmap::util2d::NMS</a></div><divclass="ttdeci">void RTABMAP_CORE_EXPORT NMS(const std::vector< cv::KeyPoint >&ptsIn, const cv::Mat &descriptorsIn, std::vector< cv::KeyPoint >&ptsOut, cv::Mat &descriptorsOut, int dist_thresh, int img_width, int img_height)</div><divclass="ttdoc">Applies Non-Maximum Suppression (NMS) to a set of keypoints.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_ac29ac5b8bed26a5299d378708170dd11"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#ac29ac5b8bed26a5299d378708170dd11">rtabmap::util2d::HSVtoRGB</a></div><divclass="ttdeci">void RTABMAP_CORE_EXPORT HSVtoRGB(float *r, float *g, float *b, float h, float s, float v)</div><divclass="ttdoc">Converts a color from HSV (Hue, Saturation, Value) to RGB.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_ac38e8ed586d24c4b9fe72d64afeb9583"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#ac38e8ed586d24c4b9fe72d64afeb9583">rtabmap::util2d::exposureFusion</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT exposureFusion(const std::vector< cv::Mat >&images)</div><divclass="ttdoc">Performs exposure fusion on a set of input images.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_ad7ea8d1905c7143d376c57c9e22dcea5"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#ad7ea8d1905c7143d376c57c9e22dcea5">rtabmap::util2d::disparityFromStereoImages</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT disparityFromStereoImages(const cv::Mat &leftImage, const cv::Mat &rightImage, const ParametersMap &parameters=ParametersMap())</div><divclass="ttdoc">Computes the disparity map from a pair of stereo images.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_aeb3dee2cf6484f0b224d4687899cb004"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#aeb3dee2cf6484f0b224d4687899cb004">rtabmap::util2d::fillDepthHoles</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT fillDepthHoles(const cv::Mat &depth, int maximumHoleSize=1, float errorRatio=0.02f)</div><divclass="ttdoc">Fills holes in the depth image using linear interpolation.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_afc241016af8396edf5228dbe9e80ee8d"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#afc241016af8396edf5228dbe9e80ee8d">rtabmap::util2d::interpolate</a></div><divclass="ttdeci">cv::Mat RTABMAP_CORE_EXPORT interpolate(const cv::Mat &image, int factor, float depthErrorRatio=0.02f)</div><divclass="ttdoc">Upsamples a depth image using bilinear interpolation with depth consistency check.</div></div>
<divclass="ttc"id="anamespacertabmap_1_1util2d_html_afc6c9b3442c64ef2061365ead3923228"><divclass="ttname"><ahref="namespacertabmap_1_1util2d.html#afc6c9b3442c64ef2061365ead3923228">rtabmap::util2d::fillRegisteredDepthHoles</a></div><divclass="ttdeci">void RTABMAP_CORE_EXPORT fillRegisteredDepthHoles(cv::Mat &depthRegistered, bool vertical, bool horizontal, bool fillDoubleHoles=false)</div><divclass="ttdoc">Fill holes in a registered depth image using linear interpolation.</div></div>
<divclass="ttc"id="anamespacertabmap_html_ad08b6f1796a27dd7316c99c385e2cc55"><divclass="ttname"><ahref="namespacertabmap.html#ad08b6f1796a27dd7316c99c385e2cc55">rtabmap::ParametersMap</a></div><divclass="ttdeci">std::map< std::string, std::string > ParametersMap</div><divclass="ttdoc">Parameter keys mapped to their values, as used by every configurable class (see Parameters).</div><divclass="ttdef"><b>Definition</b><ahref="Parameters_8h_source.html#l00044">Parameters.h:44</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<divid="nav-path"class="navpath"><!-- id is needed for treeview function! -->
<liclass="footer">Generated by <ahref="https://www.doxygen.org/index.html"><imgclass="footer"src="doxygen.svg"width="104"height="31"alt="doxygen"/></a> 1.9.8 </li>