本文仅用于自己学习整理,不保证内容的完整性和准确性,仅供其他朋友参考。转载请注明出处。

噪声和信号处理是比较低层次的一种处理,但也非常重要。近日学习了一些信号处理与噪声处理的论文,做以下梳理。

目录

  • 1. 灰度数据的信号处理
  • 2. 噪声的种类、成因与特性
    • 2.1 背景噪声 (Background Activity Noise)
    • 2.2 阈值波动噪声 (没有名词,自己概括起的)
    • 2.3 热点噪声 (Hot pixel / White pixel)
    • 2.4 其他的小众噪声
    • 2.5 边缘产生数据的不稳定性
  • 3. 噪声的建模与滤波方法
    • 3.1 阈值噪声
    • 3.2 背景噪声
    • 3.3 热点噪声滤波
    • 3.4 神经网络滤波
    • 3.5 其他滤波方法
  • 4. 滤波评价指标
  • 参考文献

1. 灰度数据的信号处理

众所周知,许多事件相机提供多种数据格式,包括传统图像输出,以及事件流。那么在事件相机的信号处理上,也分为:灰度图像上的信号处理,以及事件的噪声处理。一般而言,在对事件数据进行处理的滤波方法较多且较为常用。这一小节对灰度值图像上的处理方法进行简单介绍。

对整幅图像进行处理:一种方法是简单的对完整的整幅图像进行滤波处理,例如进行高斯滤波等。完整图像的方式,可以是相机直接输出的完整图像,也可以是通过重建方式恢复的图像(泊松重建)。但无论哪种方式,都需要一定的时间延迟从而形成完整图像,还是绕回了传统图像处理方法,并没有研究新意。

对事件流数据进行信号处理:对于ATIS传感器而言,每个像素在收到DVS触发后输出亮度的绝对值,那么这样一来是一个异步的、离散的数据点,对这种数据点进行滤波。例如采用离散傅里叶变换(DFT)方法[1],或改进传统的卷积滤波方法,采用不断更新一个内部状态实现在数据流上的直接进行卷积滤波[2]。

以上的研究,主要围绕信号处理,研究的机构和人员大多从事信号处理相关的工作。从事件相机实际应用角度来说还是有一点儿差距,所以主要的滤波等研究还是由为完成某项功能而设计的滤波方法。

2. 噪声的种类、成因与特性

从这里开始,我们不考虑灰度图像, 而只考虑事件中的噪声,即纯“DVS”产生的噪声。目前见到了以下几种噪声:

2.1 背景噪声 (Background Activity Noise)

背景噪声我认为是最明显的一类噪声。当某个像素出产生了一个不是由于事件源而产生的事件,那么这就是背景噪声,也就是说这里不该有事件发生却产生了。一般来说相机出厂商会提供这一性能指标,一般以“平均每个像素在1s内产生的噪声”进行衡量,常见事件相机的噪声值一般在0.03~0.2(25摄氏度)。背景噪声强度与温度有关,温度越高数量越多,但与场景亮度无关。

背景噪声的产生原因,主要是由于电路器件的不稳定,例如:电荷注入效应(Charge injection),热噪声(Thermal noise),开关漏电流(Leakage of the transistor section of the reset switch)等。

背景噪声的主要特性是:不相关性。即每个噪声产生和周围其它的事件没有任何关联。

2.2 阈值波动噪声 (没有名词,自己概括起的)

讨论阈值变化噪声前要清楚一个事件产生的原理:某像素亮度的变化达到某个阈值C。这个C并不是个常量,因为与当前亮度有关,是亮度的恒定百分比。噪声的产生是由于电路比较电流等的电流不稳定。造成并没有达到实际阈值时产生了事件或超过了阈值后仍没有产生事件。

这种噪声人眼看不出来,毕竟是极其细微的变化。但某些应用场景下考虑这个问题进行建模可以提高性能。

2.3 热点噪声 (Hot pixel / White pixel)

和传统相机一样,事件相机也会产生热点噪声。产生的原因可能是像素损坏,或充放电装置存在问题导致产生高频事件。用一个图片解释背景噪声和热点噪声[3]。背景噪声是没有运动物体经过时产生的噪声,而热点噪声是在整个时间轴上一直出现的事件。

热点噪声的特性,显然是高频出现、周围没有相关事件。

2.4 其他的小众噪声

一些噪声没有太多研究,但有些地方提到,也总结到这里:
时间戳的随机性:事件发生时由于某些原因,时间戳并不是严格意义的时间戳;可能原因个人推测与一些传感器输出策略有关;
空洞holes与false negative:即本应产生事件,但由于种种原因没有发生;暂时没有见到分析这种噪声的成因与建模。个人认为或许与总线数据冲突有关;

2.5 边缘产生数据的不稳定性

当一个边缘发生运动时,会产生一系列的事件输出;最理想情况下,一条边缘应该产生的事件是清晰地,但实际会产生大量的事件聚集。有些论文认为这也属于噪声。边缘强度高、运动速度快,则产生的虚假边缘较多。文章[10]将一个边缘产生的第一个事件称作"Inceptive event",而之后的称作"Trailing events",尾事件的数量在一定程度上反映了边缘的幅值。

但我个人认为这并不能算是噪声,只是数据不理想(可能在一些分类问题上影响比较大)。当然也有滤波方式,将在下一节介绍。

3. 噪声的建模与滤波方法

3.1 阈值噪声

对阈值噪声而言,一般认为实际比较的阈值是在理论阈值C附近的高斯分布,一般出产商也会给出高斯分布的标准差σ\sigmaσ,常见取值在2%~4%左右,影响并不是很大。那么在建模时,就用概率形式的高斯分布好了。

至于为什么要考虑这种噪声?论文[4]中进行的是分类任务,认为考虑这种噪声后,能够体现出来该产生事件而并没有产生、以及不该产生事件而产生了的概率分布,从而进行分类任务会更准确吧。我个人感觉用处不大。

3.2 背景噪声

论文[5]经过试验分析得出,背景噪声的产生符合泊松分布,可以由此进行建模。但实际用的时候我还暂时没有见过使用数学模型进行推导的论文。

背景噪声与真实事件最大的区别在于,背景事件与其他事件并没有相关性,由此滤波方法的核心都是围绕:相关性滤波

简单来说,判断一个事件发生时,一段儿时间之内,在附近范围内,如果有其他事件发生,则认为这个事件不是凭空产生的,而是真实的事件源激发的。一般“附近范围”定义为周围一圈像素,即8个点,“一段儿时间”一般是微秒级。

围绕相关型滤波,产生了一些列类似的方法。例如如果采用同像素尺寸大小的一块内存,记录历史发生的事件,由此判断时空窗是否有关联的事件,就是最基础的滤波方法[8]。但[5]的思想指出,如果我们想把滤波这个功能做到sensor上或者更贴近传感器段,那么对内存的要求必然是越小越好。为此[6]将整个传感器分辨率进行分块处理,每块为s个像素,从而将内存占用复杂度降为了log(N/s2)log(N/s^2)log(N/s2),但[5]的方法更为精巧,只用两组长宽大小的数组记录事件发生历史,复杂度降为了log(N)log(N)log(N)。
论文[3]给出了更为细致的数学形式,还定义了事件密度矩阵和事件密度,本质上讲只是将时空窗内有1个事件改进为多个累加并判断阈值,改进的初衷是如果只是判断时空窗有无事件,可能造成同样是噪声但恰巧出现在了噪声附近,造成了错误的关联性。另外这篇论文的分析和实验做的还是很到位的,数学严谨给出了形势也是值得肯定。

3.3 热点噪声滤波

唯一看到的涉及到热点噪声的论文就是[3],所采用的滤波方法是由粗到细分两步:第一步采用较宽松阈值尽可能滤波掉BA噪声,第二步采用严格一些的阈值判断每个点附近(此时不包括本身)是否有足够的关联事件。本质上是只要把这个点的事件排除,看周围是否有关联即可。

3.4 神经网络滤波

既然是仿生物传感器,滤波当然也有用神经网络做的。神经网络滤波主要处理的还是BA噪声。[7]提出Event Probability Mask这一概率形式判断一个事件是噪声的概率,并由此设计降噪神经网络EDnCNN,从而实现降噪。从效果图看,效果还是不错的。

3.5 其他滤波方法

最近邻滤波 (Nearest neighbor filtering)
最近邻滤波基本思想是,当一个事件发生时,极短时间内这个事件周围不应该发生其他事件。看起来与去背景噪声的相关性思路反,但在边缘运动产生大量数据时或许是一个不错的处理方式;

Refractory Filtering
“倔强性滤波”哈哈。指的是当一个像素发生事件后,一段儿时间之内这个像素不应该再次出现事件,以此来抑制边缘运动过程中产生的大量数据,使边缘更加sharp。

这两种方法出现在了[9]中但我并不认为之前没有其他文章采用过。

4. 滤波评价指标

如何衡量一个滤波方法的好坏?有哪些滤波的benchmark?很遗憾这两个目前都没有统一的标准。

关于衡量滤波的好坏,一般核心观点还是,看本来是噪声的事件,滤波漏掉了多少;以及不是噪声的事件,错误删掉了多少

如果已知真是事件的生成轨迹,那么可以很轻松的比较滤波后我们剩了多少噪声,以及滤掉了多少真实事件。但大多数情况下是没有GT的。所以只能用其他方式去衡量。

论文[3]采用 noise in real 和 real in noise (NIR/RIN) 方式进行评价,类似于FP和TN。判断滤波后是噪声还是事件的方法类似于寻找近邻距离,如果近邻事件的距离都很小,则认为是真实事件。但我个人感觉既然删除噪声时就是这种思路那么评价标准还是这个是不是有点儿奇怪?另外[7]也给出了一种评价标准,没有认真学习只列在这里。

参考文献

[1]. Quentin Sabatier, et al. Asynchronous Event-Based Fourier Analysis. 2017.
[2]. Cedric Scheerlinck, et al. Aysnchronous Spacial Image Convolutions for Event Cameras. 2019.
[3]. Yang Feng, Hengyi Lv, et al. Event Density Based Denoising Method for Dynamic Vision Sensor. 2020.
[4]. Lionel Fillatre. Bayes classification for asynchronous event-based cameras. 2015.
[5]. Alireza Khodamoradi. O(N)-Space Spatiotemporal Filter for Reducing Noise in Neuromorphic Vision Sensors. 2018.
[6]. H. Liu, et al. Design of a Spatiotemporal Correlation Filter for Event-based Sensor. 2015.
[7]. R. Wes Baldwin, et al. Event Probability Mask (EPM) and Event Denoising Convolutional Neural Network (EDnCNN) for Neuromorphic Cameras. 2020.
[8].Sangil Lee, et al. Edge Detection for Event Cameras using Intra-pixel-area Events. 2019.
[9]. Bharath Ramesh, Hong Yang, et al. DART: Distribution Aware Retinal Transform for Event-based Cameras. 2019.
[10]. R. Wes Baldwin, et al. Inceptive event time-surfaces for object classification using neuromorphic cameras. 2019.

【事件相机整理】信号处理、噪声与滤波相关推荐

  1. 【事件相机整理】角点检测与跟踪总结

    本文仅用于自己学习整理,不保证内容的完整性和准确性,仅供其他朋友参考.转载请注明出处. 前言 角点检测与跟踪,是特征提取与跟踪(Feature tracking)下研究较多的内容.相对其他上层任务来说 ...

  2. 2020年,关于事件相机(event camera)的最新研究论文总结

    本文仅用于学习过程中的一些总结记录.2020年发表的关于事件相机在一些领域的总结. 1. 运动估计 Motion Estimation 有不少关于运动估计的论文,基本是围绕之前最大化事件积累图对比度的 ...

  3. 【CeleX5事件相机使用系列】芯仑相机的EventDenoising是如何实现的

    芯仑自身自带了一个 enableEventDenosing 函数,可以"启用去噪功能".突然好奇,芯仑自身的降噪功能是如何实现的?今天简单查阅了源码,稍作总结整理. 去噪原理 事件 ...

  4. 关于事件相机的整理与思考

    来源丨新机器视觉.韦心雕AI 佐思周彦武老师的事件相机,引发了对帧事件的思考.基于该思考,对事件相机做一个整理,具体算法不去解释.主要参考<Event-based Vision: A Surve ...

  5. 一种事件相机描述子——DART

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 一.背景知识 在物体分类.目标跟踪等问题下,我们经常需要提取物体的一些特征.传统图像中常使用描述子(例 ...

  6. 学习笔记之——Event Camera(事件相机)调研

    本博文是本人调研Event Camera写下的学习记录,本博文的内容来源于网络.paper以及本人学习调研过程的心得,仅供本人学习记录用,不作商业用途. 我们团队在事件相机方面的工作请见: GitHu ...

  7. CVPR2020事件相机(Event Camera)研究文章汇总

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文介绍了CVPR 2020中关于事件相机(Event Camera)的相关研究.所列举的论文由CVP ...

  8. 事件相机特征跟踪-概率数据关联法

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 1.前言 在特征跟踪时,有一个重要的概念是数据关联(Data Association).所谓数据关联, ...

  9. CVPR2021中的事件相机研究

    本文首发于公众号:[事件相机],CVPR2021中的事件相机研究 本文整理了CVPR 2021年中关于事件相机的相关工作(从openaccess上关键词查找得到的,可能有遗漏),并作简要介绍.能力有限 ...

  10. 【事件相机与计算机视觉】论文分享--Event-based Vision meets Deep Learning on Steering Prediction for Self-driving Car

    .前言 事件相机作为一种新型的图像数据形式,由于其时间分辨率高.高动态范围.低功耗的优点,在许多CV问题上有着比传统相机更好的表现.笔者本次分享的是2018年CVPR上发表的一篇文章,将事件相机用于自 ...

最新文章

  1. UTRAN 的用户面和控制面
  2. devkit_如何使用NodeMCU Devkit和Firebase数据库开始物联网
  3. Ubuntu Linux配置Nginx+MySQL+PHP+phpMyAdmin详细步骤
  4. 团队竞争力有多强,你的企业就能走多远
  5. 算法练习day17——190405
  6. mongoDB3.0.2 升级操作
  7. php 内部异步执行顺序,event_loop中不同异步操作的执行顺序
  8. 入门训练 Fibonacci数列
  9. 网站服务器倒闭,云服务器商倒闭怎么办
  10. flutter offset_用Flutter实现58App的首页
  11. ActiveMQ下载与安装(Linux环境下进行)
  12. 深入Java集合学习系列:SynchronousQueue实现原理
  13. 框架 go_Go语言优秀应用开发框架 GoFrame
  14. stm32程序跑飞_mm32芯片使用心得(三)音频播放程序修改
  15. 牛客网-《剑指offer》-二进制中1的个数
  16. 计算机没wps云档怎么办,WPS云空间多大?WPS云文档空间已经用满怎么办?删数据或买VIP-太平洋电脑网...
  17. Arduino PS2手柄小车代码
  18. kettle同步数据 (SAP hana到 Mysql)
  19. 如何关闭CSDN右下角的小广告
  20. 上海亚商投顾:沪指低开高走 锂矿股午后大涨

热门文章

  1. PIC单片机入门教程(四)—— 第一个工程
  2. 乐鱼播放器(乐鱼影音盒) v1.13 官方版
  3. 【菜鸟站长成长记】CuteFTP9 初步使用心得
  4. ESRI产品框架和PostgreSQL对比及GIS技术前景
  5. 国二c语言编程题只看结果吗,全国计算机二级C语言上机考试运行和编译都可以,但是运行出的结果和题目要求的结果不一样...
  6. C语言 设计项目课题,C语言课程设计课题.doc
  7. 移动叔叔MTK6589一键ROOT工具v3.0+by+罗微
  8. js下载activex
  9. Cisco 模拟器rstp生成树
  10. 思科模拟器去除登陆界面