我试图通过创建一个立方体(尺寸大于图像; 60x3000x4000)来对齐60个图像,该立方体存储有关每个图像的信息以及它移动了多少。然后我通过找到屏蔽任意0值的立方体然后找到沿0轴投影的蒙版中值来组合它。
然而,由于某些原因,需要花费很长时间才能找到蒙面中位数(约30-40分钟),无论我是为2张图像还是30张图像。当我运行60张图像时,它只会说我已经用尽了应用程序内存。我试过在Mac OSx和Debian系统上运行这个问题同样的问题。
不确定如何解决此问题。
我的代码的相关部分
#for loop beginning:
# more code
cube[k, 200-yShift[k]:200-yShift[k]+data.shape[0], 200-xShift[k]:200-xShift[k]+data.shape[1]] = data
#for loop ending:
masked_cube = ma.MaskedArray(cube, mask=cube==0)
del cube
median_mask = ma.median(masked_cube, axis = 0).filled(0)
hdu = fits.PrimaryHDU(median_mask)
hdulist = fits.HDUList([hdu])
hdulist.writeto(output_file)