3
我正在編寫一些腳本來完成圖像處理(準備用於卷積神經網絡的大批量圖像數據)。作爲該過程的一部分,我將一張大圖像拼貼成許多較小的圖像。單個大圖像是3通道(RGB).png圖像。但是,當我使用matplotlib.image.imsave
保存圖像時,它變爲4通道。代碼的最小工作示例如下(注意python 2.7)。如何強制python寫入3通道png圖像
#!/usr/bin/env python
import matplotlib.image as mpimg
original_image = mpimg.imread('3-channel.png')
print original_image.shape
mpimg.imsave('new.png', original_image)
unchanged_original_image = mpimg.imread('new.png')
print unchanged_original_image.shape
其中的輸出是:
(300,200,3)
(300,200,4)
我的問題是:爲什麼matplotlib.image.imsave
強迫第四頻道在那裏?和(最重要的是)我能做些什麼來確保只保存3個顏色通道(RGB)?
我創建的示例圖像低於:
謝謝。我提出的解決方法是相似的,'scipy.misc.imsave(...)'似乎也做同樣的事情 - 我將研究'scipy.misc.imsave()'和' scipy.misc.toimage()。保存()'。我仍然好奇爲什麼matplotlib似乎強制第四頻道... – TravisJ