计算方差图像python
问题描述:
有没有一种简单的方法可以使用Python / NumPy /
Scipy在图像上计算运行方差过滤器?通过运行方差图像,我的意思是为图像中每个子窗口I计算sum((I-mean(I))^ 2)/ nPixels的结果。
由于图像很大(12000x12000像素),我想避免在格式之间转换数组的开销,以便能够使用其他库,然后再转换回去。
我想我可以通过使用类似的方法找到平均值来手动完成此操作
kernel = np.ones((winSize, winSize))/winSize**2 image_mean = scipy.ndimage.convolve(image, kernel) diff = (image - image_mean)**2 # Calculate sum over winSize*winSize sub-images # Subsample result
但是拥有Matlab的stdfilt-function这样的东西会更好。
谁能指出我具有这种功能并支持numpy数组的库的方向,还是暗示/提供了一种在NumPy / SciPy中实现此目的的方法?
我发现自己用这样的构造函数编写了很多类:class MyClass(object): def __init__(self, foo, bar, foobar=1, anotherfoo= ...