最近发现要写的东西很多,在轨迹规划中还有一大堆的新概念,但是要花大力气才能理解皮毛,所以调节一下,学点相对比较简单的概念,匈牙利匹配!

1. 匈牙利匹配

匈牙利匹配最早是在图论中出现的,至于如何在自动驾驶中得到应用,我们一点点展开:

     我们的时代经过几代人不懈努力,房价终于赶英超美,也带来了剩男剩女大潮,假设你是媒人,手上有N个剩男、M个剩女,中间有很多相互有不同程度的好感,屌丝的单相思不考虑啊,要互相有好感才行。那么你打算如何撮合他们呢?首先要求尽可能的多,并且最终总的满意度最高。匈牙利匹配步骤如下:

1. 先试着给1号男生找妹子,发现和他相互有好感的1号女生还名花无主,nice!,连上一条线。

2. 接着给2号男生找妹子,发现和他相互有好感的2号女生名花无主,nice!,连上一条线。

3. 接下来是3号男生,很遗憾和他相互有好感的1号女生已经有主了,怎么办呢?我们试着拆散1号男和一号女,让一号男重新找,把3号男和一号女连在一起,如果1号男能找到其他的女生,那不就多成就了一对吗?散花....

4. 接下来是4号男生,通过上面腾挪的方法,发现4号男生的加入,不管如何腾挪,都不能多成就一对,那我们只能放弃4号同学了。

5. 特别的这个中间有几个问题,每一次腾挪我们都要考虑一个总的受益,每个男女都相互有不同程度的好感,和好感度高的在一起相对更满意,但是如果最终没有配对成功,满意度才是最低的,所以每一次腾挪都需要比较两次的最终总的满意度。

2. 自动驾驶结合

在自动驾驶中,不同传感器每一个周期返回不同的目标,相互之间如何匹配呢,对于同一个传感器而言,一般都有不同目标对应的ID,但是在夸传感器之间就没有这么幸运的事,另外融合了所有传感器的目标之后我们自己的输出,也需要目标和目标之间的配准,这中间都可以应用匈牙利匹配的方法实现。

之前的文章中有介绍多目标的融合方法:传感器数据融合,当时只是把融合的方法进行分类,并没有介绍一种行之有效的操作手册,那这里我来阐述一下我的一个思路:

  1. 我们有一个目标模型:,其中 u 和 v 分别代表目标中心的水平和垂直像素位置,而 s 和 r 分别代表目标边界框的比例(面积)和纵横比,这里是和一个固定尺度进行比较,一般选最大的区间,使得归一化到统一的模型中。后面的是通过kalman滤波进行跟踪之后的结果。
  2. 采用匈牙利匹配对这些目标进行匹配,这中间不同目标之间的好感度,我们采用预测边界框之间的交并比(IoU)来计算,当然我们也不会一位的进行配对,需要设计最小交并比(IoU),也就是说交并比太小我们没有必要强行匹配。
  3. 文章发现边界框的 IoU 距离隐式处理由目标经过引起的短时遮挡。具体地说,当遮挡物盖过目标时,只检测到遮挡物。尽管隐藏目标离检测框中心更近,但 IoU 距离更倾向于具有相似比例的检测。这使得可以在不影响覆盖目标的情况下,通过检测对遮挡目标进行校正。
  4. 当目标进入和离开图像时,需要相应地创建或销毁唯一标识。对于创建跟踪程序,文中认为任何重叠小于 IoUmin 的检测都表示存在未跟踪的目标。使用速度设置为零的边界框信息初始化跟踪器。由于此时无法观测到速度,因此速度分量的协方差用较大的值初始化,反映出这种不确定性。此外,新的跟踪器将经历一个试用期,其中目标需要与检测相关联以积累足够的证据以防止误报的跟踪。
  5. 最后的最后,我们对于一个对象的建立和销毁,需要加入延时判断,这样才不会让我们的目标来回跳动,增加目标融合的稳定性。

3. 升华

最近奇葩说看得有点多,讲完我的故事还需要价值升华!朋友们2019年是自动驾驶的寒冬,那又怎样,宝剑锋从磨砺出,梅花香自苦寒来。越是遇到这样的窘况,越能体现我们坚守的可贵,这是一个不缺梦想的时代,缺的是你为梦想所付出的行动。

自动驾驶(六十四)---------匈牙利匹配相关推荐

  1. 自动驾驶(十四)---------车道线检测

    目前车道线检测主要有两种方法:传统方法,深度学习,本文主要从传统方法出发来介绍车道线检测,毕竟Mobileye也没有用到太多的深度学习(以前和Moblieye有交流). 再者,一直以来我们传统汽车行业 ...

  2. 【正点原子Linux连载】第六十四章 Linux 多点电容触摸屏实验 -摘自【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.0

    1)实验平台:正点原子阿尔法Linux开发板 2)平台购买地址:https://item.taobao.com/item.htm?id=603672744434 2)全套实验源码+手册+视频下载地址: ...

  3. QT开发(六十四)——QT样式表(二)

    QT开发(六十四)--QT样式表 本文主要翻译自QT官方文档Qt Style Sheets . 五.QT样式表参考 QT样式表支持多种的属性.状态和子控件,使得定制组件的外观成为可能. 1.组件 以下 ...

  4. DockOne微信分享(六十四):基于Docker实现DevOps的一些探索

    本文讲的是DockOne微信分享(六十四):基于Docker实现DevOps的一些探索[编者的话]本次分享从DevOps介绍:Docker介绍:基于Docker实现DevOps的优势:Docker化D ...

  5. [Python从零到壹] 六十四.图像识别及经典案例篇之图像傅里叶变换和傅里叶逆变换详解

    祝大家新年快乐,阖家幸福,健康快乐! 欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所 ...

  6. 第六十四章 SQL函数 INSTR

    文章目录 第六十四章 SQL函数 INSTR 大纲 参数 描述 INSTR, CHARINDEX, POSITION和$FIND 示例 第六十四章 SQL函数 INSTR 返回子字符串在字符串中的位置 ...

  7. Console-算法[for]-国王与老人的六十四格

    ylbtech-Arithmetic:Console-算法[for]-国王与老人的六十四格 1.A,案例 -- ============================================ ...

  8. JavaScript学习(六十四)—关于JS的浮点数计算精度问题解决方案

    JavaScript学习(六十四)-关于JS的浮点数计算精度问题解决方案 您的语言没有中断,它正在执行浮点数学运算.计算机只能本地存储整数,因此它们需要某种表示十进制数字的方式.此表示并不完全准确.这 ...

  9. 信息系统项目管理师核心考点(六十四)信息安全基础知识重要概念

    科科过为您带来软考信息系统项目管理师核心重点考点(六十四)信息安全基础知识重要概念,内含思维导图+真题 [信息系统项目管理师核心考点]信息安全基础知识重要概念 1.加密技术 ①对称加密[加密与解密的秘 ...

  10. C语言/C++常见习题问答集锦(六十四) 之兔子繁殖(递归与非递归)

    C语言/C++常见习题问答集锦(六十四) 之兔子繁殖(递归与非递归) 程序之美 1.C语言,计算1乘以3×5*-乘n的积,并输出结果,n值由键盘接收. #include<stdio.h>v ...

最新文章

  1. Python 多版本安装模块
  2. 剖析一个再次调整的seo排名案例
  3. 源恩教育计算机,源恩计算机二级
  4. log python_基于Python log 的正确打开方式
  5. linux下MySQL与jdk安装
  6. halcon轮廓擦除_halcon第十二讲,毛刺去除
  7. 学点数学(5)--线性规划对偶形式的理解
  8. 斯皮尔 皮尔森 肯德尔_一起来学应用统计学(全部)(二)持续更新
  9. 调取百度地图接口,实现取自己的实时位置,然后可以在百度地图上添加信息标注...
  10. 02-01 Python 安装与pip
  11. Flume之介绍 核心组件 可靠性 恢复性
  12. vue-cli脚手架npm相关文件解读(7)dev-server.js
  13. html日期判断程序,javascript – HTML5日期验证
  14. STC12LE5612AD芯片使用心得(一)芯片介绍
  15. Air202入坑指南2---LED闪烁
  16. 什么是 AngularJS?
  17. 应用之星VS AppCan——对比两大移动开发平台
  18. 单幅图像去雾java_一种基于深度学习的单幅图像去雾方法与流程
  19. 【ubuntu】解决 Certificate verification failed: The certificate is NOT trusted
  20. MonoRail学习笔记三:使用方便功能强大的routing功能

热门文章

  1. c语言字符串碱基互补配对,碱基互补配对原则
  2. 使用 2 个 ESP32 设备通过 AT 指令建立 BT 配对连接
  3. 树莓派4B:安装QT5开发环境
  4. 小猿日记(10) - 网站发展记录
  5. access数据库剔除重复项_access数据库查询时如何让查出来的数据自动去除重复项...
  6. ABAQUS 工程仿真分析基础入门到精通视频教程
  7. RK3588 RK628D调试HDMI-IN(一)
  8. cat linux日志,Linux日志查看命令
  9. 区块链+保险:众安在线养鸡,人寿精准扶贫
  10. linux ora 01157,案例:Oracle报错ORA-01157 ORA-01110 数据启动报错RMAN恢复数据库思路