gpt4 book ai didi

java - 将 .dcm 转换为 jpeg-lossless 类型的 jpeg 时出错

转载 作者:行者123 更新时间:2023-12-01 12:29:20 26 4
gpt4 key购买 nike

我陷入了 1.2.840.10008.1.2.4.70 - JPEG Lossless, Non-Hierarchical, First-Order Prediction使用 ImageIo 将 DCM 转换为 jpg 时。

我已按照指示安装了 JAI ImageIO here ,和ImageIO.getReaderFormatNames()正在给予raw jpeg tif JFIF WBMP jpeg-lossless jpeg-ls PNM JPG DICOM wbmp PNG JPEG dicom jpeg 2000 tiff BMP JPEG2000 RAW JPEG-LOSSLESS jpeg2000 GIF TIF TIFF jpg bmp pnm jfif png JPEG 2000 gif JPEG-LS .

但是,我在线程“main”中遇到异常:java.lang.IndexOutOfBoundsException: imageIndex out of bounds ,同时使用阅读器读取缓冲图像。这是我的读者代码:

    ByteArrayInputStream bais = new ByteArrayInputStream(dicomData); //byte array of DICOM data
ImageIO.scanForPlugins();
Iterator<ImageReader> iter = ImageIO
.getImageReadersByFormatName("jpeg-lossless");
ImageReader reader = (ImageReader) iter.next();
ImageReadParam param = (ImageReadParam) reader.getDefaultReadParam();
ImageInputStream iis = ImageIO.createImageInputStream(bais);
reader.setInput(iis, false);
BufferedImage buff = reader.read(0, param); // Error at this line 'imageIndex out of bounds!'
iis.close();

这是正确的方法还是其他方法?

最佳答案

您无法使用 jpeg-lossless ImageReader 读取 dicom part 10 文件。您应该考虑使用 dcm4che imageio ImageReader 来读取文件。当它实际到达内容的像素数据部分时,它将利用 JAI jpeg 图像读取器来解压缩图像内容。

http://www.dcm4che.org/confluence/display/d2/dcm4che2+DICOM+Toolkit

关于java - 将 .dcm 转换为 jpeg-lossless 类型的 jpeg 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26072939/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com