2026-08-06 22:56:24 +00:00
<!-- HTML header for doxygen 1.9.8-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" lang = "en-US" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" />
< meta http-equiv = "X-UA-Compatible" content = "IE=11" />
< meta name = "generator" content = "Doxygen 1.9.8" />
< meta name = "viewport" content = "width=device-width, initial-scale=1" />
< title > RTAB-Map: clams::FrameProjector Class Reference</ title >
< link href = "tabs.css" rel = "stylesheet" type = "text/css" />
< script type = "text/javascript" src = "jquery.js" ></ script >
< script type = "text/javascript" src = "dynsections.js" ></ script >
< link href = "navtree.css" rel = "stylesheet" type = "text/css" />
< script type = "text/javascript" src = "resize.js" ></ script >
< script type = "text/javascript" src = "navtreedata.js" ></ script >
< script type = "text/javascript" src = "navtree.js" ></ script >
< link href = "search/search.css" rel = "stylesheet" type = "text/css" />
< script type = "text/javascript" src = "search/searchdata.js" ></ script >
< script type = "text/javascript" src = "search/search.js" ></ script >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" />
< link href = "doxygen-awesome.css" rel = "stylesheet" type = "text/css" />
< link href = "custom.css" rel = "stylesheet" type = "text/css" />
< script type = "text/javascript" > window . RTABMAP_DOC_ROOT = "" ;</ script >
< script type = "text/javascript" src = "../versions.js" ></ script >
< script type = "text/javascript" src = "version-switcher.js" ></ script >
< script type = "text/javascript" src = "doxygen-awesome-darkmode-toggle.js" ></ script >
< script type = "text/javascript" > DoxygenAwesomeDarkModeToggle . init ();</ script >
</ head >
< body >
< div id = "top" > <!-- do not remove this div, it is closed by doxygen! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr id = "projectrow" >
< td id = "projectalign" >
2026-09-28 16:36:22 +00:00
< div id = "projectname" > RTAB-Map< span id = "projectnumber" >   0.23.13</ span >
2026-08-06 22:56:24 +00:00
</ div >
< div id = "projectbrief" > Real-Time Appearance-Based Mapping</ div >
</ td >
</ tr >
</ tbody >
</ table >
</ div >
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox ( "searchBox" , "search/" , '.html' );
/* @license-end */
</ script >
< script type = "text/javascript" src = "menudata.js" ></ script >
< script type = "text/javascript" src = "menu.js" ></ script >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$ ( function () {
initMenu ( '' , true , false , 'search.php' , 'Search' );
$ ( document ). ready ( function () { init_search (); });
});
/* @license-end */
</ script >
< div id = "main-nav" ></ div >
</ div > <!-- top -->
< div id = "side-nav" class = "ui-resizable side-nav-resizable" >
< div id = "nav-tree" >
< div id = "nav-tree-contents" >
< div id = "nav-sync" class = "sync" ></ div >
</ div >
</ div >
< div id = "splitbar" style = "-moz-user-select:none;"
class = "ui-resizable-handle" >
</ div >
</ div >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$ ( document ). ready ( function (){ initNavTree ( 'classclams_1_1FrameProjector.html' , '' ); initResizable (); });
/* @license-end */
</ script >
< div id = "doc-content" >
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover = "return searchBox.OnSearchSelectShow()"
onmouseout = "return searchBox.OnSearchSelectHide()"
onkeydown = "return searchBox.OnSearchSelectKey(event)" >
</ div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< div id = "MSearchResults" >
< div class = "SRPage" >
< div id = "SRIndex" >
< div id = "SRResults" ></ div >
< div class = "SRStatus" id = "Loading" > Loading...</ div >
< div class = "SRStatus" id = "Searching" > Searching...</ div >
< div class = "SRStatus" id = "NoMatches" > No Matches</ div >
</ div >
</ div >
</ div >
</ div >
< div class = "header" >
< div class = "summary" >
< a href = "#pub-types" > Public Types</ a > |
< a href = "#pub-methods" > Public Member Functions</ a > |
< a href = "#pro-methods" > Protected Member Functions</ a > |
< a href = "classclams_1_1FrameProjector-members.html" > List of all members</ a > </ div >
< div class = "headertitle" >< div class = "title" > clams::FrameProjector Class Reference</ div ></ div >
</ div > <!--header-->
< div class = "contents" >
< p >< code > #include < < a class = "el" href = "frame__projector_8h_source.html" > frame_projector.h</ a > > </ code ></ p >
< table class = "memberdecls" >
< tr class = "heading" >< td colspan = "2" >< h2 class = "groupheader" >< a id = "pub-types" name = "pub-types" ></ a >
Public Types</ h2 ></ td ></ tr >
< tr class = "memitem:a16e9cf95972f5c84af1682f75fedd005" id = "r_a16e9cf95972f5c84af1682f75fedd005" >< td class = "memItemLeft" align = "right" valign = "top" > typedef std::vector< std::vector< std::vector< double > > >  </ td >< td class = "memItemRight" valign = "bottom" >< a class = "el" href = "classclams_1_1FrameProjector.html#a16e9cf95972f5c84af1682f75fedd005" > RangeIndex</ a ></ td ></ tr >
< tr class = "separator:a16e9cf95972f5c84af1682f75fedd005" >< td class = "memSeparator" colspan = "2" >   </ td ></ tr >
</ table >< table class = "memberdecls" >
< tr class = "heading" >< td colspan = "2" >< h2 class = "groupheader" >< a id = "pub-methods" name = "pub-methods" ></ a >
Public Member Functions</ h2 ></ td ></ tr >
< tr class = "memitem:aa7f474fb4842c2f7930acb9f1b07f8bc" id = "r_aa7f474fb4842c2f7930acb9f1b07f8bc" >< td class = "memItemLeft" align = "right" valign = "top" >< a id = "aa7f474fb4842c2f7930acb9f1b07f8bc" name = "aa7f474fb4842c2f7930acb9f1b07f8bc" ></ a >
  </ td >< td class = "memItemRight" valign = "bottom" >< b > FrameProjector</ b > (const < a class = "el" href = "classrtabmap_1_1CameraModel.html" > rtabmap::CameraModel</ a > & model)</ td ></ tr >
< tr class = "separator:aa7f474fb4842c2f7930acb9f1b07f8bc" >< td class = "memSeparator" colspan = "2" >   </ td ></ tr >
< tr class = "memitem:ad0b1c866e8bfce2f7a4dba9e9540dd15" id = "r_ad0b1c866e8bfce2f7a4dba9e9540dd15" >< td class = "memItemLeft" align = "right" valign = "top" >< a id = "ad0b1c866e8bfce2f7a4dba9e9540dd15" name = "ad0b1c866e8bfce2f7a4dba9e9540dd15" ></ a >
RangeIndex  </ td >< td class = "memItemRight" valign = "bottom" >< b > cloudToRangeIndex</ b > (const pcl::PointCloud< pcl::PointXYZ > ::Ptr & pcd) const</ td ></ tr >
< tr class = "separator:ad0b1c866e8bfce2f7a4dba9e9540dd15" >< td class = "memSeparator" colspan = "2" >   </ td ></ tr >
< tr class = "memitem:a26c74a7a7f6f6e9c2e18d6a38693699c" id = "r_a26c74a7a7f6f6e9c2e18d6a38693699c" >< td class = "memItemLeft" align = "right" valign = "top" > cv::Mat  </ td >< td class = "memItemRight" valign = "bottom" >< a class = "el" href = "classclams_1_1FrameProjector.html#a26c74a7a7f6f6e9c2e18d6a38693699c" > estimateMapDepth</ a > (const pcl::PointCloud< pcl::PointXYZ > ::Ptr & map, const < a class = "el" href = "classrtabmap_1_1Transform.html" > rtabmap::Transform</ a > & transform, const cv::Mat & measurement, double coneRadius=0.02, double coneStdevThresh=0.03) const</ td ></ tr >
< tr class = "separator:a26c74a7a7f6f6e9c2e18d6a38693699c" >< td class = "memSeparator" colspan = "2" >   </ td ></ tr >
< tr class = "memitem:ab3547d615ac67279f44faf0752909337" id = "r_ab3547d615ac67279f44faf0752909337" >< td class = "memItemLeft" align = "right" valign = "top" >< a id = "ab3547d615ac67279f44faf0752909337" name = "ab3547d615ac67279f44faf0752909337" ></ a >
pcl::PointXYZ  </ td >< td class = "memItemRight" valign = "bottom" >< b > project</ b > (const < a class = "el" href = "classclams_1_1ProjectivePoint.html" > ProjectivePoint</ a > & ppt) const</ td ></ tr >
< tr class = "separator:ab3547d615ac67279f44faf0752909337" >< td class = "memSeparator" colspan = "2" >   </ td ></ tr >
< tr class = "memitem:a409fe7bcf0d873c06110d30d795baf89" id = "r_a409fe7bcf0d873c06110d30d795baf89" >< td class = "memItemLeft" align = "right" valign = "top" >< a id = "a409fe7bcf0d873c06110d30d795baf89" name = "a409fe7bcf0d873c06110d30d795baf89" ></ a >
< a class = "el" href = "classclams_1_1ProjectivePoint.html" > ProjectivePoint</ a >   </ td >< td class = "memItemRight" valign = "bottom" >< b > reproject</ b > (const pcl::PointXYZ & pt) const</ td ></ tr >
< tr class = "separator:a409fe7bcf0d873c06110d30d795baf89" >< td class = "memSeparator" colspan = "2" >   </ td ></ tr >
</ table >< table class = "memberdecls" >
< tr class = "heading" >< td colspan = "2" >< h2 class = "groupheader" >< a id = "pro-methods" name = "pro-methods" ></ a >
Protected Member Functions</ h2 ></ td ></ tr >
< tr class = "memitem:aee478040703319cc4696894e773b8e19" id = "r_aee478040703319cc4696894e773b8e19" >< td class = "memItemLeft" align = "right" valign = "top" >< a id = "aee478040703319cc4696894e773b8e19" name = "aee478040703319cc4696894e773b8e19" ></ a >
bool  </ td >< td class = "memItemRight" valign = "bottom" >< b > coneFit</ b > (const cv::Size & imageSize, const RangeIndex & rindex, int uc, int vc, double radius, double measurement_depth, double *mean, double *stdev) const</ td ></ tr >
< tr class = "separator:aee478040703319cc4696894e773b8e19" >< td class = "memSeparator" colspan = "2" >   </ td ></ tr >
</ table >
< a name = "details" id = "details" ></ a >< h2 class = "groupheader" > Detailed Description</ h2 >
< div class = "textblock" >< p > This is essentially a pinhole camera model for an RGBD sensor, with some extra functions added on for use during calibration. </ p >
< p class = "definition" > Definition at line < a class = "el" href = "frame__projector_8h_source.html#l00062" > 62</ a > of file < a class = "el" href = "frame__projector_8h_source.html" > frame_projector.h</ a > .</ p >
</ div >< h2 class = "groupheader" > Member Typedef Documentation</ h2 >
< a id = "a16e9cf95972f5c84af1682f75fedd005" name = "a16e9cf95972f5c84af1682f75fedd005" ></ a >
< h2 class = "memtitle" >< span class = "permalink" >< a href = "#a16e9cf95972f5c84af1682f75fedd005" > ◆  </ a ></ span > RangeIndex</ h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > typedef std::vector< std::vector< std::vector< double> > > clams::FrameProjector::RangeIndex</ td >
</ tr >
</ table >
</ div >< div class = "memdoc" >
< p class = "definition" > Definition at line < a class = "el" href = "frame__projector_8h_source.html#l00066" > 66</ a > of file < a class = "el" href = "frame__projector_8h_source.html" > frame_projector.h</ a > .</ p >
</ div >
</ div >
< h2 class = "groupheader" > Member Function Documentation</ h2 >
< a id = "a26c74a7a7f6f6e9c2e18d6a38693699c" name = "a26c74a7a7f6f6e9c2e18d6a38693699c" ></ a >
< h2 class = "memtitle" >< span class = "permalink" >< a href = "#a26c74a7a7f6f6e9c2e18d6a38693699c" > ◆  </ a ></ span > estimateMapDepth()</ h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > cv::Mat clams::FrameProjector::estimateMapDepth </ td >
< td > (</ td >
< td class = "paramtype" > const pcl::PointCloud< pcl::PointXYZ > ::Ptr &  </ td >
< td class = "paramname" >< em > map</ em > , </ td >
</ tr >
< tr >
< td class = "paramkey" ></ td >
< td ></ td >
< td class = "paramtype" > const < a class = "el" href = "classrtabmap_1_1Transform.html" > rtabmap::Transform</ a > &  </ td >
< td class = "paramname" >< em > transform</ em > , </ td >
</ tr >
< tr >
< td class = "paramkey" ></ td >
< td ></ td >
< td class = "paramtype" > const cv::Mat &  </ td >
< td class = "paramname" >< em > measurement</ em > , </ td >
</ tr >
< tr >
< td class = "paramkey" ></ td >
< td ></ td >
< td class = "paramtype" > double  </ td >
< td class = "paramname" >< em > coneRadius</ em > = < code > 0.02</ code > , </ td >
</ tr >
< tr >
< td class = "paramkey" ></ td >
< td ></ td >
< td class = "paramtype" > double  </ td >
< td class = "paramname" >< em > coneStdevThresh</ em > = < code > 0.03</ code >   </ td >
</ tr >
< tr >
< td ></ td >
< td > )</ td >
< td ></ td >< td > const</ td >
</ tr >
</ table >
</ div >< div class = "memdoc" >
< p > transform is applied to the map, then projected into a depth index. The best depth estimate from the map corresponding to the measurement depth frame will be returned. </ p >
</ div >
</ div >
< hr /> The documentation for this class was generated from the following file:< ul >
< li > corelib/include/rtabmap/core/clams/< a class = "el" href = "frame__projector_8h_source.html" > frame_projector.h</ a ></ li >
</ ul >
</ div > <!-- contents -->
</ div > <!-- doc-content -->
<!-- start footer part -->
< div id = "nav-path" class = "navpath" > <!-- id is needed for treeview function! -->
< ul >
< li class = "navelem" >< b > clams</ b ></ li >< li class = "navelem" >< a class = "el" href = "classclams_1_1FrameProjector.html" > FrameProjector</ a ></ li >
< li class = "footer" > Generated by < a href = "https://www.doxygen.org/index.html" >< img class = "footer" src = "doxygen.svg" width = "104" height = "31" alt = "doxygen" /></ a > 1.9.8 </ li >
</ ul >
</ div >
</ body >
</ html >