github地址:https://github.com/18150167970/BM3D-color-image

欢迎start(笑)。

首先,上一波原理:https://zhuanlan.zhihu.com/p/46399784

灰度图像方法:

这里引用上述链接的内容:

算法总体流程如图:

主要分为两大步:

第一步,基础估计

1、对于每个目标图块,在附近寻找最多MAXN1(超参数)个相似的图块,为了避免噪点的影响,将图块经过2D变换(代码中使用DCT变换)后再用欧氏距离衡量相似程度。按距离从小到大排序后取最多前MAXN1个。叠成一个三维数组。

2、对3D数组的第三维,即图块叠起来后,每个图块同一个位置的像素点构成的数组,进行DCT变换后,采用硬阈值的方式将小于超参数  的成分置为0。同时统计非零成分的数量作为后续权重的参考。后将第三维进行逆变换。

关于硬阈值参考链接:硬阈值(Hard Thresholding)函数解读

3、将这些图块逆变换后放回原位,利用非零成分数量统计叠加权重,最后将叠放后的图除以每个点的权重就得到基础估计的图像,此时图像的噪点得到了较大的去除。

第二步,最终估计:

1、由于基础估计极大地消除了噪点,对于含噪原图的每个目标图块,可以直接用对应基础估计图块的欧氏距离衡量相似程度。按距离从小到大排序后取最多前MAXN1个。将基础估计图块、含噪原图图块分别叠成两个三维数组。

2、对含基础估计3D数组的第三维,即图块叠起来后,每个图块同一个位置的像素点构成的数组,进行DCT变换,利用如下公式得到系数。

3、将系数与含噪3D图块相乘放回原处,最后做加权平均调整即可得到最终估计图。相对于基础估计图,还原了更多原图的细节。

彩色图像方法:引用http://www.ipol.im/pub/art/2012/l-bm3d/

Adapting the algorithm to color images is easy and can be done in the following steps:

1. First a transformation to a luminance-chrominance space from the RGB noisy image is applied. Y denotes the luminance channel and by U and V the chrominance channels;

2. For each step:

Grouping is only performed with the Y channel;

The 3D block built on Y is used for all three channels;

Collaborative filtering is applied to each channel separately as well as the weighted aggregation.

3. Return to the RGB space by applying the inverse transformation.

简单翻译:

1.将RGB图转为YUV图。

2.每一步都做如下操作:

1)只在Y(亮度通道)进行Grouping;

2)利用Y通道寻找相似块,并且在所有通道建立相似3D块

3)在每一个通道上分别使用协同滤波和 weighted aggregation.

3.再转化为RGB空间

原始图片:

效果图:

代码已经做好注释,对照本文查看即可了解原理。

完(笑)

BM3D 灰度图像和彩色图像去噪实现相关推荐

  1. U-Net深度学习灰度图像的彩色化

    U-Net深度学习灰度图像的彩色化 本文介绍了使用深度学习训练神经网络从单通道灰度图像生成3通道彩色图像的实验.在我看来,虽然它们因主题而异,但结果令人震惊,模型产生了幻觉,原始主题应该是什么颜色. ...

  2. 灰度图像的彩色复原方法 ——以人脸着色为例

    灰度图像的彩色复原方法 --以人脸着色为例 代码文件下载地址 摘要:灰度图像彩色复原在图像修复领域有广泛的应用,由于其涉及从低纬度空间向高纬度空间的映射,故而修复效果存在差异.本文以人脸为例研究灰度图 ...

  3. python灰度图像变彩色_如何在cv2python中实现灰度图像到彩色图像的转换

    我在低通FFt中使用了cv2python,我已经改变了图像的属性,但是这个图像是灰度图像.我想把它改成彩色图像,保留灰度图像的属性---------- import cv2 import numpy ...

  4. 【数字图像处理1】基于matlab的彩色图像去噪

    目录 前言 四种去噪方法---代码及效果 一.中值滤波 二.高斯低通滤波 三.高斯平滑滤波 四.NL-means(非局部均值去噪) 前言 本文将提供4种图像去噪方法,并提供相关代码以及去噪结果图片,其 ...

  5. 图像全变差 matlab,全变差图像重建的交替最小化算法

    全变差图像重建的交替最小化算法 matlab 2021-2-11 下载地址 https://www.codedown123.com/64520.html 全变差图像重建的交替最小化算法 包含灰度图像, ...

  6. 基于深度卷积神经网络(D-CNN)的图像去噪方法

    基于深度卷积神经网络的图像去噪方法   摘要:图像去噪在图像处理中仍然是一个具有挑战性的问题.作者提出了一种基于深度卷积神经网络(DCNN)的图像去噪方法.作者设计的不同于其他基于学习的方法:一个DC ...

  7. Real-world Noisy Image Denoising: A New Benchmark-真实世界噪声图像去噪:一种新的基准

    Real-world Noisy Image Denoising: A New Benchmark 摘要 关键词 介绍 现有数据集 建议的数据集 A. Motivation B. The Datase ...

  8. opencv 处理黑夜_基于 opencv图像去噪

    1. 实验步骤:先为灰度图像添加高斯噪声.胡椒噪声.盐噪声和椒盐噪声,再分别利用算术均值滤波器.几何均值滤波器.谐波和逆谐波均值滤波器进行图像去噪.模板大小为5*5. 核心代码如下: 添加各类噪声: ...

  9. 基于 opencv图像去噪

                       -------------------开通头条号-------------------- 实验名称 图像去噪 实验目的 1.掌握算术均值滤波器.几何均值滤波器.谐 ...

最新文章

  1. C语言数据类型所占空间大小
  2. 某大龄程序员用亲身经历推翻35岁红线:大厂offer拿到手软,35岁才是黄金年龄!...
  3. js中的true,false盲点
  4. 简易的阻尼滚动条的插件
  5. JDK提供的原子类原理与使用
  6. PL/SQL七复合数据结构
  7. 类似TH养车的电商系统设计思路
  8. springmvc限流解决方案
  9. 五阿哥钢铁电商资深运维工程师手把手教你这样玩企业组网
  10. c 语言调用纯汇编函数 1
  11. mac 微信不能设置代理服务器,mac微信能用但是浏览器上不了网
  12. SDL介绍----1、SDL与SDL安全活动
  13. 怎么快速批量修改图片大小?
  14. 此windows副本不是正版_阳光单职业传奇正版-阳光单职业传奇正版官网版v2.0
  15. (转帖)Redis的LRU和LFU区别
  16. 计算机主机的跳线怎么接,手把手教你台式机电脑主板跳线接法
  17. 测绘资质申请标准及好处
  18. Mac 高效程序猿开发必备软件
  19. 数字健康-共建共享 火绒安全将亮相2021中华医院信息网络大会(CHINC)
  20. 如何将多个图片转成文字版的Word

热门文章

  1. Required Integer[] parameter ‘xxx‘ is not present”报错的解决方案
  2. 昆仑万维GameArk签署《网络游戏行业防沉迷自律公约》 共促行业自律
  3. 常见的面试题 (二)
  4. 元器件界的“京东”,站在中国智造的风口飞起来
  5. 谷歌代理商致函谷歌信件全文被披露
  6. Android @Override详解
  7. c#模拟网页实现12306登陆、自动刷票、自动抢票完全篇
  8. RocketMQ—(总结)一篇就搞懂 RocketMQ
  9. 用了 TCP 协议,数据一定不会丢吗?
  10. 教人怎样读书的书——《如何阅读一本书》