使用ScanShadowsFilter过滤激光雷达拖尾
什么是拖尾现象
理想的激光脉冲打在目标上是一个点,但是实际上激光出射都存在一定的发散角,打在物体上时光斑是一个面。因此,当存在前后两个物体,且激光正好打在前面一个物体的边缘时,就有可能出现一部分激光能量打在了后面的物体上,这时的回返光就是两个光斑反射光的叠加。这时雷达会判断测量目标在这两个面之间,造成拖尾现象。
如何解决该问题
发生拖尾现象时,激光束呈射线状,我们可以根据这一现象来去除问题数据。据此得到下图中的数学问题:
转换坐标系,可以比较容易得出目标角,从而判断目标角是否在阈值范围内。
代码实现
本着不重复造轮子的原则,我们可以用laser_filters包中的ScanShadowsFilter插件来移除有拖尾(veiling effect)现象的数据。如上图所示,假设激光的原点是OOO,对于任何两个点P1P_1P1和P2P_2P2,则形成角∠OP1P2\angle{OP_1P_2}∠OP1P2,如果该角度小于最小阈值角度(min_angle)或大于最大阈值角度(max_angle),我们将该点及其附近符合条件的点移除。
参数:
min_angle (double)
最小阈值角度(角度制)
max_angle (double)
最大阈值角度(角度制)
window (int)
需要计算的目标角的窗口大小
neighbors (int)
需要删除拖尾数据附近数据(且该数据大于拖尾数据)的个数
测试结果
scan_filter_chain:
- name: shadowstype: laser_filters/ScanShadowsFilterparams:min_angle: 5max_angle: 175neighbors: 3window: 2remove_shadow_start_point: false
过滤前,可以看到存在拖尾现象的数据有三处,如下图所示:
过滤后,如下图所示,存在拖尾现象的数据已被滤除,但是正常数据也被移除了一部分,可以通过调节neighbors大小来减少影响。
参考
官方wiki
插件源码
使用ScanShadowsFilter过滤激光雷达拖尾相关推荐
- HPLC鬼峰、基线漂移、拖尾、分叉峰、保留时间漂移、柱压过高等系列问题解析
HPLC鬼峰.基线漂移.拖尾.分叉峰.保留时间漂移.柱压过高等系列问题解析 高效液相色谱法按分离机制的不同分为液固吸附色谱法.液液分配色谱法(正相与反相).离子交换色谱法.离子对色谱法及分子排阻色谱法 ...
- 时间序列+截尾和拖尾
时间序列+截尾和拖尾 怎么看图可以认为拖尾? 怎么看图可以认为1阶截尾? 什么算拖尾?什么又算截尾? 怎么看图发现周期为多少期? ACF第0期,代表与自身的相关性,所以恒为1. AR: MA:
- telegraf输出MySQL_如何使用Telegraf拖尾远程日志文件
我环顾四周,找到了解决方法: Telegraf的inputs.tail插件有拖尾管道的选项,我们可以使用它来监控远程文件. 假设serverA有日志文件,而serverB是Telegraf正在运行的地 ...
- 时间序列的截尾和拖尾_R语言:时间序列(一)
01 解决什么问题 在社会活动中经常可见按照时间顺序记录下来的随机事件观察值,例如每年死亡人数序列,每年糖尿病发病人数序列,医院门诊每日诊治病例数序列.这类数据的特性是相邻时间点的观察值之间具有明显的 ...
- Cocos Creator 的实现拖尾效果
在游戏中,有时会需要在某个游戏对象上加上移动后的轨迹若隐若现的效果.使得游戏的效果较好,比如游戏大招,刀光,法术,流星划痕之类. Cocos Creator提供了一种内置的拖尾渐隐效果的实现方法:组件 ...
- html鼠标拖尾效果,JS实现鼠标移动拖尾
本文实例为大家分享了JS实现鼠标移动拖尾的具体代码,供大家参考,具体内容如下 JS 代码 function getMousePos(event) { var e = event || window.e ...
- HTML5 canvas 拖尾效果(或尾巴 或方向标 或留痕。。。)
[canvas]带拖尾效果的旋转扩散 使用 HTML5 canvas 制作一个圆形的拖尾,以及附加上拖尾的扩散效果 我说说的拖尾,就是拖着一个尾巴,其他简短的名词暂时想不到了.下图效果弄出来,着实费劲 ...
- Unity TrailRenderer实现拖尾
目录 1. TrailRenderer 1.1 常见属性 1.2 曲线图调节 1.3 颜色设置 2. 小案例 屏幕划线 1. TrailRenderer 1.1 常见属性 顶部曲线图 拖尾结构 tim ...
- ARIMA模型的拖尾截尾问题
什么是截尾和拖尾? (1)p阶自回归模型 AR(P) AR(p)模型的偏自相关函数PACF在p阶之后应为零,称其具有截尾性: AR(p)模型的自相关函数ACF不能在某一步之后为零(截尾),而是按指数衰 ...
最新文章
- 机器人 海难饥荒_饥荒:这个人物后期轻松单挑Boss,缺点却很小,大力士都比不过...
- urlrewrite实现之HTTP 运行库支持
- odbc驱动程序管理器连接未打开_Windows 10 怎么修复 Windows 中的 Wi-Fi 连接问题,我教你...
- 看面试题感觉生疏的知识点
- 逻辑盘下的所有目录完全共享_Python File I/O之读取路径下所有目录和文件
- 华为的mysql数据库如何登陆_怎么登陆mysql数据库
- iOS之网络数据下载和JSON解析
- DirectShow基础类库开发参考文档
- 数字图像算术编码python_算术编码的python实现
- 因子分析(FA)算法简述
- 安装ANSYS、SolidWorks、MATLAB等软件出错解决办法汇总(此大乘佛法可解决99.9%的问题)
- android微信配色,万能微信公众号配色模板(神仙配色太好看了)
- Python手撕周杰伦158首歌之后,结果很尴尬,TF-IDF有缺陷,以为AI是王者
- LiLei和HanMeiMei的隐式马尔可夫爱情
- 六级考研单词之路-三
- 阿里云物联网平台搭建
- 新媒体运营 | 6个自动写文案的宝藏网站,助你摆脱灵感枯竭
- 3.9 haas506 2.0开发教程-example-oled
- tensorflow中将标注文件写到train.txt, test.txt,trainval.txt中
- JDBC链接中的问题
热门文章
- 泥瓦匠想做一个与众不同的技术匠
- IIS Express配置使通过IP访问
- Python: 第三方模块(modules)的安装位置 (2014-08-24 23:19:18)转载▼ 标签: site-packages dist-packages 默认安装目录	分类: Pyth
- pikachu File Inclusion 文件包含漏洞 (皮卡丘漏洞平台通关系列)
- 华为v5服务器安装2012系统,裸金属服务器安装v5
- jetson nano开电源_NVIDIA Jetson Nano开发者套件入门指南
- 【硬件工程师炼成之路】器件篇 铝电解电容 电感 磁珠
- ImageIO类的使用
- 【JPA/ddl-auto】关于JPA下hibernate通过设置ddl-auto完成数据库自动创建表格
- 183. Customers Who Never Order没有下过订单的顾客MySQL