语义SLAM的数据关联和语义定位(四)多目标测量概率模型
多目标模型
这部分想讲一下Semantic Localization Via the Matrix Permanent这篇文章的多目标测量概率模型。考虑到实际情况中,目标检测算法从单张图像中可能检测出若干类物体,每一类物体可能都有好几个实例。当我们尝试建立数据关联时,先从简单的情形入手,再推广到一般情形。下面假设检测结果共有\(m\)个。
所有的检测都是误检测
当目标位置\(x\)的视场内并没有可检测的目标存在时,即\(Y_d(x)=\varnothing\)。那么,所有的测量都是误检测。根据假设,检测出假阳性(false-positive)的过程(作为一个随机过程)在时间线上符合泊松分布(均值为\(\lambda\)),在空间上符合概率分布\(p_\kappa(z)\)。
\[p(Z|\varnothing,x)=\exp(-\lambda)\left(\prod_{z\in Z}\lambda_{\kappa}(z)\right)\]
所有的检测都是正确的
这里指所有在FOV范围内的目标都被检测到了,即\(p_d(y|x)=1\),没有误检测,即\(\lambda=0\)。
\[p(Z|Y_d(x),x)=\sum_{\pi}\prod_{i=1}^{m}p_z(z_{\pi(i)}\vert y_i,x)\]
其中,\(\pi\)是检测集合\(\{1,...,m\}\)到目标集合\(\{y_1,...,y_m\}\)的一个排列组合。
有漏检无误检
如果\(m=0\),那么
\[p\left(\varnothing|Y_d(x),x\right)=\prod_{i=1}^{|Y_d(x)|}\left(1-p_d(y_i|x)\right)\]
如果\(0 < m \leq \left\vert Y_d(x)\right\vert\),那么
\[p\left(Z|Y_d(x),x\right)=p\left(\varnothing|Y_d(x),x\right)\sum_{\pi}\prod_{i\vert \pi(i)>0}\frac{p_d(y_i|x)p_z(z_{\pi(i)}|y_i,x)}{\left(1-p_d(y_i|x)\right)}\]
其中,\(\pi:\{1,...,\left\vert Y_d(x)\right\vert\}\rightarrow \{0,1,...,m\}\)满足\(\pi(i)=\pi(i')>0\Rightarrow i=i'\)以保证检测结果不会对应于多个目标。这里,\(\pi\)的值域中的\(0\)表示这个目标是没有检测到的。
没有漏检但有误检
\[p\left(Z|Y_d(x),x\right)=p\left(Z|\varnothing,x\right)\sum_{\pi}\prod_{i=1}^{\left\vert Y_d(x)\right\vert}\frac{p_z(z_{\pi(i)}|y_i,x)}{\lambda_{\kappa}(z_{\pi(i)})}\]
其中\(\pi\)的定义同上。
既有漏检也有误检
这是最一般的情形。结合上面的几种情况,可知当\(m=0\)时,
\[p\left(\varnothing|Y_d(x),x\right)=\prod_{i=1}^{|Y_d(x)|}\left(1-p_d(y_i|x)\right)\]
否则,
\[p\left(Z|Y_d(x),x\right)=p\left(Z|\varnothing,x\right)p\left(\varnothing|Y_d(x),x\right)\sum_{\pi}\prod_{i\vert \pi(i)>0}\frac{p_d(y_i|x)p_z(z_{\pi(i)}|y_i,x)}{\left(1-p_d(y_i|x)\right)\lambda_{\kappa}(z_{\pi(i)})}\]
其中,\(\pi:\{1,...,\left\vert Y_d(x)\right\vert\}\rightarrow \{0,1,...,m\}\)满足\(\pi(i)=\pi(i')>0\Rightarrow i=i'\)。
语义SLAM的数据关联和语义定位(四)多目标测量概率模型的更多相关文章
- 语义SLAM的数据关联和语义定位(一)
语义SLAM和多传感器融合是自动驾驶建图和定位部分比较热门的两种技术.语义SLAM中,语义信息的数据关联相较于特征点的数据关联有所不同.我们一般用特征描述子的相似性来匹配和关联不同图像中的特征点.特征 ...
- 语义SLAM的数据关联和语义定位(三)
与现有方法的异同 特征点SLAM中的数据关联 先回忆一下特征点SLAM中,我们是如何处理数据关联的.下面以ORBSLAM为例. 在初始化部分,我们通过特征描述子的相似性,建立两帧之间的特征点关联,然后 ...
- 语义SLAM的数据关联和语义定位(二)Semantic Localization Via the Matrix Permanent
论文假设和单目标模型 这部分想讲一下Semantic Localization Via the Matrix Permanent这篇文章的一些假设. 待求解的问题可以描述为 假设从姿态\(x\)看到的 ...
- 语义slam用于高精地图和高精定位的一些想法
最近一直在考虑语义slam在自动驾驶和辅助驾驶中的用法,研究了一下视觉为主的高精度地图+高精定位的模式,特别是mobileye的REM. 秉承先建图再定位的思路,在服务器端(云端)建图,在车端定位. ...
- 分享| 语义SLAM的未来与思考(泡泡机器人)
相比典型的点云地图,语义地图能够很好的表示出机器人到的地方是什么,机器人“看”到的东西是什么.比如进入到一个房间,点云地图中,机器人并不能识别显示出来的一块块的点云到底是什么,但是语义地图的构建可以分 ...
- 从5个经典工作开始看语义SLAM
本文试图概括Semantic SLAM的主要思路和近年工作,⻓期更新.但因水平有限,若有错漏,感谢指正. (更好的公式显示效果,可关注文章底部的公众号) Semantic SLAM 简介 至今为止,主 ...
- 最近一年语义SLAM有哪些代表性工作?
点击"计算机视觉life"关注,置顶更快接收消息! 本文由作者刘骁授权发布,转载请联系原作者,个人主页http://www.liuxiao.org 目前 Semantic SLAM ...
- 语义SLAM研究现状总结
博客转载自:https://blog.csdn.net/xiaoxiaowenqiang/article/details/81051010 原文标题:深度学习结合SLAM 语义slam 语义分割 端到 ...
- 三维重建5:场景中语义分析/语义SLAM/DCNN-大尺度SLAM
前言: 在实时/非实时大规模三维场景重建中,引入了语义SLAM这个概念,参考三维重建:SLAM的尺度和方法论问题和三维重建:SLAM的粒度和工程化问题 .大规模三维场景重建的尺度增大,因此相对于整个重 ...
随机推荐
- vue 3D小球 loading
<template> <div class="load"> <div class="loadEffect"> <spa ...
- django views视图函数返回值 return redirect httpresponse总结
django views视图函数返回值 return redirect render httpresponse总结
- springboot + mybatis +druid
Druid Spring Boot Starter mybatis-spring-boot-autoconfigure mybatis-spring-boot-samples 新建spring boo ...
- JNI 简单例子
原文:http://www.cnblogs.com/youxilua/archive/2011/09/16/2178554.html 1,先把c语言的编译环境搭建好,windows下这里使用mingw ...
- 全网最详细的Sublime Text 3的安装Package Control插件管理包(图文详解)
不多说,直接上干货! 全网最详细的Windows里下载与安装Sublime Text *(图文详解) 全网最详细的Sublime Text 3的激活(图文详解) 全网最详细的Sublime Text ...
- docker with redis
docker run --name myredis -d -v /home/rudy/pro/database/redis:/data -p : --privileged=true redis
- Mybatis在非spring环境下配置文件中使用外部数据源(druidDatasource)
Spring环境下, MyBatis可以通过其本身的增强mybatis-spring提供的org.mybatis.spring.SqlSessionFactoryBean来注入第三方DataSourc ...
- 微信支付 统一下单 字段 body 为中文时 报【签名错误】解决方案(C# SDK)
方案一 如果你是从微信支付官网下载的 .NET C#[微信支付]API对应的SDK 调用示例 查看源码,会发现这个SDK中的 WxPayData 的类的 CalcHMACSHA256Hash 签名方法 ...
- JS生成指定范围内的随机数(支持随机小数)
直接需要函数的话,直接到文章的最后面找. ============================================================= 转载:https://www.cn ...
- Spring加载properties文件的两种方式
在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可, ...