簡體   English   中英

使用imageio編寫jpeg2000時出現問題

[英]Problems writing jpeg2000 using imageio

我正在嘗試使用imageio像下面的代碼一樣在jpeg2000中轉換DICOM圖像,在oracle文檔中解釋了相同的步驟,但是不起作用! 我不明白我在做什么錯。 Java Advanced Image I / O庫已安裝到JRE中。

使用: ImageIO.getReaderFormatNames()ImageIO.getWriterFormatNames()可以驗證是否支持DICOM和JPEG2000!

沒有引發任何錯誤,但是寫入文件花費的時間太長,並且輸出文件已損壞。
先感謝您...

 public void convert2JPEG(File sourceFileName) throws IOException{

    Iterator<ImageReader> iter = ImageIO.getImageReadersByFormatName("DICOM");
    ImageReader reader = iter.next();

    if(reader == null) {
        log.error("Could not locate any Readers for the DICOM format image.");
        return;
    }

    File sourceFile = new File (sourceFileName);
    ImageInputStream iis = ImageIO.createImageInputStream(sourceFile);
    BufferedImage bi;
    try{
    bi = ImageIO.read(iis);
        File outputFile = new File("outputFileName");
    String format = "jpeg 2000";
    ImageIO.write(bi, format, outputFile);
    } catch(Exception e){
        log.info("ERROR: " + e);
    }finally {
        iis.close();
    }
}

據我所知,JAI Image IO不支持DICOM,但支持JPEG2000。 請注意,沒有Windows 64位版本的JAI(這可能對您也是一個問題)。 我很驚訝它沒有給出任何錯誤。

但是,我同意Anders的觀點,轉換DICOM的最佳方法是使用工具箱。 我建議使用DCM4CHE2( http://www.dcm4che.org/confluence/display/d2/dcm4che2+DICOM+Toolkit )。 他們有許多命令行工具可以完全按照您的建議進行操作,還有Dicom [Input / Output] Stream類用於讀寫DICOM。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM