2017-04-08 2 views
0

Keras ImageGenerator를 사용하여 일부 이미지 (jpeg)를 처리 중입니다. 디버깅하려면, 내가 처리 루프 동안 일부 이미지를 표시하십시오 ImageGenerator 어떤 색상 캐스트를 적용하지 않는다Python plt.imshow()에서 이상한 색상 캐스트 이미지

from keras.preprocessing.image import ImageDataGenerator 
import matplotlib.pyplot as plt 

datagen = ImageDataGenerator(**datagen_args) 
X = np.zeros(4, 224, 224, 3)) # pralloc matrix for storing the images 

for i in range(4):  
    img_path = repo + fnam[i] 
    image = plt.imread(img_path)   

    plt.imshow(image) # image looks correct 
    plt.show() 

    trans_img = datagen.random_transform(image) # keras ImageGenerator 

    plt.imshow(trans_img) # image looks correct 
    plt.show() 

    X[i, :, :, :] = trans_img 

하는 것으로. 이 완료되면, 나는 X에서 하나 개의 이미지를 선택하여 표시 :

im1 = X[0, :, :, :] 
print(im1.shape) [224, 224, 3] 

plt.imshow(im1) 
plt.show() 

결과 이미지가 이상한 블루 색상 캐스팅 있습니다. 이미지를로드하고 표시하는 여러 가지 다른 방법을 시도했지만 모두 파란색으로 표시됩니다.

도움을 주시면 감사하겠습니다. 고맙습니다.


UPDATE :이 작동하고 올바른 colourmap와 이미지를 보여줍니다 누군가가 이유를 설명 할 수 있다면, 나는 매우 감사하게 될 것입니다

from scipy.misc import toimage 
toimage(im1).show() 

합니다. 고맙습니다. scipy.misc 수입 toimage에서

+0

이 .show ('사용 .dtype') . 나는 그들이 다를 것이라고 추측 할 것이다. 이 경우 각각의 dtype을보고 할 수 있습니다. 좋은 설명을 찾을 수 있습니다. – ImportanceOfBeingErnest

+0

감사합니다. 데이터 유형이 모두 동일하고 (ints) 확인했습니다. –

답변

-1

toimage (IM1)()

당신은 image`,`trans_img`와`im1``의 데이터 유형에 보일 수