Class JDialogProstateSPIEcancerChallengeNIH_train_ced_ext

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.JDialogProstateSPIEcancerChallengeNIH_train_ced_ext
All Implemented Interfaces:
AlgorithmInterface, DialogDefaultsInterface, ActionListener, FocusListener, ItemListener, WindowListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible, RootPaneContainer, WindowConstants

public class JDialogProstateSPIEcancerChallengeNIH_train_ced_ext extends JDialogBase implements AlgorithmInterface
The MICCAI ProstateX challenge is rolling over to prostate segmentation, which includes the whole prostate(wp) and central gland(cg). This is the first attempt to try the wp and cg segmentation. Combining the CED and MRI slices to train one HED deep learning model. This version is the one helps us to win MICCAI ProstateX 2017 challenge for the third place. I implemented this version a week before the challenge submission deadline. The training date includes NIH data + ProstateX training data. For the challenge, we apply this class to central gland segmentation for the challenge testing data. steps: 1) From MRI image, generates the binary mask images. 2) Normalize the MRI image slices within range [0, 1000]. 3) Generate the CED slices 3) save MRI and CED slices with corresponding binary masks in png format.
Author:
Ruida Cheng
See Also:
  • Field Details

  • Constructor Details

    • JDialogProstateSPIEcancerChallengeNIH_train_ced_ext

      public JDialogProstateSPIEcancerChallengeNIH_train_ced_ext(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_modified

      private void traverse_layer_modified(File dir)
    • traverse_Layer_noCoil

      private void traverse_Layer_noCoil(File dir)
    • traverse_firstLayer_noCoil

      private void traverse_firstLayer_noCoil(File firstDir, String child)
    • traverse_secondLayer_noCoil_ext

      private void traverse_secondLayer_noCoil_ext(File firstLayer, String hashID)
    • traverse_secondLayer_noCoil

      private void traverse_secondLayer_noCoil(File firstLayer, 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()
    • runTransform_ext

      public void runTransform_ext()
    • runCrop_ext

      public void runCrop_ext()
    • runScaleIntensity_ext

      public void runScaleIntensity_ext()
    • runCED_ext

      public void runCED_ext()
    • runScaleIntensity

      public void runScaleIntensity()
    • histoEqual

      public ModelImage histoEqual(ModelImage image)
    • scaleIntensity

      public ModelImage scaleIntensity(ModelImage image)
    • runMask

      public void runMask()
    • runMask_ext

      public void runMask_ext()
    • runCED

      public void runCED()
    • calculateTransform

      public ModelImage calculateTransform(ModelImage image)
    • calculateCoherenceEnhancingDiffusion

      private ModelImage calculateCoherenceEnhancingDiffusion(ModelImage inImage)
    • train

      public void train()
    • savePNGfile

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

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

      public void saveImages_ext(String key, int[] index, String folderName, Hashtable<String,ModelImage> whichTable)
    • loadFiles

      public void loadFiles()
      load image files and voi files
    • 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.
    • calculateTransform_resol_fix

      public ModelImage calculateTransform_resol_fix(ModelImage image)
    • cropImage

      private ModelImage cropImage(ModelImage image)
    • cropImage_ext

      private ModelImage cropImage_ext(ModelImage image)
    • saveImagesTest

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

      private void savePNGfile(String dirName, String fileName, ModelImage srcImage, float minIntensity, float maxIntensity, boolean isMask)