Python 在对图像应用空间过滤器时,如何处理零除?
我试图应用空间滤波器来减少图像中的噪声 手边的滤波器是谐波平均滤波器: 它与3x3内核一起应用。问题是有两种可能出现零除例外的情况:分母中的除和整个除。我的问题是:在对图像应用过滤器时,我们应该如何处理这个问题 式中,S为从原始图像中提取的3x3子图像,g(r,c)为原始图像在(r,c)位置上的像素值 PS:如果有人想知道我在3x3子映像上使用这个lambda函数作为内核函数:Python 在对图像应用空间过滤器时,如何处理零除?,python,image-processing,filtering,divide-by-zero,Python,Image Processing,Filtering,Divide By Zero,我试图应用空间滤波器来减少图像中的噪声 手边的滤波器是谐波平均滤波器: 它与3x3内核一起应用。问题是有两种可能出现零除例外的情况:分母中的除和整个除。我的问题是:在对图像应用过滤器时,我们应该如何处理这个问题 式中,S为从原始图像中提取的3x3子图像,g(r,c)为原始图像在(r,c)位置上的像素值 PS:如果有人想知道我在3x3子映像上使用这个lambda函数作为内核函数: filter\u harmonic\u mean=lambda子图像:(subimage.shape[0]*sub
filter\u harmonic\u mean=lambda子图像:(subimage.shape[0]*subimage.shape[1])/(sum([1/g表示子图像中的g.flatte()]))
提前感谢您应该使用浮点算法进行此计算,然后如果像素为0,则得到1/0=无穷大,这使得和无限大,并且过滤器的结果为1/inf=0。浮点运算允许这种情况自然发生。或者,如果内核下的任何输入像素为0,那么您知道输出将为0,因此不需要计算任何内容。