【发布时间】:2020-04-13 07:36:28
【问题描述】:
我一直在处理具有大量椒盐噪声的灰度图像,并开始知道 MedianBlur 非常有用。所以我使用了 Python 版本的 Opencv(cv2.medianBlur())。它有效,但没有按我想要的方式工作。所以我一直在寻找它工作的实际算法并得到以下解释:
如果您的内核大小(k)为 5,那么对于每个 5(行数)x5(列数)的方形窗口,该窗口的中心像素将被其中所有元素的中值替换.因此,例如,考虑这个窗口:
[[11, 4, 17, 1, 5],
[ 6, 14, 0, 12, 16],
[24, 19, 13, 18, 23],
[ 7, 11, 11, 10, 5],
[10, 13, 23, 3, 0]]
这里,中心元素 13 将被所有这些元素的中位数(即 11)替换。这是正确的吗?如果是,前两行会发生什么,因为前两行中不能有任何窗口的中心元素?根据我的观察(比较原始图像和处理后的图像),前两行也发生了变化。
【问题讨论】:
标签: python opencv image-processing signal-processing