Class JDialogProstateSPIEcancerChallenge

java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Dialog
javax.swing.JDialog
gov.nih.mipav.view.dialogs.JDialogBase
gov.nih.mipav.view.renderer.WildMagic.ProstateFramework.JDialogProstateSPIEcancerChallenge
All Implemented Interfaces:
AlgorithmInterface, DialogDefaultsInterface, ActionListener, FocusListener, ItemListener, WindowListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible, RootPaneContainer, WindowConstants

public class JDialogProstateSPIEcancerChallenge extends JDialogBase implements AlgorithmInterface
This class is for ProstateX 2017 MICCAI challenge. We use NIH data to train the HED model. Both MRI and CED (png) slices generated from the axial NIH data will be used to train the deep learning model. This class are the basic image processing and extraction steps for preprocessing. This class is used for MICCAI prostateX 2017 challenge test cases. IMPORTANT!!! Steps: 1) transform the image to x, y isotropic resolution images 2) Crop the center part with 25% deduction from each image boundary 3) Normalized the image intensity in range [0, 1000] 4) Run Coherence Enhance Diffusion (CED) against the MRI image to enhance the boundary. 5) Extract MRI, CED slice with corresponding binary masks, saving them in 2D PNG files.
Author:
Ruida Cheng
See Also:
  • Field Details

  • Constructor Details

    • JDialogProstateSPIEcancerChallenge

      public JDialogProstateSPIEcancerChallenge(Frame theParentFrame)
      Constructor.
      Parameters:
      theParentFrame -
  • Method Details

    • disposeLocal

      public void disposeLocal()
      dispose memory
    • actionPerformed

      public void actionPerformed(ActionEvent event)
      Dialog local actionPerformed handler.
      Specified by:
      actionPerformed in interface ActionListener
      Overrides:
      actionPerformed in class JDialogBase
    • recordSaveImageDir

      private void recordSaveImageDir()
      Let user specify the saved 2D slices atlas, record the save directory.
    • readKeyImageDir

      private void readKeyImageDir()
      Read 3D images atlas directory.
    • traverse_Layer

      private void traverse_Layer(File dir)
    • traverse_firstLayer

      private void traverse_firstLayer(File firstDir, String child)
    • traverse_secondLayer

      private void traverse_secondLayer(File firstLayer, String hashID)
    • traverse_scanLayer

      private void traverse_scanLayer(File secondLayer, String hashID)
    • traverse_T2Layer

      private void traverse_T2Layer(File T2Layer, String hashID)
    • traverse_DicomLayer

      private void traverse_DicomLayer(File lastLayer, String hashID)
    • algorithmPerformed

      public void algorithmPerformed(AlgorithmBase algorithm)
      This method is required if the AlgorithmPerformed interface is implemented. It is called by the algorithms when it has completed or failed to to complete, so that the dialog can be display the result image and/or clean up.
      Specified by:
      algorithmPerformed in interface AlgorithmInterface
      Parameters:
      algorithm - Algorithm that caused the event.
    • callAlgorithm

      public void callAlgorithm()
      Driver function to read image and VOIs, and convert each 3D image to 2D slices.
    • disposeMemory

      public void disposeMemory()
    • runCrop

      public void runCrop()
    • cropImage

      private ModelImage cropImage(ModelImage image)
    • runCED

      public void runCED()
    • runMask

      public void runMask()
    • runTransform

      public void runTransform()
    • calculateTransform_dim_fixed

      public ModelImage calculateTransform_dim_fixed(ModelImage image)
    • calculateTransform_resol_fix

      public ModelImage calculateTransform_resol_fix(ModelImage image)
    • runScaleIntensity

      public void runScaleIntensity()
    • histoEqual

      public ModelImage histoEqual(ModelImage image)
    • scaleIntensity

      public ModelImage scaleIntensity(ModelImage image)
    • calculateTransform

      public ModelImage calculateTransform(ModelImage image)
    • calculateCoherenceEnhancingDiffusion

      private ModelImage calculateCoherenceEnhancingDiffusion(ModelImage inImage)
    • saveTestedImages

      public void saveTestedImages()
    • crossValidationTest

      public void crossValidationTest()
    • crossValidationTrain

      public void crossValidationTrain()
    • saveImages

      public void saveImages()
    • savePNGfile

      private void savePNGfile(String dirName, String fileName, ModelImage srcImage, float minIntensity, float maxIntensity, int xDim, int yDim, boolean isMask)
    • saveImages

      public void saveImages(int key, int[] index, String folderName, Hashtable<Integer,ModelImage> whichTable)
    • saveImagesTest

      public void saveImagesTest(int key, int[] index, String folderName)
    • smoothVOI60

      public void smoothVOI60(ModelImage maskImage, ModelImage resultImage)
      Smooth VOIs to 60 points.
      Parameters:
      maskImage -
      resultImage -
    • cropKeyImages

      public void cropKeyImages()
      Crop key images.
    • loadFiles

      public void loadFiles()
      load image files and voi files
    • deleteDir

      public static boolean deleteDir(File dir)
      Debugger to test dir deletion.
      Parameters:
      dir -
      Returns:
    • readFile

      public void readFile()
    • pause

      public static void pause()
    • init

      public void init()
      Initial panel
    • buildKeyImagePanel

      public void buildKeyImagePanel()
      Panel contains both the 3D image dir and saved 2D slices atlas dir.