2013-10-16 3 views
0

일부 프랙탈 이미지를 생성하려고하는데 잘 할 수 있습니다. 그러나 이미지를 저장할 때 색 대신 회색조로 저장하기 때문에 몇 가지 문제가 있습니다. 파이썬으로 열면 올바른 색상이 표시됩니다. 나는 맥 OS X, 파이썬 2.7.5를 사용하고 있습니다PIL 이미지가 회색 음영으로 저장됩니다.

from PIL import Image 
import ImageDraw 
from scipy import misc 
from array import * 
import matplotlib.pyplot as plt 
import scipy 

image = Image.new("L",(SIZE, SIZE)) # create a image SIZE x SIZE 
d = ImageDraw.Draw(image) 
#iterate over x and y, setting a col value for each pixel 
d.point((x, y), col) # it then colors the point (x,y) 
image.save("beta"+str(alpha)+".png", "PNG") 

을 다음과 같이

코드입니다.

답변

2

이미지를 L 또는 휘도 모드로 만듭니다. 즉, 회색 음영 이미지, 즉 색의 한 밴드입니다.

당신은 대신 RGB 모드를 사용해야합니다 : 이것은 픽셀이 아닌 간단한 정수를 지정할 때 (R, G, B) 값의 튜플을 사용하도록 요구하는 것은

image = Image.new("RGB", (SIZE, SIZE)) 

. ImageDraw 모듈은 문자열을 사용하여 색상을 설정할 수도 있습니다 ('#rrggbb' 및 관련).

코드에 col을 정의하는 방법을 표시하지 않으므로 RGB 이미지에 올바른 형식을 사용하고 있다고 말하기는 어렵습니다.

+0

글쎄, 나는 코드를 적용하고 있었지만, col 값을 업데이트하기 위해 다른 정수 값으로 설정했다. RGB를 살펴 보겠습니다. 그럼 정확히 col을 어떻게 정의해야합니까? 그냥 (값, 값, 값)의 튜플입니까? –

+0

@DanielAbramovici : 튜플을 사용합니다. 다른 지원되는 값은 [ImageDraw documentation] (http://effbot.org/imagingbook/imagedraw.htm)을 참조하십시오. –

+0

실제로 정수를 사용할 수도 있습니다. 나는 정확하게 그 질문을했다. (컬러 이미지에 정수를 사용한다.) http://stackoverflow.com/questions/32192671/pil-image-mode-i-is-grayscale/32200857 – Miguel

관련 문제