我尝试通过 1 或 3 个通道(灰度或 RGB)读取(在 a 中BufferedImage
) 14 或 16 位图像。我准确地说,该图像的每个颜色分量都存储在 14 位或 16 位上。
我的代码(使用 Apache Sanselan / Imaging)读取图像,但每个颜色分量都被截断为 8 位。
File f = new File("/tmp/a.tiff");
Map<String, ManagedImageBufferedImageFactory> params =
new HashMap<String, ManagedImageBufferedImageFactory>();
params.put(ImagingConstants.BUFFERED_IMAGE_FACTORY,
new ManagedImageBufferedImageFactory());
BufferedImage image = Imaging.getBufferedImage(file, params);
你能给我一个代码片段吗?我被困了 6 个小时,谷歌不想帮助我:-p