[{"data":1,"prerenderedAt":1881},["ShallowReactive",2],{"wiki-page-\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0500-terrain-analysis-ext":3,"wiki-doc-items-2026-09-20-dao-hang":1644,"wiki:author-members":1869},{"id":4,"title":5,"authors":6,"body":8,"chapterDepth":193,"chapterOrder":1631,"date":1632,"description":186,"docKey":1633,"docRoot":1634,"docTitle":1635,"extension":1636,"isWikiDoc":1637,"isWikiIndex":1638,"meta":1639,"navigation":1637,"path":1640,"seo":1641,"stem":1642,"wikiDepth":193,"__hash__":1643},"wiki\u002Fwiki\u002F2026-09-20-导航\u002F0500-0500-terrain_analysis_ext.md","terrain_analysis_ext（扩展远场地形与近远场结果合并）",[7],"董佳辉",{"type":9,"value":10,"toc":1625},"minimark",[11,15,20,34,165,168,171,176,180,395,975,978,983,1078,1095,1108,1112,1115,1153,1156,1163,1170,1176,1180,1187,1201,1208,1214,1218,1225,1228,1235,1239,1254,1257,1332,1335,1345,1349,1361,1364,1386,1389,1393,1399,1413,1420,1427,1431,1434,1449,1452,1556,1563,1573,1579,1602,1621],[12,13,5],"h2",{"id":14},"terrain_analysis_ext扩展远场地形与近远场结果合并",[16,17,19],"h3",{"id":18},"实车先看坡道落差与近远场衔接","实车先看：坡道、落差与近远场衔接",[21,22,23,24,33],"p",{},"这个节点给全局代价地图提供地形点。",[25,26,27,28,32],"strong",{},"当前4 m内借用 ",[29,30,31],"code",{},"terrain_analysis"," 的结果，4 m外才输出自己计算的结果。"," 因此，改本块的地面估计或高度筛选参数，不会同时改变近场；4 m是两种结果的交接距离，不是雷达最大量程。",[35,36,37,53],"table",{},[38,39,40],"thead",{},[41,42,43,47,50],"tr",{},[44,45,46],"th",{},"实车上可能看到的现象",[44,48,49],{},"先看哪些参数或条件",[44,51,52],{},"怎样理解",[54,55,56,77,94,108,126,143],"tbody",{},[41,57,58,62,74],{},[59,60,61],"td",{},"上坡或下坡远处的地面消失",[59,63,64,67,68,67,71],{},[29,65,66],{},"lowerBoundZ","、",[29,69,70],{},"upperBoundZ",[29,72,73],{},"disRatioZ",[59,75,76],{},"它们决定相对输入雷达位置，向上、向下能保留多大的高度范围；本节点的范围会随水平距离扩大",[41,78,79,82,91],{},[59,80,81],{},"正常坡面、下坡被画成障碍",[59,83,84,67,87,90],{},[29,85,86],{},"useSorting",[29,88,89],{},"quantileZ","，以及下游10 cm障碍门槛",[59,92,93],{},"每一小片区域先选地面高度，再计算点离这个高度有多远；本节点远场对高低两侧都取绝对值，正常坡的较低侧也可能过门槛",[41,95,96,99,105],{},[59,97,98],{},"同一障碍或坡面在4 m附近表现突然变化",[59,100,101,104],{},[29,102,103],{},"localTerrainMapRadius"," 与两个节点的规则差异",[59,106,107],{},"近场与远场的地面格子、点密度、高度上限和负高度差处理不同；要检查交接处，不能只调一边",[41,109,110,113,119],{},[59,111,112],{},"想排除顶棚、判断地面是否与车旁连得上",[59,114,115,118],{},[29,116,117],{},"checkTerrainConn"," 及其三个配套参数",[59,120,121,122,125],{},"当前 False，专门的连接检查和顶棚筛选没有执行；",[29,123,124],{},"ceilingFilteringThre=2.0"," 此时不起作用",[41,127,128,131,140],{},[59,129,130],{},"人或障碍离开后，旧点没有在0.2秒消失",[59,132,133,136,137],{},[29,134,135],{},"decayTime"," 与两项 ",[29,138,139],{},"voxel…UpdateThre",[59,141,142],{},"旧点只在缓存块更新时检查年龄；0.2秒不是准时删除的倒计时",[41,144,145,152,158],{},[59,146,147,148,151],{},"以为 ",[29,149,150],{},"clearingDis=20.0"," 会自动清掉20 m外的点",[59,153,154,155],{},"清图事件与 ",[29,156,157],{},"clearingDis",[59,159,160,161,164],{},"它仅在外部触发时清除20 m",[25,162,163],{},"内","的自身缓存，平时不按这个半径清图",[21,166,167],{},"这些参数帮助系统看清地形，不能给出实车允许的坡度或台阶高度。车辆爬坡能力还取决于底盘、重心、附着力和实际测量；目前没有坡道或实物验证。",[16,169,170],{"id":170},"参数",[172,173,175],"h4",{"id":174},"ros__parametersros节点参数","ros__parameters（ROS节点参数）",[177,178,179],"h5",{"id":179},"参数表",[181,182,187],"pre",{"className":183,"code":184,"language":185,"meta":186,"style":186},"language-yaml shiki shiki-themes github-light github-dark","terrain_analysis_ext:\n  ros__parameters:\n    scanVoxelSize: 0.1\n    decayTime: 0.2\n    noDecayDis: 0.0\n    clearingDis: 20.0\n    useSorting: true\n    quantileZ: 0.2\n    vehicleHeight: 1.0\n    voxelPointUpdateThre: 100\n    voxelTimeUpdateThre: 2.0\n    lowerBoundZ: -1.5\n    upperBoundZ: 0.5\n    disRatioZ: 0.2\n    checkTerrainConn: False\n    terrainUnderVehicle: -0.75\n    terrainConnThre: 0.5\n    ceilingFilteringThre: 2.0\n    localTerrainMapRadius: 4.0\n","yaml","",[29,188,189,202,210,223,234,245,256,267,277,288,299,310,321,332,342,353,364,374,384],{"__ignoreMap":186},[190,191,194,198],"span",{"class":192,"line":193},"line",1,[190,195,197],{"class":196},"s9eBZ","terrain_analysis_ext",[190,199,201],{"class":200},"sVt8B",":\n",[190,203,205,208],{"class":192,"line":204},2,[190,206,207],{"class":196},"  ros__parameters",[190,209,201],{"class":200},[190,211,213,216,219],{"class":192,"line":212},3,[190,214,215],{"class":196},"    scanVoxelSize",[190,217,218],{"class":200},": ",[190,220,222],{"class":221},"sj4cs","0.1\n",[190,224,226,229,231],{"class":192,"line":225},4,[190,227,228],{"class":196},"    decayTime",[190,230,218],{"class":200},[190,232,233],{"class":221},"0.2\n",[190,235,237,240,242],{"class":192,"line":236},5,[190,238,239],{"class":196},"    noDecayDis",[190,241,218],{"class":200},[190,243,244],{"class":221},"0.0\n",[190,246,248,251,253],{"class":192,"line":247},6,[190,249,250],{"class":196},"    clearingDis",[190,252,218],{"class":200},[190,254,255],{"class":221},"20.0\n",[190,257,259,262,264],{"class":192,"line":258},7,[190,260,261],{"class":196},"    useSorting",[190,263,218],{"class":200},[190,265,266],{"class":221},"true\n",[190,268,270,273,275],{"class":192,"line":269},8,[190,271,272],{"class":196},"    quantileZ",[190,274,218],{"class":200},[190,276,233],{"class":221},[190,278,280,283,285],{"class":192,"line":279},9,[190,281,282],{"class":196},"    vehicleHeight",[190,284,218],{"class":200},[190,286,287],{"class":221},"1.0\n",[190,289,291,294,296],{"class":192,"line":290},10,[190,292,293],{"class":196},"    voxelPointUpdateThre",[190,295,218],{"class":200},[190,297,298],{"class":221},"100\n",[190,300,302,305,307],{"class":192,"line":301},11,[190,303,304],{"class":196},"    voxelTimeUpdateThre",[190,306,218],{"class":200},[190,308,309],{"class":221},"2.0\n",[190,311,313,316,318],{"class":192,"line":312},12,[190,314,315],{"class":196},"    lowerBoundZ",[190,317,218],{"class":200},[190,319,320],{"class":221},"-1.5\n",[190,322,324,327,329],{"class":192,"line":323},13,[190,325,326],{"class":196},"    upperBoundZ",[190,328,218],{"class":200},[190,330,331],{"class":221},"0.5\n",[190,333,335,338,340],{"class":192,"line":334},14,[190,336,337],{"class":196},"    disRatioZ",[190,339,218],{"class":200},[190,341,233],{"class":221},[190,343,345,348,350],{"class":192,"line":344},15,[190,346,347],{"class":196},"    checkTerrainConn",[190,349,218],{"class":200},[190,351,352],{"class":221},"False\n",[190,354,356,359,361],{"class":192,"line":355},16,[190,357,358],{"class":196},"    terrainUnderVehicle",[190,360,218],{"class":200},[190,362,363],{"class":221},"-0.75\n",[190,365,367,370,372],{"class":192,"line":366},17,[190,368,369],{"class":196},"    terrainConnThre",[190,371,218],{"class":200},[190,373,331],{"class":221},[190,375,377,380,382],{"class":192,"line":376},18,[190,378,379],{"class":196},"    ceilingFilteringThre",[190,381,218],{"class":200},[190,383,309],{"class":221},[190,385,387,390,392],{"class":192,"line":386},19,[190,388,389],{"class":196},"    localTerrainMapRadius",[190,391,218],{"class":200},[190,393,394],{"class":221},"4.0\n",[35,396,397,425],{},[38,398,399],{},[41,400,401,404,407,410,413,416,419,422],{},[44,402,403],{},"参数名",[44,405,406],{},"当前值",[44,408,409],{},"单位",[44,411,412],{},"实车处理建议",[44,414,415],{},"作用",[44,417,418],{},"调大效果",[44,420,421],{},"调小效果",[44,423,424],{},"生效条件／备注",[54,426,427,459,489,525,559,592,625,657,688,718,752,786,815,842,878,908,938],{},[41,428,429,434,439,442,447,450,453,456],{},[59,430,431],{},[29,432,433],{},"scanVoxelSize",[59,435,436],{},[29,437,438],{},"0.1",[59,440,441],{},"m，三维体素边长",[59,443,444],{},[25,445,446],{},"实物运行时重点观察，有问题再针对性调整",[59,448,449],{},"合并小空间内的点，减少自身累计点云数量",[59,451,452],{},"点通常更少，负担下降，细杆、小障碍的细节可能减少",[59,454,455],{},"点通常更多，细节增加，负担上升",[59,457,458],{},"应为正数；不改变写死的0.4 m地面格子；不对借入的近场点再次降采样",[41,460,461,465,470,473,477,480,483,486],{},[59,462,463],{},[29,464,135],{},[59,466,467],{},[29,468,469],{},"0.2",[59,471,472],{},"s，输入点云时间",[59,474,475],{},[25,476,446],{},[59,478,479],{},"自身缓存更新时删除过期代表点",[59,481,482],{},"历史保留更久，地面样本更多，旧障碍也可能残留更久",[59,484,485],{},"历史更短，但远处点少时更容易缺数据",[59,487,488],{},"仅缓存块更新时检查；受更新门槛与免衰减区影响；不检查借入近场点的年龄",[41,490,491,496,501,504,509,512,515,518],{},[59,492,493],{},[29,494,495],{},"noDecayDis",[59,497,498],{},[29,499,500],{},"0.0",[59,502,503],{},"m，水平距离",[59,505,506],{},[25,507,508],{},"根据实际功能需求开启或设置",[59,510,511],{},"指定自身缓存中不受年龄限制的区域",[59,513,514],{},"免衰减区域扩大，近距离旧点保留更多",[59,516,517],{},"区域缩小；0没有免衰减区",[59,519,520,521,524],{},"条件为 ",[29,522,523],{},"d \u003C noDecayDis","；不能替代清图，不改变近场节点的历史规则",[41,526,527,531,536,539,543,546,549,552],{},[59,528,529],{},[29,530,157],{},[59,532,533],{},[29,534,535],{},"20.0",[59,537,538],{},"m，水平清图半径",[59,540,541],{},[25,542,508],{},[59,544,545],{},"清图事件发生时删除半径内的自身缓存点",[59,547,548],{},"单次清图范围扩大",[59,550,551],{},"单次清图范围缩小",[59,553,554,555,558],{},"平时不执行；清的是半径内；",[29,556,557],{},"cloud_clearing"," 消息会覆盖此变量；不清借入的近场结果",[41,560,561,565,570,573,578,581,584,586],{},[59,562,563],{},[29,564,86],{},[59,566,567],{},[29,568,569],{},"true",[59,571,572],{},"不适用，布尔",[59,574,575],{},[25,576,577],{},"通常保持当前值，不作为优先调试项",[59,579,580],{},"True 选排序分位高度作地面，False 选最低高度",[59,582,583],{},"不适用",[59,585,583],{},[59,587,588,589,591],{},"不是上坡开关；True 时使用 ",[29,590,89],{},"；远场高差始终取绝对值",[41,593,594,598,602,605,609,612,615,618],{},[59,595,596],{},[29,597,89],{},[59,599,600],{},[29,601,469],{},[59,603,604],{},"无量纲，分位比例",[59,606,607],{},[25,608,446],{},[59,610,611],{},"在排序后的高度中选地面样本",[59,613,614],{},"地面估计通常升高，较高点的高差减小、较低点的高差可能增大",[59,616,617],{},"地面估计通常降低，较高点的高差增大、较低点的高差可能减小",[59,619,620,621,624],{},"仅 ",[29,622,623],{},"useSorting=True"," 时生效；宜在0～1内设置；不能保证调大就减少坡面障碍",[41,626,627,632,637,640,645,648,651,654],{},[59,628,629],{},[29,630,631],{},"vehicleHeight",[59,633,634],{},[29,635,636],{},"1.0",[59,638,639],{},"m，相对估计地面的绝对高度差",[59,641,642],{},[25,643,644],{},"上实物前必须核对并正确配置",[59,646,647],{},"保留自身远场中高度差小于1.0 m的点",[59,649,650],{},"保留更多大高差点，也可能引入悬空结构",[59,652,653],{},"更多大高差点被删，可能漏掉只在高处有回波的障碍",[59,655,656],{},"不是整车模型高度或可爬台阶高度；不改变借入近场的0.5 m上限",[41,658,659,664,669,672,676,679,682,685],{},[59,660,661],{},[29,662,663],{},"voxelPointUpdateThre",[59,665,666],{},[29,667,668],{},"100",[59,670,671],{},"点／缓存块，新入点计数",[59,673,674],{},[25,675,577],{},[59,677,678],{},"新点达到门槛时更新该缓存块",[59,680,681],{},"由点数触发的更新通常减少",[59,683,684],{},"由点数触发的更新通常增加",[59,686,687],{},"与时间门槛为“或”；不是地面最少样本数或发布频率",[41,689,690,695,700,702,706,709,712,715],{},[59,691,692],{},[29,693,694],{},"voxelTimeUpdateThre",[59,696,697],{},[29,698,699],{},"2.0",[59,701,472],{},[59,703,704],{},[25,705,577],{},[59,707,708],{},"距该缓存块上次更新足够久时触发更新",[59,710,711],{},"低点密度块可能更久才清掉旧点",[59,713,714],{},"低点密度块更新更及时，处理次数增加",[59,716,717],{},"仍需新扫描驱动处理；点数达到门槛或清图可提前触发；不等于每2秒发布一次",[41,719,720,724,729,732,736,739,742,745],{},[59,721,722],{},[29,723,66],{},[59,725,726],{},[29,727,728],{},"-1.5",[59,730,731],{},"m，相对输入位姿的 z 下界",[59,733,734],{},[25,735,644],{},[59,737,738],{},"限制向下保留的高度范围",[59,740,741],{},"数值向上移，如-1.5改-1.0：更多低处地面、下坡点被删",[59,743,744],{},"数值向下移，如-1.5改-2.0：保留更多低处点，也可能引入无关低层",[59,746,747,748,751],{},"实际下界为 ",[29,749,750],{},"lowerBoundZ−disRatioZ×d","；须核对雷达到地面高度及坐标方向",[41,753,754,758,763,766,770,773,776,779],{},[59,755,756],{},[29,757,70],{},[59,759,760],{},[29,761,762],{},"0.5",[59,764,765],{},"m，相对输入位姿的 z 上界",[59,767,768],{},[25,769,644],{},[59,771,772],{},"限制向上保留的高度范围",[59,774,775],{},"保留更多高处坡面，也可能引入顶棚等结构",[59,777,778],{},"更多高处点被删，上坡地面可能被截掉",[59,780,781,782,785],{},"实际上界为 ",[29,783,784],{},"upperBoundZ+disRatioZ×d","；不是障碍相对地面的高度上限",[41,787,788,792,796,799,803,806,809,812],{},[59,789,790],{},[29,791,73],{},[59,793,794],{},[29,795,469],{},[59,797,798],{},"无量纲，m\u002Fm",[59,800,801],{},[25,802,446],{},[59,804,805],{},"按水平距离同时放宽上下高度界",[59,807,808],{},"远处允许更大上下落差，也会接纳更多无关高度点",[59,810,811],{},"远处高度范围收窄，坡面可能缺失",[59,813,814],{},"本节点从入缓存、地面估计到自身远场输出都使用扩展范围；与近场节点不同；不是最大安全坡度",[41,816,817,821,826,828,832,835,837,839],{},[59,818,819],{},[29,820,117],{},[59,822,823],{},[29,824,825],{},"False",[59,827,572],{},[59,829,830],{},[25,831,508],{},[59,833,834],{},"是否只保留与中心估计地面连接上的自身远场点",[59,836,583],{},[59,838,583],{},[59,840,841],{},"当前关闭；开启会使用下面三项；不对借入近场结果重新检查",[41,843,844,849,854,857,862,865,868,871],{},[59,845,846],{},[29,847,848],{},"terrainUnderVehicle",[59,850,851],{},[29,852,853],{},"-0.75",[59,855,856],{},"m，相对输入位姿的假定地面 z 偏置",[59,858,859],{},[25,860,861],{},"当前运行不使用这个参数，暂不调整",[59,863,864],{},"开启连接检查且中心缺地面样本时，补一个起始地面高度",[59,866,867],{},"启用后：假定地面更高、更接近输入原点",[59,869,870],{},"启用后：假定地面更低",[59,872,873,874,877],{},"当前 ",[29,875,876],{},"checkTerrainConn=False","；有中心样本时也不用；若启用，须测量原点到地面的实际关系",[41,879,880,885,889,892,896,899,902,905],{},[59,881,882],{},[29,883,884],{},"terrainConnThre",[59,886,887],{},[29,888,762],{},[59,890,891],{},"m，两片估计地面的高度差",[59,893,894],{},[25,895,861],{},[59,897,898],{},"开启连接检查后，判断候选地面能否接上",[59,900,901],{},"启用后：更容易连接，也可能跨过真实台阶或缺口",[59,903,904],{},"启用后：更容易断开，正常坡面也可能被排除",[59,906,907],{},"当前关闭；判断高度差严格小于门槛；0.5不表示车能爬50 cm台阶",[41,909,910,915,919,922,926,929,932,935],{},[59,911,912],{},[29,913,914],{},"ceilingFilteringThre",[59,916,917],{},[29,918,699],{},[59,920,921],{},"m，两片估计地面的绝对高度差",[59,923,924],{},[25,925,861],{},[59,927,928],{},"开启连接检查后，标记高度相差过大的候选区域",[59,930,931],{},"启用后：较少候选被标记排除",[59,933,934],{},"启用后：较多候选被标记排除，也可能误排低处地面",[59,936,937],{},"当前关闭；用绝对差，较低地面也可能命中；不是车顶净空或距雷达2 m的顶棚线",[41,939,940,944,949,952,956,959,962,965],{},[59,941,942],{},[29,943,103],{},[59,945,946],{},[29,947,948],{},"4.0",[59,950,951],{},"m，相对输入位置的水平距离",[59,953,954],{},[25,955,446],{},[59,957,958],{},"划分借入近场结果与自身远场结果",[59,960,961],{},"更多范围使用近场结果，需要近场有足够覆盖",[59,963,964],{},"更近处开始使用自身较粗的结果",[59,966,967,970,971,974],{},[29,968,969],{},"d≤4 m"," 借入、",[29,972,973],{},"d>4 m"," 自算；近场缺点时不会用自身结果补洞；重点观察交接处",[177,976,977],{"id":977},"参数详解",[979,980,982],"h6",{"id":981},"输入输出和高度基准","输入、输出和高度基准",[35,984,985,998],{},[38,986,987],{},[41,988,989,992,995],{},[44,990,991],{},"方向",[44,993,994],{},"话题",[44,996,997],{},"本节点怎样使用",[54,999,1000,1017,1032,1044,1058],{},[41,1001,1002,1005,1010],{},[59,1003,1004],{},"订阅",[59,1006,1007],{},[29,1008,1009],{},"lidar_odometry",[59,1011,1012,1013,1016],{},"取最近收到的位置作为距离与高度的基准；预期是 ",[29,1014,1015],{},"odom"," 中的雷达位姿",[41,1018,1019,1021,1026],{},[59,1020,1004],{},[59,1022,1023],{},[29,1024,1025],{},"registered_scan",[59,1027,1028,1029,1031],{},"输入 ",[29,1030,1015],{}," 中的配准点云，用于累计、选地面和计算远场高差",[41,1033,1034,1036,1041],{},[59,1035,1004],{},[59,1037,1038],{},[29,1039,1040],{},"terrain_map",[59,1042,1043],{},"保存近场节点最近一帧结果，取其中4 m内的点直接合入输出",[41,1045,1046,1048,1055],{},[59,1047,1004],{},[59,1049,1050,67,1053],{},[29,1051,1052],{},"joy",[29,1054,557],{},[59,1056,1057],{},"触发自身缓存清图；后者还提供清图半径",[41,1059,1060,1063,1068],{},[59,1061,1062],{},"发布",[59,1064,1065],{},[29,1066,1067],{},"terrain_map_ext",[59,1069,1070,1071,1073,1074,1077],{},"合并结果，参考系写死为 ",[29,1072,1015],{},"，时间标为当前输入扫描时间；自身远场的 ",[29,1075,1076],{},"intensity"," 是绝对高度差，单位 m",[21,1079,1080,1081,1083,1084,1087,1088,67,1091,1094],{},"自身远场保留点的 x、y、z，不把点移到地面上；改写的是 ",[29,1082,1076],{},"，它已经不是雷达反射强度。当前全局代价地图的 ",[29,1085,1086],{},"IntensityVoxelLayer"," 使用本输出，并以 ",[29,1089,1090],{},"min_obstacle_intensity=0.1",[29,1092,1093],{},"max_obstacle_intensity=2.0"," 筛选高度差。达到10 cm只是满足其中一项条件，还要通过坐标高度、距离等筛选才可能成为障碍。",[21,1096,1097,1098,1100,1101,1103,1104,1107],{},"下文的“高于／低于雷达”都指点的 ",[29,1099,1015],{}," z 减去输入位姿 z；距离指 ",[29,1102,1015],{}," 的水平距离。源码没有在这里查询雷达→底盘 TF，也没有按云台姿态重新定义竖直方向。上游 ",[29,1105,1106],{},"loam_interface"," 把输入当雷达位姿，而 Point-LIO 原始输出是内部 IMU 位姿；此前记录的 IMU→雷达转换缺口仍会影响本块的高度基准，不能靠扩大高度范围代替修正接口。",[979,1109,1111],{"id":1110},"lowerboundzupperboundz-与-disratioz能不能看到远处上下坡","lowerBoundZ、upperBoundZ 与 disRatioZ：能不能看到远处上下坡",[21,1113,1114],{},"这三项先决定坡点有没有资格留下，再谈坡会不会被当成障碍。当前上下边界相对输入位姿，并随距离扩大：",[35,1116,1117,1127],{},[38,1118,1119],{},[41,1120,1121,1124],{},[44,1122,1123],{},"点离输入位置的水平距离",[44,1125,1126],{},"允许的相对高度范围，不含边界",[54,1128,1129,1137,1145],{},[41,1130,1131,1134],{},[59,1132,1133],{},"0 m",[59,1135,1136],{},"-1.5～+0.5 m",[41,1138,1139,1142],{},[59,1140,1141],{},"5 m",[59,1143,1144],{},"-2.5～+1.5 m",[41,1146,1147,1150],{},[59,1148,1149],{},"10 m",[59,1151,1152],{},"-3.5～+2.5 m",[21,1154,1155],{},"比如5 m外的下坡点比输入原点低2.0 m，能通过当前窗口；低3.0 m则会被删。5 m外的上坡点高1.0 m能通过，高2.0 m则会被删。这里只举高度筛选，仍需满足后面的输出条件。",[21,1157,1158,1159,1162],{},"所以：",[25,1160,1161],{},"下坡地面缺失，检查下界；上坡地面缺失，检查上界；越远越缺，连同距离放宽比例一起检查。"," 下界的“调大”是数值变大，例如-1.5到-1.0，反而缩小向下保留范围。",[21,1164,1165,1166,1169],{},"与上一块不同，扩展节点在入缓存、缓存更新、选地面和自身远场输出时，都使用这个随距离扩大的窗口；没有在最终输出时退回固定上下界。",[29,1167,1168],{},"disRatioZ=0.2"," 表示每增加1 m水平距离，上下各放宽0.2 m，不代表允许的坡度或坡面识别结果。",[21,1171,1172,1173,1175],{},"上实物前应先核对原点离地高度、",[29,1174,1015],{}," 竖直方向和位姿转换。窗口过窄会丢坡面，过宽会引入顶棚或其他楼层；是否成为障碍还取决于局部地面估计及后续筛选。当前不据这些数值直接修改重力方向或安装外参。",[979,1177,1179],{"id":1178},"usesorting-与-quantilez正常坡为什么也可能像障碍","useSorting 与 quantileZ：正常坡为什么也可能像障碍",[21,1181,1182,1183,1186],{},"扩展节点把水平地面分成写死的0.4 m格子，每格收集附近高度，选一个“这片区域的地面高度”。当前先排序，再取 ",[29,1184,1185],{},"floor(0.2×样本数)"," 处的高度；10个样本取从低到高第3个。False 则取最低高度。格子和邻域内有坡、障碍或离群点时，这个代表高度未必等于每个点下面的真实地面。",[21,1188,1189,1200],{},[25,1190,1191,1192,1195,1196,1199],{},"本节点自己的远场始终计算 ",[29,1193,1194],{},"abs(点高度−估计地面高度)","，没有 ",[29,1197,1198],{},"considerDrop"," 开关。"," 一个点比估计地面高15 cm，或低15 cm，都会输出0.15 m的高度差；满足其他条件时，两者都可能达到全局代价地图的10 cm障碍门槛。",[21,1202,1203,1204,1207],{},"这就是下坡尤其要看的地方：正常坡的较低侧，可能只是低于这一小片的代表地面，并不是真正的坑。反过来，真正坑洼只有被雷达看到且留下有效回波，才可能通过这个高度差表现出来；没有回波的断崖不因此自动得到可靠识别。扩展节点也没有近场那种 ",[29,1205,1206],{},"noDataObstacle"," 合成障碍功能，没有点的区域如何影响规划，还取决于下游的未知区域设置。",[21,1209,1210,1211,1213],{},"把 ",[29,1212,89],{}," 调大，通常会抬高代表地面：较高点的高差可能减小，较低点的高差却可能增大。因此不能照搬“调大就更容易上下坡”。应一起看正常坡面、小台阶和低障碍，确认地面估计是否偏高或偏低。这里没有正负高差相加抵消，也没有允许上坡／禁止下坡的专用开关。",[979,1215,1217],{"id":1216},"vehicleheight哪些障碍点能进入远场输出","vehicleHeight：哪些障碍点能进入远场输出",[21,1219,1220,1221,1224],{},"当前自身远场只保留绝对高差 ",[29,1222,1223],{},"h\u003C1.0 m"," 的点，1.0 m边界不保留。这个值没有更改机器人尺寸，也不表示能跨越1 m台阶。",[21,1226,1227],{},"例如：障碍有离地20 cm的有效回波，可能进入输出；若它只有离地1.2 m处的回波，而“地面高度”选得正确，这些回波会被本项删掉。调小可能漏掉部分障碍，调大可能把悬空横梁等结构引入结果。应结合真实车辆需要避让的高度、雷达能看见的部位和地面估计核对，不能直接把名字当整车高度填入。",[21,1229,1230,1231,1234],{},"与下游10 cm门槛共同作用时，自身远场进入障碍筛选的高差范围为 ",[25,1232,1233],{},"0.1～不足1.0 m","，仍需通过其他条件。4 m内借入的近场点沿用近场当前0.5 m上限，不受本项重新筛选。",[979,1236,1238],{"id":1237},"localterrainmapradius为什么4-m附近要单独看","localTerrainMapRadius：为什么4 m附近要单独看",[21,1240,1241,1242,1244,1245,1247,1248,1250,1251,1253],{},"当前以输入里程计位置为中心：",[29,1243,969],{}," 直接复制 ",[29,1246,1040],{}," 点；",[29,1249,973],{}," 使用扩展节点自算点。近场点不会再次套用本节点的 ",[29,1252,631],{},"、排序、高度窗口、衰减或连接检查。",[21,1255,1256],{},"两侧当前有这些区别：",[35,1258,1259,1272],{},[38,1260,1261],{},[41,1262,1263,1266,1269],{},[44,1264,1265],{},"处理方式",[44,1267,1268],{},"4 m内借入的近场",[44,1270,1271],{},"4 m外自身计算",[54,1273,1274,1285,1296,1307,1321],{},[41,1275,1276,1279,1282],{},[59,1277,1278],{},"自身点云降采样尺度",[59,1280,1281],{},"0.05 m",[59,1283,1284],{},"0.1 m",[41,1286,1287,1290,1293],{},[59,1288,1289],{},"写死的地面格子边长",[59,1291,1292],{},"0.2 m",[59,1294,1295],{},"0.4 m",[41,1297,1298,1301,1304],{},[59,1299,1300],{},"相对估计地面的正常输出范围",[59,1302,1303],{},"非负、低于0.5 m",[59,1305,1306],{},"绝对值、低于1.0 m",[41,1308,1309,1312,1318],{},[59,1310,1311],{},"低于估计地面的点",[59,1313,873,1314,1317],{},[29,1315,1316],{},"considerDrop=False","，被过滤",[59,1319,1320],{},"取绝对值，可能进入输出",[41,1322,1323,1326,1329],{},[59,1324,1325],{},"最终相对输入高度窗口",[59,1327,1328],{},"固定上下界",[59,1330,1331],{},"随距离放宽",[21,1333,1334],{},"因此，同一坡面或物体随着车辆接近，跨过4 m时可能改变高度差或可见点；这是需要观察的源码差异，目前没有确认发生实际交接故障。扩大半径会借用更多近场结果，缩小会更早使用较粗远场；它不改变代价地图大小、雷达量程或车辆半径。",[21,1336,1337,1338,1341,1342,1344],{},"还有两个接口前提：",[25,1339,1340],{},"近场没有点，扩展节点不会用自己的4 m内计算补洞；近场停止更新，源码也不检查其年龄。"," 它会继续合入最近收到的近场结果，并把合并消息标成当前扫描时间。不能仅凭 ",[29,1343,1067],{}," 的时间戳新，就断定其中所有点都新。",[979,1346,1348],{"id":1347},"checkterrainconn-及三个配套参数当前先知道没有生效","checkTerrainConn 及三个配套参数：当前先知道没有生效",[21,1350,873,1351,1353,1354,67,1356,67,1358,1360],{},[29,1352,876],{},"，因此 ",[29,1355,848],{},[29,1357,884],{},[29,1359,914],{}," 都不影响输出。其他高度筛选仍在执行；这里只是专门的连接检查与顶棚筛选关闭。",[21,1362,1363],{},"若以后考虑启用，它从输入位置附近的地面出发，尝试把高度接近的地面区域连起来；自身远场只输出连上的区域。三项含义是：",[1365,1366,1367,1374,1380],"ul",{},[1368,1369,1370,1373],"li",{},[29,1371,1372],{},"terrainUnderVehicle=-0.75 m","：仅当中心格没有地面样本时，假定地面在输入原点下方0.75 m，作为检查起点。若使用前提成立，应测量该原点到地面的关系；它不是底盘离地间隙，也不是直接读取的实车高度。",[1368,1375,1376,1379],{},[29,1377,1378],{},"terrainConnThre=0.5 m","：候选两片地面的高度差小于0.5 m才接上。过小可能断开正常坡，过大可能接上真实台阶或跨过缺口；不是允许爬50 cm台阶。",[1368,1381,1382,1385],{},[29,1383,1384],{},"ceilingFilteringThre=2.0 m","：连接检查中，高度相差超过2.0 m的候选可被标记排除。源码用绝对差，远低于当前地面的区域也可能命中；不是“高于雷达2 m就删”的顶棚线，也不是车顶净空。",[21,1387,1388],{},"源码一次能比较横纵各±10个地面格，即各±4 m，并非只检查紧贴的小格；中间是否连续有地面没有逐段证明。因此这个检查也不能直接当作车辆可通行性或可靠断崖判据。当前关闭，无需优先调整这三项；启用的适用性要另行验证。",[979,1390,1392],{"id":1391},"scanvoxelsizedecaytime-与更新门槛细障碍和旧点","scanVoxelSize、decayTime 与更新门槛：细障碍和旧点",[21,1394,1395,1398],{},[29,1396,1397],{},"scanVoxelSize=0.1 m"," 是自身累计点云的三维降采样尺度，不是地面格子大小，也不保证10 cm以上障碍都能看见。细杆、障碍边缘和远处稀疏回波应重点观察；调小能保留更多细节，但点数与计算量会上升。",[21,1400,1401,1402,1405,1406,1408,1409,1412],{},"历史缓存按写死的2 m水平分块管理。每块新入点达到100，",[25,1403,1404],{},"或","距上次更新达到2.0秒，",[25,1407,1404],{},"发生清图，才重新降采样并检查年龄；这些步骤仍由新扫描驱动。",[29,1410,1411],{},"decayTime=0.2 s"," 是检查时使用的过期门槛，不能覆盖这个触发条件。",[21,1414,1415,1416,1419],{},"所以，近处点密集的块可能很快更新，远处点少的块可能等到时间门槛，旧点保留超过0.2秒。没有新扫描时也不会单靠计时继续处理。",[29,1417,1418],{},"noDecayDis=0.0"," 没有免衰减区域；以后调大，只让指定范围的自身历史绕过年龄检查，不会自动恢复近场缺失的输出。",[21,1421,1422,1423,1426],{},"这两个更新门槛不是发布频率，源码100 Hz循环也不等于每秒输出100帧。先沿用门槛；若实物发现旧障碍残留、地面缺点或负担过大，再结合点密度、衰减时间一起判断。扩展节点没有近场那组 ",[29,1424,1425],{},"clearDyObs"," 动态筛选参数，不能把它当成同一套清理算法。",[979,1428,1430],{"id":1429},"clearingdis按事件清半径内且只清自己","clearingDis：按事件清半径内，且只清自己",[21,1432,1433],{},"当前20 m表示收到清图事件后，删除水平距离小于20 m的自身缓存点。平时没有自动执行，也不是最大输出范围。",[21,1435,1436,1438,1439,1441,1442,1445,1446,1448],{},[29,1437,1052],{}," 第6个按钮可触发；",[29,1440,557],{}," 的 Float32 消息还会用消息数值覆盖半径。近场节点对应话题是 ",[29,1443,1444],{},"map_clearing","，二者不同。扩展节点清图后仍会借入 ",[29,1447,1040],{}," 的近场结果，因此近场点可以继续出现在合并输出中；不能把清自身缓存理解为清掉整套地图。本轮没有发送清图事件。",[979,1450,1451],{"id":1451},"启动来源与当前验证范围",[35,1453,1454,1467],{},[38,1455,1456],{},[41,1457,1458,1461,1464],{},[44,1459,1460],{},"启动方式",[44,1462,1463],{},"来源",[44,1465,1466],{},"要注意的区别",[54,1468,1469,1495,1509,1536],{},[41,1470,1471,1474,1489],{},[59,1472,1473],{},"整套 reality launch",[59,1475,1476,1477,1480,1481,1484,1485,1488],{},"默认 ",[29,1478,1479],{},"pb2025_nav_bringup\u002Fconfig\u002Freality\u002Fnav2_params.yaml","，可由 ",[29,1482,1483],{},"params_file"," 指定；经 ",[29,1486,1487],{},"navigation_launch.py"," 传入",[59,1490,1491,1492,1494],{},"节点名设为 ",[29,1493,197],{},"，匹配本表17项",[41,1496,1497,1500,1506],{},[59,1498,1499],{},"整套 simulation launch",[59,1501,1476,1502,1505],{},[29,1503,1504],{},"pb2025_nav_bringup\u002Fconfig\u002Fsimulation\u002Fnav2_params.yaml","，同样经导航 launch 传入",[59,1507,1508],{},"当前这17项与实物 YAML 相同，不能因此认定实物效果相同",[41,1510,1511,1517,1520],{},[59,1512,1513,1514],{},"包内独立 ",[29,1515,1516],{},"terrain_analysis_ext.launch",[59,1518,1519],{},"XML 内直接提供参数，不读取上面整套 YAML",[59,1521,1522,1523,67,1526,67,1529,67,1532,1535],{},"例如 ",[29,1524,1525],{},"decayTime=4.0",[29,1527,1528],{},"quantileZ=0.1",[29,1530,1531],{},"vehicleHeight=1.5",[29,1533,1534],{},"lowerBoundZ=-2.5","，与本表不同",[41,1537,1538,1541,1544],{},[59,1539,1540],{},"直接运行可执行文件且不传参数",[59,1542,1543],{},"C++ 声明时的默认值",[59,1545,1522,1546,67,1549,67,1552,1555],{},[29,1547,1548],{},"decayTime=10.0",[29,1550,1551],{},"useSorting=False",[29,1553,1554],{},"checkTerrainConn=True","；不会自动套用本表",[21,1557,1558,1559,1562],{},"整套导航 launch 会同时安排两个地形分析节点，扩展节点本身始终是独立进程，不随导航组件开关变成组件。本轮在 ",[29,1560,1561],{},"ysu_ros_humble"," 中只查询环境与文件，确认包路径、安装后的独立 launch、导航 launch 和两份 YAML 与当前源码文件一致；没有启动节点或读取运行节点的有效参数。",[21,1564,1565,1566,1568,1569,1572],{},"17项都在启动时声明和读取，没有动态参数更新回调；运行时仅写同名参数不会更新算法中的成员变量。",[29,1567,157],{}," 可由清图消息改变量，这与重新读取 ROS 参数是两回事。衰减计时使用输入点云时间戳，不是电脑墙钟；本块未列 ",[29,1570,1571],{},"use_sim_time","，也不能据此证明全链路时钟或点内时间单位已经正确。",[21,1574,1575,1576,1578],{},"输入里程计与扫描没有时间配对或插值，也没有等待有效里程计的保护；近场点云同样没有同步与新鲜度检查。节点直接使用输入坐标，未校验参考系，最后却固定写 ",[29,1577,1015],{},"。这些前提对坡面高度和距离分区都有影响。",[1365,1580,1581,1587,1593],{},[1368,1582,1583,1586],{},[25,1584,1585],{},"源码能确认："," 17项读取与当前门控、随距离扩大的高度窗口、远场绝对高差、4 m近远场合并、衰减与清图触发方式，以及三个未生效参数；上面的行为解释按当前源码复核。",[1368,1588,1589,1592],{},[25,1590,1591],{},"仿真已观察："," 2026-10-08 的静止和约20 cm往返只覆盖独立 Point-LIO 输出，没有验证扩展地形、上下坡、坑洼、顶棚、4 m交接或全局代价地图。",[1368,1594,1595,1598,1599,1601],{},[25,1596,1597],{},"必须实物核实："," 输入原点到地面的高度、内部 IMU→雷达→底盘关系、",[29,1600,1015],{}," 竖直方向、坡面及低障碍的回波密度、下坡与真实落差是否被正确区分、交接处一致性和障碍离开后的残留。MID360 随实际 yaw、不随实际 pitch 转动的机械约定继续保留；本轮未作运行测试。",[21,1603,1604,1605,1608,1609,1612,1613,1616,1617,1620],{},"源码位置：",[29,1606,1607],{},"src\u002Fpb2025_sentry_nav\u002Fterrain_analysis_ext\u002Fsrc\u002FterrainAnalysisExt.cpp","；启动来源：",[29,1610,1611],{},"src\u002Fpb2025_sentry_nav\u002Fpb2025_nav_bringup\u002Flaunch\u002Fnavigation_launch.py"," 和两份 ",[29,1614,1615],{},"nav2_params.yaml","；下游高度差筛选：",[29,1618,1619],{},"src\u002Fpb2025_sentry_nav\u002Fpb_nav2_plugins\u002Fsrc\u002Flayers\u002Fintensity_voxel_layer.cpp","。本块仅更新日志解释，工程源码、配置和参数值均保留。",[1622,1623,1624],"style",{},"html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":186,"searchDepth":204,"depth":204,"links":1626},[1627],{"id":14,"depth":204,"text":5,"children":1628},[1629,1630],{"id":18,"depth":212,"text":19},{"id":170,"depth":212,"text":170},"0500-0500","2026-09-20","2026-09-20-dao-hang","\u002Fwiki\u002F2026-09-20-dao-hang","导航","md",true,false,{},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0500-terrain-analysis-ext",{"title":5,"description":186},"wiki\u002F2026-09-20-导航\u002F0500-0500-terrain_analysis_ext","Xi4eFxHkp5ML9vsx5Yf2ypCTga2cFebBWldMGc8yRVM",[1645,1652,1658,1664,1670,1676,1682,1688,1694,1700,1706,1712,1718,1724,1730,1736,1742,1748,1750,1756,1762,1768,1774,1780,1786,1792,1798,1804,1810,1816,1822,1828,1834,1840,1846,1852,1858,1864],{"path":1646,"stem":1647,"title":1648,"authors":1649,"date":1632,"chapterOrder":1650,"chapterDepth":1651,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0100-jian-jie","wiki\u002F2026-09-20-导航\u002F0100-简介","简介",[7],"0100",0,{"path":1653,"stem":1654,"title":1655,"authors":1656,"date":1632,"chapterOrder":1657,"chapterDepth":1651,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0200-huan-jing-pei-zhi-yu-yun-xing","wiki\u002F2026-09-20-导航\u002F0200-环境配置与运行","环境配置与运行",[7],"0200",{"path":1659,"stem":1660,"title":1661,"authors":1662,"date":1632,"chapterOrder":1663,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0300-0100-robot-description","wiki\u002F2026-09-20-导航\u002F0300-0100-robot_description","robot_description（机器人模型与关节定义）",[7],"0300-0100",{"path":1665,"stem":1666,"title":1667,"authors":1668,"date":1632,"chapterOrder":1669,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0300-0200-mid360-an-zhuang-wei-zhi","wiki\u002F2026-09-20-导航\u002F0300-0200-MID360安装位置","MID360安装位置",[7],"0300-0200",{"path":1671,"stem":1672,"title":1673,"authors":1674,"date":1632,"chapterOrder":1675,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0300-0300-launch-yu-bao-yi-lai-pei-zhi","wiki\u002F2026-09-20-导航\u002F0300-0300-Launch与包依赖配置","Launch与包依赖配置",[7],"0300-0300",{"path":1677,"stem":1678,"title":1679,"authors":1680,"date":1632,"chapterOrder":1681,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0300-0400-fang-zhen-shi-jue-you-hua","wiki\u002F2026-09-20-导航\u002F0300-0400-仿真视觉优化","仿真视觉优化（可选）",[7],"0300-0400",{"path":1683,"stem":1684,"title":1685,"authors":1686,"date":1632,"chapterOrder":1687,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0300-0500-tian-jia-di-tu","wiki\u002F2026-09-20-导航\u002F0300-0500-添加地图","添加地图",[7],"0300-0500",{"path":1689,"stem":1690,"title":1691,"authors":1692,"date":1632,"chapterOrder":1693,"chapterDepth":1651,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0300-ji-qi-ren-mo-xing-yu-fang-zhen","wiki\u002F2026-09-20-导航\u002F0300-机器人模型与仿真","机器人模型与仿真",[7],"0300",{"path":1695,"stem":1696,"title":1697,"authors":1698,"date":1632,"chapterOrder":1699,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0400-0100-linux-yu-mcu-shu-ju-dui-jie","wiki\u002F2026-09-20-导航\u002F0400-0100-Linux与MCU数据对接","Linux与MCU数据对接",[7],"0400-0100",{"path":1701,"stem":1702,"title":1703,"authors":1704,"date":1632,"chapterOrder":1705,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0400-0200-chuan-kou-tong-xin","wiki\u002F2026-09-20-导航\u002F0400-0200-串口通信","Serial_Comm（串口通信）",[7],"0400-0200",{"path":1707,"stem":1708,"title":1709,"authors":1710,"date":1632,"chapterOrder":1711,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0400-0300-shou-bing-kong-zhi","wiki\u002F2026-09-20-导航\u002F0400-0300-手柄控制","Joy（手柄控制）",[7],"0400-0300",{"path":1713,"stem":1714,"title":1715,"authors":1716,"date":1632,"chapterOrder":1717,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0400-0400-mid360-yu-tf-lian-tiao","wiki\u002F2026-09-20-导航\u002F0400-0400-MID360与TF联调","MID360与TF联调",[7],"0400-0400",{"path":1719,"stem":1720,"title":1721,"authors":1722,"date":1632,"chapterOrder":1723,"chapterDepth":1651,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0400-ying-jian-dui-jie-yu-kong-zhi","wiki\u002F2026-09-20-导航\u002F0400-硬件对接与控制","硬件对接与控制",[7],"0400",{"path":1725,"stem":1726,"title":1727,"authors":1728,"date":1632,"chapterOrder":1729,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0100-point-lio","wiki\u002F2026-09-20-导航\u002F0500-0100-Point_LIO","Point_LIO（激光与IMU融合里程计，建图与定位算法）",[7],"0500-0100",{"path":1731,"stem":1732,"title":1733,"authors":1734,"date":1632,"chapterOrder":1735,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0200-loam-interface","wiki\u002F2026-09-20-导航\u002F0500-0200-loam_interface","loam_interface（Point-LIO输出的坐标与话题适配）",[7],"0500-0200",{"path":1737,"stem":1738,"title":1739,"authors":1740,"date":1632,"chapterOrder":1741,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0300-sensor-scan-generation","wiki\u002F2026-09-20-导航\u002F0500-0300-sensor_scan_generation","sensor_scan_generation（雷达点云换系与底盘、云台位姿转换）",[7],"0500-0300",{"path":1743,"stem":1744,"title":1745,"authors":1746,"date":1632,"chapterOrder":1747,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0400-terrain-analysis","wiki\u002F2026-09-20-导航\u002F0500-0400-terrain_analysis","terrain_analysis（近场地面与障碍高差分析）",[7],"0500-0400",{"path":1640,"stem":1642,"title":5,"authors":1749,"date":1632,"chapterOrder":1631,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},[7],{"path":1751,"stem":1752,"title":1753,"authors":1754,"date":1632,"chapterOrder":1755,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0600-fake-vel-transform","wiki\u002F2026-09-20-导航\u002F0500-0600-fake_vel_transform","fake_vel_transform（云台系速度转换与底盘自旋）",[7],"0500-0600",{"path":1757,"stem":1758,"title":1759,"authors":1760,"date":1632,"chapterOrder":1761,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0700-small-gicp-relocalization","wiki\u002F2026-09-20-导航\u002F0500-0700-small_gicp_relocalization","small_gicp_relocalization（先验点云地图重定位）",[7],"0500-0700",{"path":1763,"stem":1764,"title":1765,"authors":1766,"date":1632,"chapterOrder":1767,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0800-pointcloud-to-laserscan","wiki\u002F2026-09-20-导航\u002F0500-0800-pointcloud_to_laserscan","pointcloud_to_laserscan（三维地形点云转二维扫描）",[7],"0500-0800",{"path":1769,"stem":1770,"title":1771,"authors":1772,"date":1632,"chapterOrder":1773,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-0900-slam-toolbox","wiki\u002F2026-09-20-导航\u002F0500-0900-slam_toolbox","slam_toolbox（二维地图生成与轨迹优化）",[7],"0500-0900",{"path":1775,"stem":1776,"title":1777,"authors":1778,"date":1632,"chapterOrder":1779,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1000-bt-navigator","wiki\u002F2026-09-20-导航\u002F0500-1000-bt_navigator","bt_navigator（行为树导航任务调度）",[7],"0500-1000",{"path":1781,"stem":1782,"title":1783,"authors":1784,"date":1632,"chapterOrder":1785,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1100-controller-server","wiki\u002F2026-09-20-导航\u002F0500-1100-controller_server","controller_server（路径跟踪、进度检查与到达判定）",[7],"0500-1100",{"path":1787,"stem":1788,"title":1789,"authors":1790,"date":1632,"chapterOrder":1791,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1200-local-costmap","wiki\u002F2026-09-20-导航\u002F0500-1200-local_costmap","local_costmap（局部障碍代价地图）",[7],"0500-1200",{"path":1793,"stem":1794,"title":1795,"authors":1796,"date":1632,"chapterOrder":1797,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1300-global-costmap","wiki\u002F2026-09-20-导航\u002F0500-1300-global_costmap","global_costmap（全局规划代价地图）",[7],"0500-1300",{"path":1799,"stem":1800,"title":1801,"authors":1802,"date":1632,"chapterOrder":1803,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1400-map-server","wiki\u002F2026-09-20-导航\u002F0500-1400-map_server","map_server（已有二维地图加载与发布）",[7],"0500-1400",{"path":1805,"stem":1806,"title":1807,"authors":1808,"date":1632,"chapterOrder":1809,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1500-map-saver","wiki\u002F2026-09-20-导航\u002F0500-1500-map_saver","map_saver（二维栅格地图保存）",[7],"0500-1500",{"path":1811,"stem":1812,"title":1813,"authors":1814,"date":1632,"chapterOrder":1815,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1600-planner-server","wiki\u002F2026-09-20-导航\u002F0500-1600-planner_server","planner_server（Theta*全局路径规划）",[7],"0500-1600",{"path":1817,"stem":1818,"title":1819,"authors":1820,"date":1632,"chapterOrder":1821,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1700-smoother-server","wiki\u002F2026-09-20-导航\u002F0500-1700-smoother_server","smoother_server（全局路径平滑）",[7],"0500-1700",{"path":1823,"stem":1824,"title":1825,"authors":1826,"date":1632,"chapterOrder":1827,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1800-behavior-server","wiki\u002F2026-09-20-导航\u002F0500-1800-behavior_server","behavior_server（恢复行为与空闲方向移动）",[7],"0500-1800",{"path":1829,"stem":1830,"title":1831,"authors":1832,"date":1632,"chapterOrder":1833,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-1900-waypoint-follower","wiki\u002F2026-09-20-导航\u002F0500-1900-waypoint_follower","waypoint_follower（逐点导航与到点等待）",[7],"0500-1900",{"path":1835,"stem":1836,"title":1837,"authors":1838,"date":1632,"chapterOrder":1839,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-2000-velocity-smoother","wiki\u002F2026-09-20-导航\u002F0500-2000-velocity_smoother","velocity_smoother（速度限幅与加减速平滑）",[7],"0500-2000",{"path":1841,"stem":1842,"title":1843,"authors":1844,"date":1632,"chapterOrder":1845,"chapterDepth":193,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-2100-pb-teleop-twist-joy-node","wiki\u002F2026-09-20-导航\u002F0500-2100-pb_teleop_twist_joy_node","pb_teleop_twist_joy_node（手柄输入与可替换控制入口）",[7],"0500-2100",{"path":1847,"stem":1848,"title":1849,"authors":1850,"date":1632,"chapterOrder":1851,"chapterDepth":1651,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0500-dao-hang-can-shu","wiki\u002F2026-09-20-导航\u002F0500-导航参数","导航参数",[7],"0500",{"path":1853,"stem":1854,"title":1855,"authors":1856,"date":1632,"chapterOrder":1857,"chapterDepth":1651,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0600-kai-fa-wen-ti-yu-pai-cha","wiki\u002F2026-09-20-导航\u002F0600-开发问题与排查","开发问题与排查",[7],"0600",{"path":1859,"stem":1860,"title":1861,"authors":1862,"date":1632,"chapterOrder":1863,"chapterDepth":1651,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1638},"\u002Fwiki\u002F2026-09-20-dao-hang\u002F0700-jue-ce","wiki\u002F2026-09-20-导航\u002F0700-决策","决策",[7],"0700",{"path":1634,"stem":1865,"title":1866,"authors":1867,"date":1632,"chapterOrder":1868,"chapterDepth":1651,"docKey":1633,"docRoot":1634,"docTitle":1635,"isWikiDoc":1637,"isWikiIndex":1637},"wiki\u002F2026-09-20-导航\u002Findex","北极熊导航复现日志",[7],null,[1870,1872,1875,1878],{"name":7,"image":1871},"\u002Fimages\u002Fmember_photo\u002F董佳辉.jpg",{"name":1873,"image":1874},"宫金良","\u002Fimages\u002Fmember_photo\u002F宫金良.jpg",{"name":1876,"image":1877},"巩丽","\u002Fimages\u002Fmember_photo\u002F巩丽.png",{"name":1879,"image":1880},"张彦斐","\u002Fimages\u002Fmember_photo\u002F张彦斐.jpg",1792431906156]