read 16 bit or 32 bit images in python
How can I read in 16 bit or 32 bit images by python and get the correct image values as an array?
I tried to read in SRTM (Shuttle Radar Topography Mission) using PIL + Numpy, GDAL + Numpy and PythonMagick etc. (I am not sure what types (16 bit or 32 bit) the image is. When I use ArcGIS to read in, it shows 32 bit float, while when I use PCI Geomatica ImageWork, only 16 bit signed optional can show the correct image. )
However, though the above testing, the values in the array are incorrect. 
For example, I used a SRTM in CA whose elevation range is from 136 to 737, but when I use ndimage to get the maximum and minimum values, the array value range is from -3.40 to 737, and it appears lots of negative values. 
what can I do? Do I make some mistakes?
read 16 bit or 32 bit images in python
===

How can I read in 16 bit or 32 bit images by python and get the correct image values as an array?
I tried to read in SRTM (Shuttle Radar Topography Mission) using PIL + Numpy, GDAL + Numpy and PythonMagick etc. (I am not sure what types (16 bit or 32 bit) the image is. When I use ArcGIS to read in, it shows 32 bit float, while when I use PCI Geomatica ImageWork, only 16 bit signed optional can show the correct image. )
However, though the above testing, the values in the array are incorrect. 
For example, I used a SRTM in CA whose elevation range is from 136 to 737, but when I use ndimage to get the maximum and minimum values, the array value range is from -3.40 to 737, and it appears lots of negative values. 
what can I do? Do I make some mistakes?