3D降噪_时域降噪待补充
视频去噪方法按照处理域的不同可分为空间域、频域、小波域、时域、时-空域去噪等,但是不同域之间的去噪方法会发生重叠现象,或者一种去噪方法会或涉及多个处理域。例如,在时域或时-空域去噪方法中也可使用频域的方法,即将视频序列的全部或一部分通过傅里叶变换转换至频域后,再使用时域或时-空域的形式来进行去噪处理。
视频去噪方法中的空间域、频域和小波域等,与图像去噪中的相应方法基本一致,只是均将其扩展为对多倾图像进行处理,并利用视频信号中更多的冗余信息进行了优化,W达到更好的去噪效果。空间域去噪是在原始视频序列中直接对像素值进行代数运算。频域去噪将视频序列通过傅里叶变换转换至频域,对代表噪声的频率进行衰减并最大程度保留视频的原始信息。小波域将视频序列转换至时-频域后再进行去噪处理。
时域去噪
时域去噪方法仅考虑图像序列在时间维度上的相关性,运算简单、效率高,并且不会引入空间模糊的现象。根据其是否采用运动补偿,可将其区分为非运动补偿的时域去噪方法和运动补偿的时域去噪方法。
非运动补偿的时域去噪
非运动补偿的时域去噪是一种计算比较简单的视频去噪方法,与图像的空域去噪算法非常相似。
f
(
i
,
j
,
k
)
=
∑
m
n
w
(
m
)
g
(
i
,
j
,
k
−
m
)
f(i,j,k) = \sum_{m}^{n}w(m)g(i,j,k-m)
f(i,j,k)=m∑nw(m)g(i,j,k−m)
其中,
w
(
m
)
w(m)
w(m)是滤波系数,m,n是视频序列待处理当前第K帧与之前粗存储的第一帧的帧间距。
非运动补偿的时域滤波器的降噪效果与滤波器的长度,与滤波的帧数相关,当参与滤波的帧数越大时,抑制噪声的效果越好。但当视频中存在运动时,会造成时域模糊现象,产生的失真也越大。因而非运动补偿的时域滤波器与空域滤波器相同,也需要在抑制噪声和防止失真中寻找一个平衡点。非运动补偿的时域滤波器往往都需要存储较多帧图像,从而获得好的去噪效果,但这样会对存储资源有较大的需求。
递归型时域滤波器只需要存储少量视频帧,并且其所需要控制的参数也更少。
f
(
i
,
j
,
k
)
=
(
1
−
w
)
∗
f
(
i
,
j
,
k
−
1
)
+
w
∗
g
(
i
,
j
,
k
)
f(i,j,k) = (1-w)*f(i,j,k-1)+w*g(i,j,k)
f(i,j,k)=(1−w)∗f(i,j,k−1)+w∗g(i,j,k)
其中,
f
(
i
,
j
,
k
−
1
)
f(i,j,k-1)
f(i,j,k−1)表示前一帧图像的滤波输出值,
g
(
i
,
j
,
k
)
g(i,j,k)
g(i,j,k)表示受噪声影响的当前帧图像,
w
w
w是权重系数。这种方法只需要存储前一帧图像,设定的权重参数只有一个,能够有效减少算法的复杂度。
运动补偿的时域去噪
运动补偿的时域去噪方法能够较为有效地避免产生时域模糊现象,其通过运动匹配找到当前像素在参考帖中的对应像素,尽量保证时间维度的平稳性,选取合适的像素参与滤波W提高最后的去噪效果。
- 首先,其根据块匹配方法找到参考峽中对应的像素块,然后比较两个像素块的灰度值差异,根据灰度值差异的大小赋予不同的权重。
f
(
i
,
j
,
k
)
=
w
∗
g
(
i
,
j
,
k
)
+
(
1
−
w
)
∗
g
(
i
+
p
,
j
+
q
,
k
−
1
)
f(i,j,k) = w*g(i,j,k)+(1-w)*g(i+p,j+q,k-1)
f(i,j,k)=w∗g(i,j,k)+(1−w)∗g(i+p,j+q,k−1)
其中,
g
(
i
,
j
,
k
)
g(i,j,k)
g(i,j,k)表示当前帧中的像素,
g
(
i
+
p
,
j
+
q
,
k
−
1
)
g(i+p,j+q,k-1)
g(i+p,j+q,k−1)表示当前像素在参考帧中的对应像素,其通过运动匹配所得到的运动向量为
(
p
,
q
)
(p,q)
(p,q),
f
f
f是最终的滤波输出值。
先通过块匹配找到不同顿帧之间的对应像素块,然后按照一定的规则对时域上的像素点赋予不同的权重值,然后完成最终的滤波操作。
我的个人博客主页,欢迎访问
我的CSDN主页,欢迎访问
我的GitHub主页,欢迎访问
3D降噪_时域降噪待补充的更多相关文章
- Python图片验证码降噪 — 8邻域降噪
简介 图片验证码识别的可以分为几个步骤,一般用 Pillow 库或 OpenCV 来实现,这几个过程是: 1.灰度处理&二值化 2.降噪 3.字符分割 4.标准化 5.识别 所谓降噪就是把不需 ...
- 主动降噪,通话降噪及AI降噪之辨
近日,三星发布的Buds Pro 耳机中,宣传有以下功能.其中涉及到噪声的,有主动降噪,通话降噪及智能降噪,很多人对他们的具体用途容易混淆,今天我们来辨析一下. 主动降噪和通话降噪完全不是一个概念,无 ...
- 3D数学基础_图形与游戏开发
https://blog.csdn.net/popy007/article/list/2?t=1& //向量计算相关文章 https://www.baidu.com/link?url=48C ...
- Unity3D_(游戏)双人3D坦克_简易版
双人3D坦克实现 player1: WSAD控制上下左右 空格键发射炮弹 player2: IKJL可控制上下左右 B键发射炮弹 每个坦克只有100hp,子弹击中1次扣30hp,hp时时显示在坦克上 ...
- camera数字降噪(DNR)
camera数字降噪(DNR) 闭路电视摄像机 无论多么出色和弱光,在黑暗中拍摄视频监控录像时都会不可避免地产生一些噪音.噪声是任何电子通信中不可避免的部分,无论是视频还是音频.本质上是静态的–视频信 ...
- 主动降噪(Active Noise Control)
智能耳机 人机交互 智能声学终端 智能耳机 智能音箱 智能听力器 喇叭单体 动圈喇叭 新材料 DLC 石墨烯 陶瓷单位 吸音材料 智能芯片 阵列式麦克风 声纹传感器 演算法 降噪算法 智能听力保护 A ...
- 单独编译和使用webrtc音频降噪模块(附完整源码+测试音频文件)
单独编译和使用webrtc音频增益模块(附完整源码+测试音频文件) 单独编译和使用webrtc音频回声消除模块(附完整源码+测试音频文件) webrtc的音频处理模块分为降噪ns,回音消除aec,回声 ...
- 编解码再进化:Ali266 与下一代视频技术
过去的一年见证了人类百年不遇的大事记,也见证了多种视频应用的厚积薄发.而因此所带来的视频数据量的爆发式增长更加加剧了对高效编解码这样的底层硬核技术的急迫需求. 新视频编解码标准 VVC 定稿不久之后, ...
- 论文翻译:2020_Joint NN-Supported Multichannel Reduction of Acoustic Echo, Reverberation and Noise
论文地址:https://ieeexploreieee.fenshishang.com/abstract/document/9142362 神经网络支持的回声.混响和噪声联合多通道降噪 摘要 我们考虑 ...
- Deep Learning(深度学习)学习笔记整理
申明:本文非笔者原创,原文转载自:http://www.sigvc.org/bbs/thread-2187-1-3.html 4.2.初级(浅层)特征表示 既然像素级的特征表示方法没有作用,那怎样的表 ...
随机推荐
- 2021年蓝桥杯python真题-路径(数论+动态规划)(LCM、GCD和DP详细介绍)干货满满~
欢迎大家阅读本文章 如果大家对LCM和GCD不是很熟悉,这篇文章将对你有帮助! 本文章也会把动态规划做一定的介绍 题目: GCD和LCM的讲解: GCD的实现-辗转相除法: 在数学中,辗转相除法,又称 ...
- 2023 Hubei Provincial Collegiate Programming Contest题解 C F H I J K M
补题链接:https://codeforces.com/gym/104337 原文链接:https://www.eriktse.com/algorithm/1136.html M. Different ...
- C#自行实现安装卸载程序(不使用官方组件)
正规软件建议还是使用官方的标准安装程序组件,因为官方的标准安装/卸载组件能更好的与操作系统衔接,安装和卸载流程更加规范. 今天提供一种野路子,全用代码实现安装卸载器. 需要写一个程序,包含安装器.卸载 ...
- 使用 Lambda 函数将 CloudWatch Log 中的日志归档到 S3 桶中
> 作者:[SRE运维博客](https://www.cnsre.cn/) > 博客地址:[https://www.cnsre.cn/](https://www.cnsre.cn/) &g ...
- python库Munch的使用记录
开头 日常操作字典发现发现并不是很便利,特别是需要用很多 get('xxx','-') 的使用,就觉得很烦,偶然看到Kuls大佬公众号发布的一篇技术文有对 python munch库的使用, 使得字典 ...
- node可以用nvm快速切换版本,golang如何快速切换版本?用gvm就行。
使用 gvm 可以带来以下好处: 快速切换 Golang 版本,方便进行版本测试和开发: 可以在多个项目中同时使用不同版本的 Golang 包和工具,避免冲突: 可以通过 gvm 管理不同版本的 Go ...
- 2021-03-10:一个数组上共有 N 个点,序号为0的点是起点位置,序号为N-1 的点是终点位置。现在需要依次的从 0 号点走到 N-1 号点。但是除了 0 号点和 N-1 号点,他可以在其余的 N-2 个位置中选出一个点,并直接将这个点忽略掉,问从起点到终点至少走多少距离?
2021-03-10:一个数组上共有 N 个点,序号为0的点是起点位置,序号为N-1 的点是终点位置.现在需要依次的从 0 号点走到 N-1 号点.但是除了 0 号点和 N-1 号点,他可以在其余的 ...
- Django4全栈进阶之路4 APP注册
在 Django 4 中,应用(app)的注册是通过在项目的 settings.py 文件中添加应用名称来实现的.具体步骤如下: 在项目的根目录下创建一个应用目录,该目录应包含一个 apps.py 文 ...
- select_related和prefetch_related函数
在数据库存在外键的其情况下,使用select_related()和prefetch_related()很大程度上减少对数据库的请求次数以提高性能 在表中查找数据的时候,使用外键表related_nam ...
- shader编程经典:分形--科赫曲线
序言 科赫(雪花)曲线是一个经典分形图案,来一起领略下分形之美.本篇内容用到一些基础的内容,例如UV的理解和画线技巧,有需要的话可以参考合集的画圆和画线两篇文章. 示例 shadertoy 代码: # ...