擅长:python、mysql、java
<p>如果要应用线性平滑滤波器,则可以使用归一化卷积</p>
<p>基本配方是:</p>
<ol>
<li>创建一个掩码图像,对于有数据的像素为1,对于没有数据的像素为0</李>
<li>将没有数据的像素设置为任何数字,例如0。NaN无效,因为它在计算中传播</李>
<li>将线性平滑过滤器应用于与遮罩相乘的图像</李>
<li>将线性平滑过滤器应用于遮罩</李>
<li>将两个结果分开</李>
</ol>
<p>基本上,我们将线性平滑滤波器(卷积)的结果标准化为滤波器窗口内具有数据的像素数</p>
<p>在平滑遮罩为0(远离数据)的区域,我们将0除以0,因此需要特别注意</p>
<p>请注意,归一化卷积也可用于不确定数据,其中遮罩图像获得0到1之间的值,表示我们对每个像素的置信度。例如,被认为有噪声的像素可以设置为比其他像素更接近0的值</p>
<hr/>
<p>上述配方仅适用于线性平滑滤波器。归一化卷积可以用其他线性滤波器来实现,例如导数滤波器,但是得到的方法是不同的。例如,请参见<a href="https://diplib.github.io/diplib-docs/group__linear.html#ga5713cd5594ab002901da5aab05803aca" rel="nofollow noreferrer">here</a>归一化卷积方程以计算导数</p>
<hr/>
<p>对于非线性滤波器,需要其他方法。例如,非线性平滑过滤器通常会避免影响边缘,因此在缺少数据的图像中,如果缺少的像素设置为0,或设置为数据范围之外的某个值,则该过滤器会非常好地工作。保留一个遮罩图像的概念,该图像指示哪些像素有数据,哪些没有数据始终是一个好主意</p>