我使用scipy.misc.imread使用以下命令将png文件转换为浮点数组:
scipy.misc.imread(rawImagePath).astype(scipy.float_)
其中rawImagePath是文件的完整路径。
绝大部分时间都是完美的。但是,有时我会收到错误:
...
return scipy.misc.imread(rawImagePath).astype(scipy.float_)
File "C:\Python27\lib\site-packages\PIL\Image.py", line 622, in __getattr__
raise AttributeError(name)
AttributeError: __float__
如果我然后在同一个文件(即相同的rawImagePath)上重新运行该函数,那么它可以正常工作。我升级到最新版本的枕头(3.4.2)和scipy(0.18.1)。我已经查看了Image.py和scipy.misc.imread,但我无法确定它将尝试获取Image对象的float属性。
额外信息:
我正在运行一个线程,定期检查文件夹中的新文件。当它找到一个新文件时,它会调用一个函数,该函数尝试使用上面的scipy.misc.imread(...)将图像作为数组读取。这个问题可能与新文件不完整有关吗?
非常感谢任何帮助。