import ij.ImagePlus; import ij.io.FileInfo; import ij.util.DicomTools; import java.io.*; import loci.formats.*; import loci.plugins.BF; //Compares specific ImagePlus data from opening a DICOM with BioFormats //and opening a DICOM with the ImagePlus constructor. public class InfoTest { public static void main(String[] args) { String DICOMPath = "/home/trevor/Downloads/Dicom Files/NM-MONO2-16-13x-heart.dcm"; //Opens DICOM into imgs using BioFormats ImagePlus[] imgs = null; try { imgs = BF.openImagePlus(DICOMPath); } catch(FormatException | IOException e) {e.printStackTrace();} System.out.println("BioFormats Open"); printInfo(imgs[0]); //Opens DICOM into img using ImagePlus constructor ImagePlus img = new ImagePlus(DICOMPath); System.out.println("Standard Open"); printInfo(img); } //Prints out data the passed image. private static void printInfo(ImagePlus img) { FileInfo f = img.getFileInfo(); System.out.println("Units: " + f.unit); System.out.println("X-Scale: " + f.pixelWidth); System.out.println("Y-Scale: " + f.pixelHeight); System.out.println("Depth: " + f.pixelDepth); //DICOM tags: https://sno.phy.queensu.ca/~phil/exiftool/TagNames/DICOM.html System.out.println("Thickess: " + DicomTools.getTag(img, "0018,0050")); System.out.println("Spacing: " + DicomTools.getTag(img, "0018,0088")); System.out.println(); } }