[Image-SIG] What does the 'F' mode mean in PIL?
Christopher Barker
Chris.Barker at noaa.gov
Tue Jun 21 20:05:51 CEST 2011
Managan, Rob wrote:
> If you are not worried about rounding errors; this command grabs the data,
> and puts it back scaled by 255/65535 and no offset.
>
> i.putdata(i.getdata(),255.0/np.iinfo(np.uint16).max,0.0)
yup -- easy with numpy (I actually already did that), but I'm trying to
figure out how to do it with PIL. Maybe there is no reason to, but is
sure seems like it should be something PIL could easily do:
Convert a unsigned int16 grayscale image to 24bit RGB.
Thanks,
-Chris
By the way, your replies are not making it to the list -- you need to
hit "reply all" or "reply to list".
>
> On 6/20/11 1:17 PM, "Chris Barker" <Chris.Barker at noaa.gov> wrote:
>
>> On 6/17/2011 8:58 PM, Managan, Rob wrote:
>>> While I am not an expert, it seems you have to use mode = 'F' in from string.
>>> Presumably then you can convert it to RGB?
>>> All the floating point decoders (libImaging/Unpack.c) have mode 'F' so it
>>> does not find a mode 'RGB' with the rawmode 'F;16'
>>>
>>> Hope this helps.
>>>
>> indeed it did -- I thought I'd triked that, but I guess I got confused
>> about "mode" vs, "raw mode". So now I'm using mode: 'F', and raw mode
>> 'F;16N'.
>>
>> It works without an error, but I'm still lost on how I can then convert
>> the 'F' image to an RGB image. convert('RGB') seems to convert to grey
>> (which I want), but doesn't scale t all -- so a value of 255 in the
>> original uint16 data is white. How can I tell it to re-scalse?
>>
>> see attached code (requires numpy)
>>
>> -Chris
>>
>
>
--
Christopher Barker, Ph.D.
Oceanographer
Emergency Response Division
NOAA/NOS/OR&R (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception
Chris.Barker at noaa.gov
More information about the Image-SIG
mailing list