2015-11-09 46 views
1

我正在閱讀Python中的PNG文件。我想RGB值的圖像中每個像素:在Python中閱讀PNG與PIL

img = Image.open(path) 
    pixels = img.load() 

對於JPEG文件的像素是元組但PNG格式我得到一個整數。我應該如何用Python讀取PNG圖像來獲取像素值?

+0

奇怪的是,當我在我的機器上打開PNG時,我得到一個元組。你有沒有嘗試過這個不止一個PNG? – Kevin

+0

檢查您的PNG文件。如果它實際上是一個灰度或索引的彩色圖像 - 而不是* 24位顏色 - 您的問題是http://stackoverflow.com/q/27093835/2564301 – usr2564301

回答

5

圖像聲音正在以灰度模式打開。在訪問像素值之前嘗試轉換爲RGB。

img = Image.open(path).convert("RGB") 
pixels = img.load()