当前位置: 首页 > 面试题库 >

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

岑叶秋
2023-03-14
问题内容

有人建议的上述答案将我的彩色图像转换为黑白图像。因此,这不适合我的问题。

File file = new File("path");          
BufferedImage bufferedImage = ImageIO.read( file );

这是代码,下面是图像。下载图像并保存在您的PC中。并尝试使用正确的path值运行以上代码,它将在主题中引发异常

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

只要有人可以从图像中获取java.awt.image.BufferedImage对象,就足够了(不应该将图像转换为灰度图像)。

如果您能回答这个:D,您就是天才。请帮助。


问题答案:

您的代码在这里没有错。我可以使用ImageIO的JPEGImageReader插件读取您的图像。该图像读取器尝试宽大处理JPEG错误,并且比标准Java JPEGImageReader略胜一筹。

但是,您的JPEG文件似乎有很多问题,因此无法100%读取:

  • 首先,图像中的ICC颜色配置文件具有4种颜色成分,而图像数据仅具有3种颜色成分(这会导致您看到异常)。根本原因可能是转换软件不正确。使用ExifTool或类似软件查看元数据以进行进一步调查。我的读者只会忽略ICC配置文件。
  • 其次,JPEG流过早结束(缺少EOI)。您会注意到图像的右下方有一些垃圾像素。除了获取原始图像外,您无能为力(嗯,实际上,图像包含缩略图并且缩略图未损坏;如果您确实需要,可以尝试从中重新创建数据)。我的阅读器返回的图像与本机软件读取的图像一致。


 类似资料:
  • 色彩空间    调整主机液晶画面的影像输出色彩范围。 标准 显示与PSP-1000/PSP-2000系列主机相同的色彩范围。 宽 以更加鲜明的色彩,显示更加宽广的色彩范围。

  • 一、目标 在本教程中,您将学习如何将图像从一个颜色空间转换为另一个颜色空间,如BGR <-> leftrightarrow Gray, BGR <-> leftrightarrow HSV等。 除此之外,我们还将创建一个提取视频中彩色对象的应用程序 您将学习以下函数:cv2.cvtColor(), cv2.inRange()等。 二、改变颜色空间 OpenCV中有150多种颜色空间转换方法。但我们

  • 我有一个12列的矩阵,我使用中的函数来绘制boxplot。 使用以下命令: 我想要的是以红色、绿色和蓝色呈现前三个方框图。接下来的三件是黄色的,接下来的三件是橙色的,接下来的三件是紫色的。 我该怎么做呢? 非常感谢。

  • 对导入的图像进行色彩管理( Illustrator、 InDesign) 导入的图像如何集成到文档的色彩空间,取决于图像是否有嵌入的配置文件: 当您导入不包含配置文件的图像时, Adobe 应用程序会使用当前文档配置文件来定义图像中的颜色。 当您导入包含嵌入的配置文件的图像时,则 “颜色设置 ”对话框中的颜色方案将确定 Adobe 应用程序处理配置文件的方式。 另请参阅 第 130 页的 “色彩管

  • 本文向大家介绍highcharts 色彩,包括了highcharts 色彩的使用技巧和注意事项,需要的朋友参考一下 示例 在Highcharts中,有一个数组,其中包含图表系列的默认颜色。使用所有颜色后,将从头开始再次拉新颜色。 版本4.x和5.x的默认颜色是: 在Highcharts 3.x中,默认颜色为: ] 在Highcharts 2.x中,默认颜色为:            

  • Element 为了避免视觉传达差异,使用一套特定的调色板来规定颜色,为你所搭建的产品提供一致的外观视觉感受。 主色 Element 主要品牌颜色是鲜艳、友好的蓝色。 Brand Color #409EFF 辅助色 除了主色外的场景色,需要在不同的场景中使用(例如危险色表示危险的操作)。 Success #67C23A Warning #E6A23C Danger #F56C6C Info #90