python 读png的值变了_python – 为什么scipy.ndimage.io.imread返回PngImageFile,而不是值数组...
您可能有一個(gè)不完整的Python成像庫(PIL)安裝,SciPy依賴它來讀取圖像. PIL依賴于libjpeg加載JPEG圖像和libz來加載PNG圖像,但是可以在沒有任何圖像的情況下安裝(在這種情況下,它無法加載庫中缺少的任何圖像).
我有與上面描述的JPEG圖像完全相同的問題.不會(huì)引發(fā)任何錯(cuò)誤消息,而是SciPy調(diào)用只返回一個(gè)包裝的PIL對(duì)象,而不是正確地將圖像加載到數(shù)組中,這使調(diào)試變得特別棘手.但是,當(dāng)我嘗試直接使用PIL加載圖像時(shí),我得到了:
> import Image
> im = Image.open('001988.jpg')
> im
> im.size
> (333, 500)
> pixels = im.load()
IOError: decoder jpeg not available
所以我卸載了我的PIL副本,安裝了丟失的libjpeg(在我的情況下,可能是你的libz),重新安裝PIL以注冊(cè)庫的存在,現(xiàn)在加載SciPy的圖像完美地工作:
> from scipy import ndimage
> im = ndimage.imread('001988.jpg')
> im.shape
(500, 333, 3)
> im
array([[[112, 89, 48], ...
..., dtype=uint8)
總結(jié)
以上是生活随笔為你收集整理的python 读png的值变了_python – 为什么scipy.ndimage.io.imread返回PngImageFile,而不是值数组...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 人月神话贯彻执行_上古神话知识梳理,精华
- 下一篇: swagger python自动化用例_