解决图像去噪问题

三石目 2018-04-14 12:01:04
将同一块色域中的噪声过滤掉。如下实现图一到图二的效果。
希望大神们可以提供一些思路,最好采用OpenCV或者Matlab可以实现。

...全文
1751 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
BM3D应该可以把
uianster 2018-05-07
  • 打赏
  • 举报
回复
从图一到图二基本上是不可能的。图像已经退化了,恢复后也没有图二那么好。除非你有退化模型,在加上滤掉噪声还可能。
lizhigang34 2018-04-25
  • 打赏
  • 举报
回复
我觉得你可以把图片尝试多做几次膨胀,腐蚀的操作 cvErode腐蚀,cvDilate膨胀
hhhh63 2018-04-24
  • 打赏
  • 举报
回复
中值滤波,加权平均
worldy 2018-04-24
  • 打赏
  • 举报
回复
噪声属于高频信号,你使用适当的滤波器滤波, 但滤波不能产生你有图所示的光点,要想产生光点效果,你应该在PCB拍照时,增加背面光源,(从PCB的孔中透射过来)
Abasin_ 2018-04-23
  • 打赏
  • 举报
回复
椒盐噪声,建议用中指滤波, 如果想保留较好边缘,可以用bileteral 滤波
赵4老师 2018-04-16
  • 打赏
  • 举报
回复
上一页 目 录 下一页 Smooth Smooth 各种方法的图像平滑 void cvSmooth( const CvArr* src, CvArr* dst, int smoothtype=CV_GAUSSIAN, int param1=3, int param2=0, double param3=0, double param4=0 ); src 输入图像. dst 输出图像. smoothtype 平滑方法: CV_BLUR_NO_SCALE (简单不带尺度变换的模糊) - 对每个象素的 param1×param2 领域求和。如果邻域大小是变化的,可以事先利用函数 cvIntegral 计算积分图像。 CV_BLUR (simple blur) - 对每个象素param1×param2邻域 求和并做尺度变换 1/(param1?param2). CV_GAUSSIAN (gaussian blur) - 对图像进行核大小为 param1×param2 的高斯卷积 CV_MEDIAN (median blur) - 对图像进行核大小为param1×param1 的中值滤波 (i.e. 邻域是方的). CV_BILATERAL (双向滤波) - 应用双向 3x3 滤波,彩色 sigma=param1,空间 sigma=param2. 关于双向滤波,可参考 http://www.dai.ed.ac.uk/CVonline/LOCAL_COPIES/MANDUCHI1/Bilateral_Filtering.html param1 平滑操作的第一个参数. param2 平滑操作的第二个参数. 对于简单/非尺度变换的高斯模糊的情况,如果param2的值 为零,则表示其被设定为param1。 param3 对应高斯参数的 Gaussian sigma (标准差). 如果为零,则标准差由下面的核尺寸计算: sigma = (n/2 - 1)*0.3 + 0.8, 其中 n=param1 对应水平核, n=param2 对应垂直核. 对小的卷积核 (3×3 to 7×7) 使用如上公式所示的标准 sigma 速度会快。如果 param3 不为零,而 param1 和 param2 为零,则核大小有 sigma 计算 (以保证足够精确的操作). 函数 cvSmooth 可使用上面任何一种方法平滑图像。每一种方法都有自己的特点以及局限。 没有缩放的图像平滑仅支持单通道图像,并且支持8位到16位的转换(与cvSobel和cvaplace相似)和32位浮点数到32位浮点数的变换格式。 简单模糊和高斯模糊支持 1- 或 3-通道, 8-比特 和 32-比特 浮点图像。这两种方法可以(in-place)方式处理图像。 中值和双向滤波工作于 1- 或 3-通道, 8-位图像,但是不能以 in-place 方式处理图像. 收录时间:2007年7月18日,21点12分 编辑时间:2007年7月18日,21点12分
三石目 2018-04-16
  • 打赏
  • 举报
回复
引用 1 楼 OExpress 的回复:
opencv中有相关算法实现
请问可以提示一下具体是哪个算法实现吗?
jena_wy 2018-04-16
  • 打赏
  • 举报
回复
懒笑翻 2018-04-16
  • 打赏
  • 举报
回复
百度吧
赵4老师 2018-04-15
  • 打赏
  • 举报
回复
百度搜相关关键字。
CyberLogix 2018-04-14
  • 打赏
  • 举报
回复
opencv中有相关算法实现
图像去噪是图像处理研究中的一个基础课题。现有的图像去噪方法分为局部方法与非局部方法两种,其中非局部平均(NLM)方法是近几年才提出的一种全新的图像去噪策略。最近发展起来的块匹配三维协同滤波(BM3D)有效地结合了局部变换方法与非局部思想,被公认为当前最好的图像去噪方法。本文通过深入研究BM3D方法中的一些不足提出了几种对BM3D的改进算法,获得了比BM3D方法更好的图像去噪结果。图像细节增强是图像处理研究中的另一个重要课题。变换域图像细节增强的前提是图像中呈线状奇异性的弱细节信息能够得到有效地表示,通过放大弱细节系数以达到图像增强的目 的。非下采样轮廓波变换(NSCT)作为当前最好的线状奇异性表示方法能有效表示图像中 的边缘或纹理等图像细节信息,但这种局部变换方法是通过卷积核与图像卷积运算来实现图像细节表示的,在对增强后的变换系数执行逆变换后,图像边缘周围会有比较严重的光晕现象产生。本文提出了一种非局部线状奇异性表示方法,将其应用于图像增强获得了比较理想的图像增强结果并且基本不引入光晕假信号。对于图像去噪与增强的性能评价问题,本文提出了一种基于图像水印的去噪与增强性能评价方法。下面概述本文的主要研究内容和进展。 BM3D方法通过块匹配把一些相似的图像块堆叠成三维矩阵,再对三维矩阵执行可分的三维变换,用硬阈值方法收缩变换系数以达到图像去噪目的。尽管BM3D方法较好地保留了图像细节,但由于对图像块进行的二维变换是局部变换,所以会引入假信号。尤其当噪声强度相对较大时,引入的假信号更为明显。另外,BM3D方法还存在一个噪声强度较大时去噪性能急剧下降的问题。本文对强噪情况下BM3D方法如何能更少引入假信号以及如何更有效地解决强噪情况下去噪性能急剧下降问题进行了深入研究。通过分析块匹配群组中的图像块数、块尺寸以及块匹配前对图像块预滤波等一系列因素对去 噪结果的影响,提出了一种比原始BM3D更有效的方法,获得了比原始BM3D更好的 图像去噪结果,尤其在去噪后的图像中引入了更少的假信号。 BM3D方法强有力的去噪性能主要来源于该方法对图像的增强的稀疏表示,这种增强的稀疏性是因为块匹配后的各块是彼此高度相似的以及对块匹配群组结果执行了可分的三维变换。但BM3D过度地强调了稀疏性,致使对每个块的二维变换仍为局部变换。本文把BM3D方法中对三维矩阵的可分三维变换改为两次迭代的块间的一维变换,即更增强了第三维上的稀疏性,而弱化了各块自身的稀疏表示,实现了有效的非局部变换,从而在去噪结果中引入了更少的假信号。由于本文方法在两次一维变换中用了更少的 块,在保留图像细节方面也优于原始的BM3D方法。本文将这种方法称为块匹配一维一三维(BMl.3D)变换域滤波。

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧