[{"data":1,"prerenderedAt":226},["ShallowReactive",2],{"method-interactiveslam2021":3},{"method":4,"reference":63,"equipment":87,"figures":104,"results":105},{"id":5,"label":6,"shortName":7,"title":8,"year":9,"era":10,"cluster":11,"scope":12,"keyIdeaZh":13,"keyIdeaEn":14,"fulltextStatus":15,"publicationStatus":16,"recommendation":17,"constructionRelevance":18,"validationEnvironment":19,"strengths":22,"limitations":27,"sensors":33,"platform":36,"estimator":39,"association":40,"timeModel":41,"deskew":42,"loopClosure":43,"globalOptimization":44,"mapRepresentation":45,"prior":46,"outputGeometry":47,"compute":48,"codeUrl":49,"codeLicense":50,"relatedVersions":51},"interactiveslam2021","Koide et al., 2021a","interactive_slam","Interactive 3D Graph SLAM for Map Correction",2021,"recent","C01","offline_map_refinement","interactive_slam 讓使用者透過圖形介面修正自動 3D LiDAR SLAM 產生的地圖。系統把自動 SLAM 的位姿約束與使用者建立的修正約束放在同一個位姿圖中，以 g2o 最佳化並立即顯示結果。修正工具有三種：使用者指定迴圈兩端後以 FPFH 初配準、再以 GICP 精配準的半自動迴圈閉合，以及之後的自動迴圈搜尋；依卡方距離抽樣、重新匹配不一致邊的位姿約束精修；以及點選平面後以區域成長與 RANSAC 擷取平面，並在遠處平面之間加入相同、平行或垂直約束，以修正整體彎曲。","Human-in-the-loop correction of 3D LiDAR pose graphs: user-guided and automatic loop closing, chi-square-sampled edge refinement and user-selected plane constraints (identity, parallel, perpendicular) applied on top of any ROS SLAM output.","full_text_reviewed","peer_reviewed_published","main_body","未在營建工地驗證。戶外評估以 PASCO 行動量測系統記錄，並以環境中多台靜置全測站追蹤 3D LiDAR 位置作為毫米級參考軌跡（Sec. IV.A）；室內外資料包含多樓層與樓梯（Sec. IV.B）。以人工指定平面的相同、平行或垂直關係修正整體彎曲，可直接用於竣工點雲品質管制中修正樓板與牆面的彎曲，但這也把人工先驗注入地圖，應記錄所加約束，以免掩蓋結構真實的變形或施工偏差（推論）。",[20,21],"independent_reference","completed_building",[23,24,25,26],"On the PASCO outdoor dataset ATE fell from 1.731 m (LOAM base) to 1.683 m after loop closing, 1.340 m after edge refinement and 0.517 m with plane constraints, below all automatic baselines (1.731 to 5.248 m) (Table I; Sec. IV.A).","The outdoor correction took about 15 minutes for a 20-minute dataset with one manual loop and 15 planes (Sec. IV.A).","Produced a consistent multi-floor indoor-outdoor map where Kaarta Stencil, LOAM variants, SuMa, ethzasl_icp_mapping and hdl_graph_slam gave corrupted trajectories (Sec. IV.B).","Pose-constraint refinement reduced the example graph's chi-square distance from 0.447 to 0.061 (Sec. III.C).",[28,29,30,31,32],"Requires manual effort: 19 loops and 17 planes, about 20 minutes, for the indoor-outdoor sequence (Sec. IV.B.3).","Automatic loop detectors (distance histogram, ScanContext, LiDAR-Iris, OverlapNet) degraded strongly indoors, and repeated structures across floors gave near-identical descriptor distances (Sec. IV.B.2).","Loop closing alone can worsen global accuracy: LeGO-LOAM's ATE rose from 1.846 m to 2.418 m with loops because of altitude bending (Table I; Fig. 6).","Ground truth gives translation only, so RTE uses a modified sub-trajectory alignment (Sec. IV.A).","(inference) Quantitative accuracy is reported only for the outdoor dataset; the indoor-outdoor result is qualitative.",[34,35],"3D LiDAR (16-line in the indoor-outdoor sequence; model not reported)","input is any ROS SLAM pose graph or odometry sequence",[37,38],"mobile mapping platform (PASCO Mobile Measurement System)","not_reported (carrier of the Kaarta Stencil not stated)","pose-graph optimization (g2o, Levenberg-Marquardt) over automatic SLAM constraints plus user-created correction constraints, re-optimized after every edit (Sec. III.A)","for user-selected loop pairs, FPFH-based initial alignment the user can fine-tune, then GICP (ICP or NDT selectable); automatic loop search by distance, graph-path and matching-score thresholds with a Huber kernel (Sec. III.B)","discrete poses (keyframes every 5 m outdoors, every 3 m in the indoor-outdoor sequence)","not_applicable (operates on keyframes from an upstream SLAM)","semi-automatic: the user picks the two ends of a loop, then automatic scan-matching loop search runs on the roughly corrected graph (Sec. III.B)","pose graph with plane vertices; identity, parallel and perpendicular constraints between user-selected planes with a large information matrix (e.g., 10^3 I) as semi-global corrections; pose-edge refinement re-matches inconsistent edges sampled by chi-square distance (Sec. III.C-D)","keyframe point clouds on a pose graph with plane vertices","user knowledge of planar structure (identity, parallel, perpendicular) added through the GUI; initial pose graph or odometry from an automatic SLAM","corrected, globally consistent 3D point cloud map and pose graph","not_reported; correction took about 15 minutes for the 20-minute outdoor dataset and about 20 minutes for the indoor-outdoor sequence, including user interaction (Sec. IV)","https:\u002F\u002Fgithub.com\u002Fkoide3\u002Finteractive_slam","GPL-3.0 (LICENSE file checked)",[52,55,59],{"relation":53,"title":54,"doi_or_url":49},"code_release","koide3\u002Finteractive_slam (GPL-3.0)",{"relation":56,"title":57,"doi_or_url":58},"dataset","Outdoor evaluation dataset announced as available at github.com\u002FSMRT-AIST (footnote 2; not checked)","https:\u002F\u002Fgithub.com\u002FSMRT-AIST",{"relation":60,"title":61,"doi_or_url":62},"companion","hdl_graph_slam (koide2019_hdlgraphslam), whose pose graphs interactive_slam can edit","https:\u002F\u002Fgithub.com\u002Fkoide3\u002Fhdl_graph_slam",{"id":5,"kind":64,"shortName":7,"title":8,"authors":65,"year":9,"venue":71,"venueType":72,"publisher":73,"volumeIssuePages":74,"doi":75,"arxivId":76,"url":77,"firstPublicDate":78,"publicationStatus":16,"metadataStatus":79,"fulltextStatus":15,"era":10,"classicReason":80,"codeUrl":49,"cluster":11,"topics":81,"mdpi":82,"verification":83,"label":6,"fulltextRoute":84,"versionRead":85,"addedByCensus":86},"method",[66,67,68,69,70],"Kenji Koide","Jun Miura","Masashi Yokozuka","Shuji Oishi","Atsuhiko Banno","IEEE Robotics and Automation Letters","journal","IEEE","6(1):40-47","10.1109\u002Flra.2020.3028828",null,"https:\u002F\u002Fdoi.org\u002F10.1109\u002FLRA.2020.3028828","2020-10-05","metadata_verified","not_applicable",[11],false,"confirmed","NTU institutional (curl)","IEEE Xplore version of record PDF (RA-L 6(1):40-47, 8 pp.)",true,[88,94,100],{"category":89,"model":90,"canonical":90,"role":91,"dataset":76,"specs":92,"locator":93},"total_station","static total stations (PASCO Mobile Measurement System)","reference or ground truth","several static total stations placed in the environment; 3D LiDAR position measured to a few millimetres (translation only)","Sec. IV.A",{"category":95,"model":96,"canonical":96,"role":97,"dataset":76,"specs":98,"locator":99},"mobile_scanner_device","Mobile Measurement System","method input","mobile platform with a 3D LIDAR, rangefinders, GNSS and cameras","Sec. IV.A; Fig. 4",{"category":95,"model":101,"canonical":101,"role":97,"dataset":76,"specs":102,"locator":103},"Kaarta Stencil","commercial visual-LIDAR-IMU mapping system; its own trajectory is shown as a baseline (Fig. 7a)","Sec. IV.B",[],{"totalRows":106,"groupCount":107,"groups":108,"others":225},14,2,[109,193],{"slug":110,"group":111,"sourceId":5,"sourceLabel":6,"table":112,"selfRows":113,"metrics":114,"seqs":140,"entrants":145,"cells":152,"outcomes":187,"locators":188,"hardware":189,"wordings":190,"notes":191},"interactiveslam2021-table-i","interactiveslam2021:Table I","Table I",12,[115,120,122,124,126,128,130,132,134,136,138],{"label":116,"unit":117,"statistic":118,"alignment":119},"ATE [m], mean +\u002F- std = 1.683 +\u002F- 1.027","m","mean","not_reported",{"label":121,"unit":117,"statistic":118,"alignment":119},"RTE(5m) [m], mean +\u002F- std = 0.045 +\u002F- 0.022",{"label":123,"unit":117,"statistic":118,"alignment":119},"RTE(50m) [m], mean +\u002F- std = 0.091 +\u002F- 0.058",{"label":125,"unit":117,"statistic":118,"alignment":119},"RTE(500m) [m], mean +\u002F- std = 0.693 +\u002F- 0.174",{"label":127,"unit":117,"statistic":118,"alignment":119},"ATE [m], mean +\u002F- std = 1.340 +\u002F- 0.826",{"label":129,"unit":117,"statistic":118,"alignment":119},"RTE(5m) [m], mean +\u002F- std = 0.044 +\u002F- 0.017",{"label":131,"unit":117,"statistic":118,"alignment":119},"RTE(50m) [m], mean +\u002F- std = 0.082 +\u002F- 0.043",{"label":133,"unit":117,"statistic":118,"alignment":119},"RTE(500m) [m], mean +\u002F- std = 0.590 +\u002F- 0.155",{"label":135,"unit":117,"statistic":118,"alignment":119},"ATE [m], mean +\u002F- std = 0.517 +\u002F- 0.151",{"label":137,"unit":117,"statistic":118,"alignment":119},"RTE(50m) [m], mean +\u002F- std = 0.081 +\u002F- 0.043",{"label":139,"unit":117,"statistic":118,"alignment":119},"RTE(500m) [m], mean +\u002F- std = 0.379 +\u002F- 0.034",[141],{"dataset":142,"sequence":143,"environment":144},"PASCO Mobile Measurement System outdoor dataset (released via SMRT-AIST)","outdoor sequence (about 20 min)","outdoor, about 200 m x 400 m",[146,148,150],{"name":147,"methodId":5,"linkable":86,"proposed":86,"self":86},"Proposed: Loop closing (with loop closure)",{"name":149,"methodId":5,"linkable":86,"proposed":86,"self":86},"Proposed: Edge refinement (with loop closure)",{"name":151,"methodId":5,"linkable":86,"proposed":86,"self":86},"Proposed: Plane constraints (with loop closure)",[153,157,160,162,165,168,171,174,177,180,181,184],[154,154,154,155,156,154,156,156,154],0,1.683,-1,[154,158,154,159,156,154,156,156,154],1,0.045,[154,107,154,161,156,154,156,156,154],0.091,[154,163,154,164,156,154,156,156,154],3,0.693,[158,166,154,167,156,154,156,156,154],4,1.34,[158,169,154,170,156,154,156,156,154],5,0.044,[158,172,154,173,156,154,156,156,154],6,0.082,[158,175,154,176,156,154,156,156,154],7,0.59,[107,178,154,179,156,154,156,156,154],8,0.517,[107,169,154,170,156,154,156,156,154],[107,182,154,183,156,154,156,156,154],9,0.081,[107,185,154,186,156,154,156,156,154],10,0.379,[],[112],[],[],[192],"PASCO Mobile Measurement System outdoor dataset (about 200 m x 400 m, 20 min); ground truth is the 3D LiDAR position tracked by static total stations (translation only); errors given as mean +\u002F- std; RTE uses a modified routine that aligns each sub-trajectory within the evaluation window; the proposed rows start from LOAM odometry with 5 m keyframes",{"slug":194,"group":195,"sourceId":5,"sourceLabel":6,"table":196,"selfRows":107,"metrics":197,"seqs":204,"entrants":207,"cells":212,"outcomes":217,"locators":218,"hardware":220,"wordings":221,"notes":222},"interactiveslam2021-text-sec-iii-c","interactiveslam2021:Text Sec. III.C","Text Sec. III.C",[198,202],{"label":199,"unit":200,"statistic":119,"alignment":201},"chi-square distance (sum of weighted constraint errors) before refinement","unitless","none",{"label":203,"unit":200,"statistic":119,"alignment":201},"chi-square distance (sum of weighted constraint errors) after refinement",[205],{"dataset":206,"sequence":119,"environment":119},"example dataset of Fig. 3",[208,210],{"name":209,"methodId":5,"linkable":86,"proposed":82,"self":86},"before pose constraint refinement",{"name":211,"methodId":5,"linkable":86,"proposed":86,"self":86},"after pose constraint refinement",[213,215],[154,154,154,214,156,154,156,156,154],0.447,[158,158,154,216,156,154,156,156,158],0.061,[],[219],"Sec. III.C",[],[],[223,224],"Example correction sequence (Fig. 3): chi-square distance of the pose graph before pose-constraint refinement","Same example after pose-constraint refinement",[],1790510665139]