视觉定位概念_召回率_Top-K Recall,Loop Closure Recall(回环召回率),Localization Recall(定位召回率) 在SLAMSimultaneous Localization and Mapping、Visual Localization视觉定位、图像检索Image Retrieval中召回率Recall是衡量有多少应该匹配成功的样本最终被成功匹配的重要指标。很多人容易把它和定位精度Accuracy、**匹配准确率Precision**混淆其实它们关注的问题完全不同。一、什么是召回率Recall一句话所有真正可以匹配成功的图片或位置中有多少最终被系统找出来了。数学定义其中TPTrue Positive正确找到的匹配FNFalse Negative本来应该找到但是漏掉了因此Recall 找到了多少 / 应该找到多少二、放到图像定位里面理解假设一个地图中有100张关键帧。当前相机来到一个位置。实际上这一位置对应地图中的Frame 20 Frame 21 Frame 22 Frame 23 Frame 24这5张都是正确匹配。也就是说Ground Truth应该匹配 20 21 22 23 24现在你的Place Recognition算法例如DBoW2NetVLADSuperGlueLightGlueORB匹配返回20 22 40真正正确的是20 22漏掉的是21 23 24因此TP 2FN 3Recall[Recall\frac{2}{23}40%]说明本来有5个正确位置只找回了2个。三、Recall为什么重要因为定位第一步通常都是Query Image │ ▼ Image Retrieval │ 找到Top K候选帧 │ Feature Matching │ PnP │ 定位成功如果第一步没找到真正的位置后面全部失败。所以Retrieval Recall决定了定位成功率上限。例如数据库10000 张图片真正位置Image 8765你的Retrieval返回Top10123 8765 555 ...说明Recall成功。如果返回123 555 222真正位置根本没出现。那么PnP根本没有机会。定位失败。四、Top-K Recall视觉定位最常用的是RecallK意思正确位置是否出现在前K个候选里面。例如Top18765正确Recall1成功Top512 35 8765 100 44正确Recall5成功Top20... 8765 ...也成功。所以一般论文都会写Recall1 Recall5 Recall10例如算法Recall1Recall5DBoW265%81%NetVLAD84%95%MixVPR92%98%意思就是例如Recall5 95%表示95%的查询图片真正位置都出现在前5个候选里面。五、SLAM中的RecallSLAM里面通常有两个Recall。① Loop Closure Recall回环召回率例如机器人A → B → C → D → A实际上存在一次回环。Ground Truth有1个Loop算法检测检测到了Recall100%如果没有检测到Recall0%如果100个回环找到90个Recall90%② Localization Recall定位召回率例如1000张Query图片其中900张理论可以定位。算法成功定位850张。Recall很多定位论文都会写Localization Recall或者Pose Recall六、Recall 和 Precision 区别这是最容易混淆的。假设返回Top10 20 21 22 500 600 700 800 900 1000 1100真正正确只有20 21 22那么TP3FP7PrecisionRecall假设真实只有20 21 22全部找到了。Recall100%说明虽然找回来全部正确图片但是混进很多错误图片。另一种情况返回20Precision100%因为只有一个还是正确。Recall只有33%因为另外两个漏掉了。所以Precision返回的结果有多“准”即返回的候选中有多少是真正正确的。Recall真正正确的目标找回了多少即是否漏检。七、视觉定位为什么更关心Recall定位一般流程Image Retrieval ↓ Top100 ↓ Feature Matching ↓ RANSAC ↓ PnP只要真正位置进入Top100后面的几何验证Feature Matching、RANSAC、PnP就可以把错误候选逐步剔除。因此定位系统更希望宁可多返回一些候选Recall高也不要漏掉真正的位置。也就是说高 Recall ↓ 保证真正位置进入候选集 ↓ 几何验证负责去掉FP ↓ 最终定位成功因此在视觉定位论文中经常看到High Recall Retrieval而不是High Precision Retrieval八、SLAM/视觉定位中几个容易混淆的指标指标定义越高越好作用Recall召回率所有正确目标中找回多少✔衡量漏检情况是图像检索和回环检测最重要的指标之一Precision准确率返回结果中有多少是正确的✔衡量误检情况通常由后续几何验证进一步改善Localization Success Rate定位成功率成功估计位姿的查询占比✔反映整个定位系统端到端性能Pose Accuracy位姿精度估计位姿与真实位姿的误差平移、旋转✔误差越小越好衡量定位结果是否足够精确Inlier Ratio内点率匹配点中通过几何一致性验证如RANSAC的比例✔反映特征匹配质量总结在图像匹配和 SLAM 中Recall 的核心是“不漏掉正确位置”。对于视觉定位来说检索阶段通常以RecallK为主要评价指标因为只要真实位置进入 Top-K 候选后续的特征匹配、RANSAC 和 PnP 就有机会完成准确定位而如果真实位置在检索阶段就被漏掉Recall 低后续算法再优秀也无法恢复正确位姿。