【问题标题】:parse dicomdir to display available images解析 dicomdir 以显示可用图像
【发布时间】:2023-03-03 03:36:01
【问题描述】:

我们正在考虑通过解析现有的dicomdir文件并以树形结构显示内容来添加图像管理功能。现有应用程序使用 JavaDcm4Che

我的问题是如何解析 dicomdir 文件以获得足够的信息以在 Java 树中显示其内容?

【问题讨论】:

  • 根据我的经验,我可以告诉您最好扫描所有文件夹并构建自己的树。在 dicomdir 中,您只会找到目录信息(原因称为 dir),迟早您会解析文件夹结构(可能是为了在树中显示图像的分辨率)。如果有帮助,我可以给你一些 C++ 代码来解析 dicomdir。
  • 我同意 alinoz。递归遍历目录树并读取每个 DICOM 文件的一些内容以将这种树状结构放在一起很容易。

标签: dicom dcm4che


【解决方案1】:

Click Here for Same Code

private DicomDirReader dirReader;

public ReadDicomDir(File file) throws IOException {
    dirReader = new DicomDirReader(file);
}

public List<File> getFiles() throws IOException {
    List<File> listDirFiles = new ArrayList<File>();
    getFilePath(dirReader.findFirstRootRecord(), listDirFiles);
    return listDirFiles;
}

/**
 * Get Filepath of Dicom File
 * 
 * @param firstRecord
 * @param listDirFiles
 * @throws IOException
 */
public void getFilePath(DicomObject firstRecord, List<File> listDirFiles)
        throws IOException {
    int i = 1;
    for (DicomObject rec = firstRecord; rec != null; rec = dirReader
            .findNextSiblingRecord(rec), ++i) {
        if (rec.contains(Tag.ReferencedFileID)) {
            File f = dirReader.toReferencedFile(rec);
            // System.out.println(f.getAbsolutePath());
            listDirFiles.add(f);
        }
        getFilePath(dirReader.findFirstChildRecord(rec), listDirFiles);
    }

【讨论】:

    【解决方案2】:

    更多参考这里::DICOMDIR READ IMAGES

    public void getFilePath(DicomObject firstRecord) throws IOException { 
      int i = 1; 
        for (DicomObject rec = firstRecord; rec != null; rec = dicomDir 
          .findNextSiblingRecord(rec), ++i) {
             if (rec.get(Tag.ReferencedFileID) != null) {
                   File f = dicomDir.toReferencedFile(rec);
                  System.out.println(f.getAbsolutePath());
                  }
             getFilePath(dicomDir.findFirstChildRecord(rec));
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-20
      • 2012-03-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多