我参考了下面的文章并尝试实现Matlab中给出的算法
唯一的问题是如何找到有噪声的像素,即带有脉冲噪声的像素?
x似乎是图像中的脉冲像素,我必须计算
γ
____________________________________________
Input – Noisy Image h
_______________________________________________
Step 1: Compute X
for every pixel repeat steps from 2 to 7
Step 2: Initialize w = 3
Step 3: If X(i,j) ≠ Impulse pixel
goto step 7
Step 4: ?i,j = { h(i1,j1) | i-(w-1)/2 ≤ i1 ≤ i+(w-1)/2,
j-(w-1)/2 ≤ j1 ≤ j+(w-1)/2}
b=no. of black pixels in the window
w=no. of white pixels in the window
Step 5: If ?i,j ≠ NULL
p(i,j) = mean(?i,j
)
d(i,j) = | h(i,j) – p(i,j) |
else if (w < wmax)
w=w+2
goto step 4
else
if (b>w)
h(i,j)=0
else
h(i,j)=255
Step 7: Goto next pixel
Step 8: Calculate threshold t, from detailed coefficient
matrix d
for every pixel
Step 9: If (d(i,j)>t)
h(i,j)=p(i,j)
____________________________
编辑:要实现PSM或中值筛选方法,我们需要需要设置一些参数和阈值。这个阈值取决于图像和噪声密度。因此,要恢复不同的图像,我们需要检查一系列阈值,找出最佳值。所以,在我们提出的算法消除了定义阈值的需要。该算法是智能的,可以确定自动设置阈值。
你能概括一下这篇文章的目标和算法吗?标题也可以避免链接腐烂。
那么,"带脉冲噪声的像素"这个词是从哪里来的呢?代码中不存在。不知道你的问题会有什么样的答案,那么
如果x(i,j)不等于这里的脉冲像素,这表示!
递归算法的速度:matlab
您试图实现的文章显然写得不好…例如,在算法中,w意味着两件事:窗口的大小和白色像素的数量!!!!
步骤1和7都引用同一个循环。
无论如何,对我来说,"脉冲像素"都是等于0或255的像素A。
基本上,这些像素是"盐和胡椒"噪声的一部分。
所以,基本上,你可以通过以下方式找到它们:
[impulsepixelsY,impulasPixelX]=find((im==0)|(im==255));
型我需要一种方法来找到这些像素(脉冲)
型我已经编辑过了。
从纸上看,"脉冲像素"似乎只是噪声像素,在盐和胡椒噪声的情况下。此外,该算法似乎还提供了一种"智能"机制来计算噪声像素的去噪值(如果其值高于阈值(该算法自适应计算)。
那么,"如果x(i,j)≠脉冲像素"呢?很明显,作者们假定知道哪些像素有噪声(!!)这使得整个事情变得很荒谬,因为这个信息几乎是不可能知道的。
我还可以补充说,论文中呈现的相当惊人的结果很可能是由于这个事实。
P.S.关于)的论点,是错误的。具有0或255强度值的像素集包括噪声像素以及恰好具有该值的适当像素。在这种情况下,算法很可能会崩溃,因为它也会将健康的像素去噪。
型……我也考虑过这个问题,但是在文章中我没有发现任何一句话说明他们知道哪些像素有噪声。你找到了吗?不管怎样,我认为我们同意这不是一篇好论文…
型不,我没有,这使得整件事更加可疑。
型我也很困惑,现在人们在看什么样的报纸……
型@维尼,你什么意思?你想要更好的文章来抑制盐和胡椒的噪音吗?
型@维尼,那些能逃脱惩罚的人!
型我认为这会更好,因为它可以自己预测脉冲像素,这会产生奇迹,但现在我无法找到它是如何做到的。
型好吧,在本文的引言中有一段话说"……这与灰度图像不同,在灰度图像中,可以将盐和胡椒噪声区分为振幅与相邻像素相差较大的像素。在[8]中提出了一种新的工程图二值化图像处理方法。因此,我们采用了一种新的方法将这些像素分类为"好但有标记的噪声"像素。因此,也许[8]有一些提示,但我再次发现这篇论文相当"舞台化"。
型是的,我发现了,但是这份论文是在世界工程与计算机科学大会上发表的,2011卷第一期,2011期,十月19-21日,2011日,美国旧金山,它是这样说的!!我不知道它是什么组织