Re: PIL: TIFF images loaded as 16 bit signed integers

Chris Mitchell <[email protected]>
Newsgroups gmane.comp.python.image
Message-ID <[email protected]>
My platform is windows 7 64bit, and when I do this:

import Image
im = Image.open(file)
print im.getpixel((168,78)) #pixel intensity is 65535, gives -1 as value
print im.getpixel((169,78)) #pixel intensity is 64453, gives -1083 as value.


On Sun, Aug 1, 2010 at 7:14 AM, Fredrik Lundh <[email protected]> wrote:
> 2010/7/6 Chris Mitchell <[email protected]>:
>> I'm running into a problem where my image intensities are being loaded
>> as 16 bit signed integers.  The code I'm using to open the tiff file
>> is:
>>
>> im = Image.open(file)
>> self.pixels = np.array([im.getdata()], np.uint16)
>>
>> the filetype is a 16bit TIFF, whose intensities load fine into ImageJ.
>>  I load their intensities into a numpy 16bit array, and for the time
>> being I've fixed this problem with this code:
>>
>> np.where(self.pixels<0, -1*self.pixels+(32768+self.pixels),self.pixels)
>>
>> That basically takes any negative values and compensates for the
>> rollover.  Does anyone have any idea why PIL is loading my TIFF files
>> as signed integers?
>
> Could be that something goes wrong on the way to numpy.  What values
> do you get from PIL's own access methods (e.g. getpixel)?
>
> Also, what platform is this on?
>
> </F>
>
_______________________________________________
Image-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/image-sig
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.