Well, the bit shift in the reply above, was designed to convert color to black and white, or some sort of greyscale manipulation, IIRC ; like I said, I didn't have the time to really dig into what muppet was saying in:
$data = pack "C*", map { $_ >> 8 } unpack "S*", $raw;
However, there MAY be a way to modify the map, to selectively remove the high (or low)
8 bits of the image, to convert down to 24 bit from 32 bit. It may be a simple as changing
the shift to
$data = pack "C*", map { $_ << 8 } unpack "S*", $raw; # >> to <<
or you may need to break the geotiff bits into r g b segments, and bit shift each segment the proper amount and direction. ???
It may be worth posting the above map as a new node, and asking the c and bit experts if they see a way. It would help if you could describe exactly the bit-field structure of the 32-bit geotiffs that you are dealing with. This is actually a very interesting question.
| [reply] [d/l] [select] |