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.初级(浅层)特征表示 既然像素级的特征表示方法没有作用,那怎样的表 ...
随机推荐
- SRAM 测试总结
SoC随着工艺进步设计复杂度增加,embeded sram也越来越多.在40nm SoC产品Sram一般在20Mbits左右,当工艺发展到28nm时Sram就增加到100Mbits.如果考虑AI产品, ...
- 【GPT开发】人人都能用ChatGPT4.0做Avatar虚拟人直播
0 前言 最近朋友圈以及身边很多朋友都在研究GPT开发,做了各种各样的小工具小Demo,AI工具用起来是真的香!在他们的影响下,我也继续捣鼓GPT Demo,希望更多的开发者加入一起多多交流. 上一篇 ...
- mybatis中useGeneratedKeys用法--插入数据库后获取主键值
前言:今天无意在mapper文件中看到useGeneratedKeys这个词,好奇就查了下,发现能解决我之前插入有外键表数据时,这个外键获取繁琐的问题,于是学习敲DEMO记录 在项目中经常需要获 ...
- VUE的路由懒加载及组件懒加载
一,为什么要使用路由懒加载 为给客户更好的客户体验,首屏组件加载速度更快一些,解决白屏问题 二,懒加载简单来说就是延迟加载或按需加载,即在需要的时候的时候进行加载 三,常用的懒加载方式有两种:即使用v ...
- 使用 shell 脚本自动申请进京证 (六环外) —— debug 过程
问题现象 用 shell 脚本写了一个自动办理六环外进京证的工具 <使用 shell 脚本自动申请进京证 (六环外)>,然而运行这个脚本总是返回以下错误信息: { "msg&qu ...
- ET–异步协程使用–TimerComponent篇
之前可能也有群友写过一些关于ET框架中TimerComponent的使用教程,我这里写下关于TimerComponent的常规使用跟一些不常规使用的方法以及一些情况下需要使用到的不同的函数. 先来看看 ...
- Vue中使用原生js实现轮播图滑动效果
1.在视图层模板里面绑定touchstart和touchend事件 <div class="tuWap" @touchstart="touchStart" ...
- 2022-05-27:现在有N条鱼,每条鱼的体积为Ai,从左到右排列,数组arr给出。 每一轮,左边的大鱼一定会吃掉右边比自己小的第一条鱼, 并且每条鱼吃比自己小的鱼的事件是同时发生的。 返回多少轮之
2022-05-27:现在有N条鱼,每条鱼的体积为Ai,从左到右排列,数组arr给出. 每一轮,左边的大鱼一定会吃掉右边比自己小的第一条鱼, 并且每条鱼吃比自己小的鱼的事件是同时发生的. 返回多少轮之 ...
- 2021-04-09:rand指针是单链表节点结构中新增的指针,rand可能指向链表中的任意一个节点,也可能指向null。给定一个由Node节点类型组成的无环单链表的头节点 head,请实现一个函数完成这个链表的复制,并返回复制的新链表的头节点。 【要求】时间复杂度O(N),额外空间复杂度O(1) 。
2021-04-09:rand指针是单链表节点结构中新增的指针,rand可能指向链表中的任意一个节点,也可能指向null.给定一个由Node节点类型组成的无环单链表的头节点 head,请实现一个函数完 ...
- Selenium - 基础知识介绍
Selenium - 基础知识介绍 介绍 Selenium是ThoughtWorks员工在业余时间开发并维护的开源项目,并且在ThoughtWorks的项 目中被广泛应用. 简单地说,Selenium ...