In addition, the 0<>1 range of texture coordinates embraces the full image size, from the beginning of the first pixel to the end of the last. Linearly interpolated and coords wrapped samples on those 0 and 1 tex coords will return the average between both pixel colors. The way to get the real color of a pixel is to get the sample from the center of the pixel. So the coords of the upper left pixel are half the size of a pixel, 0.5f / imageSize.