【发布时间】:2018-07-06 19:30:45
【问题描述】:
我正在使用 fit 图像并尝试将 IDL 代码转换为 python,但我无法理解如何转换 IDL median() 和 rot() 函数。我有一个数组im_darksub,即(ny, nx, n_im),其中nx,ny 是每个图像的形状,n_im 是图像数量(总共使用12 个图像)。我试图翻译 IDL 代码 im_median = median(im_darksub,dimension=1) 和 im_medrot = rot(im_median,85,cubic=-0.5)。我以为我可以把它翻译成np.median() 和spicy.misc.imrotate,但是当我使用imrotate 时,我不断收到错误:
Traceback (innermost last):
File "<console>", line 1, in <module>
File "/Users/courtneywatson1/Ureka/python/lib/python2.7/site-packages/scipy/misc/pilutil.py", line 345, in imrotate
im = toimage(arr)
File "/Users/courtneywatson1/Ureka/python/lib/python2.7/site-packages/scipy/misc/pilutil.py", line 234, in toimage
raise ValueError("'arr' does not have a suitable array shape for "
ValueError: 'arr' does not have a suitable array shape for any mode.
我猜这是因为我的图像阵列超过 2 维或 3D 吗? IDL median() 和 rot() 函数是否有 Python 等效项,就像我使用它们的方式一样?
【问题讨论】:
-
在
median调用后检查im_median的形状,即print(im_median.shape)。有尺寸为 1 的尺寸吗?
标签: python rotation median idl-programming-language