ImageData[image] by default gives a 2D array whose elements are lists of values for each channel.
The array generated by ImageData[image] is arranged in the same way that the image is displayed, with the first row corresponding to the top row of pixels in the image.
For binary images, ImageData[image] returns integer values 0 or 1. For all other images, ImageData[image] returns real values, normally between 0 and 1.
Possible types specified by ImageData[image, "type"] are:
"Bit"
integer 0 or 1
"Byte"
integer 0 through 255
"Bit16"
integer 0 through 65535
"Real"
machine real
For images of type "Byte" or "Bit16", ImageData[image] always normalizes values to lie between 0 and 1. For images of type "Real", ImageData[image] returns whatever real values are used in the image.