首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JAI FormatDescriptor图像变成白色

问JAI FormatDescriptor图像变成白色
EN

Stack Overflow用户
提问于 2014-11-11 10:32:15
回答 1查看 84关注 0票数 0

我想用两个图像做一个覆盖操作。这些图像的频带数和数据类型需要相同,所以我可以执行覆盖操作。因此,我使用一个FormatDescriptor将一个图像的数据类型更改为另一个图像的数据类型。但现在图像都是白色的。

这正常吗?还是FormatDescriptor中有错误?

下面是重新格式化的代码:

RenderedImage finalImage = loadTiles(i,列,行);// Format图像,以便数据类型与叠加finalImage = FormatDescriptor.create(finalImage,overlay.getSampleModel().getDataType(),null);images.add(finalImage);列=roundUp(列,2);rows =roundUp(行,2)的数据类型匹配;

谢谢你的帮助。

编辑我尝试格式化覆盖层,使其与图像的数据类型相匹配。这样就可以正确地显示图像,但覆盖层是完全黑色的。

正常的数据类型如下:

图片:数据类型=1 (ushort)

叠加:数据类型=0(字节)

编辑我还尝试将图像重新格式化为其他数据类型。每次我得到同样的结果。图像都是白色的。但当我尝试格式化的时候。然后我得到了NullPointerException。

我不知道我做错了什么。我发现了许多使用格式操作的不同例子,我也是这样使用的。但是当我在重新格式化时得到一个白色图像,使用格式操作有什么意义呢?是否有另一种方法来改变图像的数据类型,使其与覆盖层的数据类型相匹配?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-12 14:01:32

好的,我想出了另一种方法来改变图像的数据类型。使用LookupTableJAI是可能的。下面是我用来转换图像的代码:

byte[] tableData =新byte0x10000;for (int j= 0;j< 0x10000;j++) { tableDataj =(字节)(j >> 8);} LookupTableJAI table =新LookupTableJAI(tableData);finalImage =JAI.create(“查找”,finalImage,表);

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26862770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档