opencv形态扩张滤波器作为最大滤波器

问题描述 投票:0回答:1

就像中值滤波器的定义一样,我可以将“最大滤波器”定义为局部窗口

例如dst(x,y) = max(3x3 局部窗口像素)

但是我在opencv中找不到这样的过滤器,最接近的是“dilate”函数

然后我使用“dilate”函数的默认配置,但结果不正确 与我对最大过滤器的强力实现进行比较。

我发现对于3x3的情况,等效的扩张配置是使用1x1的矩形结构元素,即

dilate(src, dst, getStructuringElement(MORPH_RECT, Size(1,1)))

我的问题是:

  1. 我认为结构元素相当于本地窗口,这似乎违反直觉。但现在本地窗口的大小只有1x1像素?

  2. 如果我的最大过滤器的本地窗口扩大(例如 5x5、7x7)怎么办?最大滤波器和膨胀滤波器有什么关系吗?

opencv image-processing filter max mathematical-morphology
1个回答
3
投票

Mathematica 中的实现示例:

enter image description here

但是 Dilation[ ] 也接受结构化内核:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.