Surface3D: How to Import Third Party Files

From Software Product Documentation
Revision as of 18:37, 2 June 2021 by Wikisysop (talk | contribs)
Jump to navigation Jump to search

There are many third-party software packages for segmenting 3D image data (segmentation) and creating surface models (3D reconstruction), including Mimics, ScanIP, and 3D Slicer. These programs provide sophisticated segmentation functions as well as tools for decimating and smoothing the polyhedral surface models. Additionally, there are open-source programs with powerful tools for manipulating surface models, such as MeshLab and Blender. Our goal with Surface3D is not to replace these programs, which are robust, well-maintained, and widely used. It is to provide a solution to users who do not currently use these other prorgams and whose segmentation and surface smoothing needs are relatively simple. The primary benefit of Surface3D is that it is integrated into the DSX Suite so that updating the subject file and handling reference frames and file formats consistently is automatic. Nevertheless, if you already use one or more of these third-party programs for segmentation or 3D reconstruction, we encourage you to continue using them. This guideline is designed to help you integrate the outputs of those programs into DSX Suite. Before continuing, please familiarize yourself with the DSX terminology for Image and Surface Files.

There are two primary methods of integrating data from these third-party programs into DSX Suite. The best one for you depends on your data set and your level of expertise with the other programs. For ease of description this guide will assume you are using Mimics and MeshLab, but any of the other programs could be substituted for those.

Method 1: Segmentation is performed in Mimics. 3D reconstruction is performed in Surface3D.

In this case you must export the Image File for each object from Mimics. The Image File is the 3D image data where all voxels representing the object of interest have their original intensities (Hounsfield units for CT) and all other voxels are set to zero. This file is usually cropped to the minimum axis-aligned bounding box of the object, but cropping is optional. The RAW format is preferred for this file, but TIFF ia also acceptable. The steps for processing each object with this method are:

  1. In Mimics, segment the object in the DICOM images. Save the segmentation as a mask file in the TIFF format. This is an image file with the same dimensions as the DICOM stack, and with voxel values of 1 for the object of interest and 0 everywhere else. In DSX Suite this is called a label file because it labels all of the voxels representing the object.
  2. In xManager, load the subject and add the DICOM files as a Scan Data item for the session. The individual object definitions should not have any image or surface files specified for them.
  3. In Surface3D, load the subject, select the object, and choose the DICOM scan data.
  4. Surface3D: File -> Load Label, selecting the TIFF label file for that object.
  5. Surface3D: Image -> Mask Labeled Image Data
  6. Surface3D: Image -> Crop Image Data to Labels (optional)
  7. Surface3D: Model -> Create Surface Model
  8. Surface3D: File -> Save Segmented Object -- creates the Image File (RAW format is preferred)
  9. Surface3D: File -> Save Surface Model -- creates the Surface File (OBJ format is preferred)
  10. Surface3D: File -> Save Subject
  11. Load the OBJ surface model into MeshLab and decimate and smooth it as appropriate for your project. You can either save it back to the original OBJ file or save it to a new file and update the object definition in xManager accordingly (the Surface File).
  12. In Orient3D, load the subject, select the object, and define an LCS for it using the Local Coordinate System (LCS) widget.
  13. Orient3D: File -> Save ROI Surface (local frame).
  14. Orient3D: File -> Save Subject.

Method 2. Segmentation and 3D reconstruction are performed in Mimics.

In this case, you must export the Image File as described above, and also the polyhedral surface model (Surface File). The OBJ format is preferred for the Surface File, but STL is also acceptable (coming soon). The vertices of the surface model must be expressed in the same reference frame as the implicit frame in the Image File (as described here). The steps for processing each object with this method are:

  1. In Mimics, segment the object in the DICOM images.
  2. Crop the image data to the segmented object (optional).
  3. Save the image data to a RAW file. In this file, all voxels representing the object should have their original intensity values and all other voxels should be set to zero. Make a note of the image dimensions, voxel size, and other formatting parameters (bits/voxel, signed/unsigned, little- or big-endian).
  4. Create a polyhedral surface model from the segmentation. Save it to an OBJ file.
  5. Use MeshLab to decimate and smooth the surface model.
  6. In xManager, add the data files to the object definition. The RAW file is the object's Image File. Fill in the file specifications from the notes you made in step 3. The OBJ file is the object's Surface File. The units are the units of the image data (usually millimeters).
  7. In Orient3D, load the subject, select the object, and use the Image/Surface Match widget to make sure the Surface File is in the same reference frame as the Image File.
  8. In Orient3D, define an LCS for the object using the Local Coordinate System (LCS) widget.
  9. Orient3D: File -> Save ROI Surface (local frame).
  10. Orient3D: File -> Save Subject.
Retrieved from ""