首页 文章

如何将bmp图像转换为DICOM文件? [关闭]

提问于
浏览
5

我试图将bmp图像转换为dicom,但似乎很难转换 .

使用jpg2dcm实用程序我已成功将jpeg文件转换为dicom但是对于bmp和其他格式我需要解决方案 .

请指导我转换 .

3 回答

  • 3

    首先,您需要将图像格式转换为JPEG格式!这可以使用 ImageIO 来完成 . 例如 .

    import java.awt.*;
    import java.awt.image.BufferedImage;
    import java.net.URL;
    import javax.imageio.ImageIO;
    import javax.swing.*;
    import java.io.*;
    
    class ConvertPngToJpeg {
    
        public static void main(String[] args) throws Exception {
            URL url = new URL("http://i.stack.imgur.com/gJmeJ.png");
            final BufferedImage image = ImageIO.read(url);
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            ImageIO.write(image, "jpg", baos);
            final BufferedImage imageJpeg = ImageIO.read(
                    new ByteArrayInputStream(baos.toByteArray()));
            Runnable r = new Runnable() {
                @Override
                public void run() {
                    JPanel gui = new JPanel(new GridLayout());
    
                    gui.add(new JLabel(new ImageIcon(image)));
                    gui.add(new JLabel(new ImageIcon(imageJpeg)));
    
                    JOptionPane.showMessageDialog(null, gui);
                }
            };
            // Swing GUIs should be created and updated on the EDT
            // http://docs.oracle.com/javase/tutorial/uiswing/concurrency
            SwingUtilities.invokeLater(r);
        }
    }
    
  • 4

    看看dicom4j或dcm4che,后者更强大,并在Java开源Dicom服务器“DCM4CHEE”中使用 . 这些框架提供了DICOM标准的类模型,以便创建首选IOD的实例 . 因此,您可以使用这些API构建标头和图像数据部件,并使用它们将具体的dicom对象模型实例保存到标准的符合DICOM文件中 .

    它们提供了通过为它们分配属性 - 值对来创建dicom对象的方法 . 这些框架支持您创建序列并提供DICOM数据和通信模型的类型安全类 .

    当然,它们提供了特殊的图像类型,使您可以分配像素数据及其所有相关属性,以便以适当的方式存储位图信息 .

    UPDATE

    认为这是你想要的工具 . 但是看看文档,并不是所有的bmp文件都受支持 . http://support.dcmtk.org/docs/img2dcm.html希望它有所帮助 .

  • 4

    您可以直接将BMP文件转换为Dicom文件,而不会丢失任何类型的信息 . 不要将图像转换为JPG,因为您不必要地使用有损格式 .

    看看dcmtk工具包中的img2dcm .

相关问题