IllegalArgumentException:源栅格波段和源颜色空间组件的数量不匹配对于彩色图像

时间:2013-07-08 14:45:45

标签: java image-processing

当我的应用尝试使用ImageIO.read()方法读取JPG图像时出现此异常。并非所有jpg文件都抛出此异常。

我发现这个答案很有用Intersection of bands in R raster package,但它仍将我的彩色图像转换为黑色和白色。我想这个问题主要集中在正确的问题上,但我希望它能让我的图像保持彩色(不是黑白)。

下载图片:https://skydrive.live.com/?cid=19547371C4F3B839&id=19547371C4F3B839%21105

如果有人可以从给定足够的图像中获取BufferdImage(不应该将图像转换为灰度图像)。

如果你能回答这个问题,你就是天才:D。 Plz的帮助。

1 个答案:

答案 0 :(得分:0)

这通常是Java无法读取JPEG文件时遇到的异常。虽然它们是标准兼容的JPEG,但Java尚未实现完整的标准。我建议在实际尝试用Java打开它之前,用ImageMagick,Irfanview或类似的东西转换JPEG文件。

您可以使用ImageJ,它可以处理大多数JPEG。