3D-DOCTOR TUTORIALS


Tutoal Video Clips

Click on one of the topics to watch the tutorial movie clip. You will see how the task is performed in 3D-DOCTOR and use the same process for your own projects.

Getting Started Guide This tutorial demonstrates the workflow and how you can quickly create 3D models from DICOM images.
Creating 3D Models Using the 3D Wizard This tutorial demonstrates the use of the 3D Wizard for 3D rendering applications.
Modeling Soft Tissue By Manual Tracing This tutorial demonstrates the process of manual tracing a brain tumor, creating a 3D model and calculating the volume.
Segmentation using ROI (regions of interest) This tutorial shows how to use the regions of interest (ROI) to segment brain tissue on a MRI image
3D Volume Rendering & Animation This tutorial shows the volume rendering command and the steps used to create a movie
Boundary Editor This tutorial shows how to use the Boundary Editor to adjust existing boundaries and trace new boundaries.
Segmentation By Region-Growing This tutorial shows the image segmentation using the region-growing based Segment Object command.
Image Registration & Fusion This tutorial shows the process of registering a MRI image to a CT image. Fusions are created from the registered images
Automatic Image Slice Alignment This tutorial shows the process of using the "Auto Alignment" function to align an image stack that consists of 3 parts scanned separately. Sample image courtesy of Dr. I. Pappou, MD, PhD
Image Slice Alignment This tutorial shows the process of interactive image slice alignment.
3D Endovascular Imaging This tutorial shows the process of opening vascular CT scan in DICOM format, 3D volume rendering, image segmentation, 3D surface rendering and measurement. 



Step By Step Tutorials


  • The Basics
  • Put Image Slices into a Stack List
  • Reading a 3D Image Stored in Raw or Non-Standard Format into 3D-DOCTOR
  • Defining Voxel Size and Slice Thickness for Calibration
  • Creating 3D Models from your Image
  • Creating a 3D Volume Rendering
  • Interactive Multi-Modality Image Registration
  • Registering Two 3D Images and Creating a Fusion Image
  • Reslicing a 3D Image Along an Arbitrary Axis
  • 3-D Image Segmentation Using a Training Area
  • Creating Object Boundaries Using the Boundary Editor
  • Creating a 3D Rendering From 3D Contours Without Using an Image
  • 3D Volume Rendering for 3D Scientific Data
  • Automatic Alignment of Image Slices
  • One Step 3D Image Deconvolution
  • Cutting Objects in 3D Rendering
  • Use 3DBasic to Write Programs Using 3D-DOCTOR's Advanced Imaging Functions


  • 1. The Basics

    3D-DOCTOR was developed using object-oriented technology and provides efficient tools to process and analyze 3D images, object boundaries, 3D models and other associated data items in an easy-to-use environment.

    The main steps to create 3D models and volume rendering from a 2D slice images (CT, MRI, microscopy): 1) Open the 3D image, which is displayed by a single plane window and a montage window with all slices. 2) Define objects and create object boundaries for each object. 3) 3D surface rendering and volume rendering. 

    The following explains each step and commands used:

    Step 1. Open a 3D image. If your 3D image is stored in a series of DICOM files or in a format that's directly supported (DICOM, TIFF, BMP, PNG, JPG, raw image data with a header *.HDR), you can use the File/New Stack command to put the files into a stack list and open it.

    This Figure shows a CT scan of a head:

     

    If the image format is not directly supported, use the File/Raw Image File Import command to add a header or multiple header files and then open the image data files.

    If your image is on a film, for example, one film has 12 slices, you can scan the film using a scanner and then use the Image/Crop Image/Crop Region command to crop each slice and save a separate file using the File/Save/Save Image As command. Once you have the image files, then use the File/New Stack command to create the 3D stack list. All slices must be cropped to the same size so they can be put together as a 3D image for further processing.

    Volume Rendering:

    If you need to do a 3D volume rendering, you can use the 
    "3D Rendering/Volume Rendering/Smooth Rendering" command now. If you
    want to render different tissue range, go back to the image display,
    adjust the contrast and then do a volume rendering again.

    Step 2. Define objects and create boundary lines for each object. Use the Interactive Segment command to trace object boundaries interactively or the Auto Segment for fully automatic object boundary detection. 

    Interactive Segmentation:

    Once the interactive segmentation starts, the image plane display is refreshed to apply color to pixels that fall within the threshold range specified by the Min and Max values. Use the slider bar to adjust the Min and Max values. The display of the image slice is updated in real-time according to the current threshold selection. When pixels that belong to the intended object are displayed in color, you can click the “Segment Plane” button to extract the boundaries for the current image plane. Use the “Next Plane” or “Prev Plane” button to go through other planes to segment them individually. If the threshold values are applicable to all slices, you can click on the “Segment All” button to extract boundaries for all image slices. Click “Finish” to leave the interactive segmentation function.  

    Boundary lines can be edited using the Boundary Editor under the Edit menu or processed using the boundary line processing functions under the Edit/Boundary Process menu. Boundary lines are organized by object groups for more effective management and more flexible use by the rendering functions.

    You can use the Object Report to get detailed quantitative analysis of the objects.  

    Step 3. When boundary lines are generated, use 3D surface rendering to create 3D surface models or  3D volume rendering. The 3D models can be exported to many 3D formats for simulation, animation, rapid prototyping, quantitative analysis and other applications.

    You can also calculate the volume using the Tools/Calculate Volume command and the Tools/Measure to make 3D measurements on the model.

    This figure shows the model created for the skull.

    3D Pelvis Model


    Back to Top



    2. Put Image Slices into a Stack List

    Very often, a 3D image is very large in size and the image planes or slices are stored in separate files.  They may be stored in a format supported by 3D-DOCTOR, such as DICOM, TIFF, JPEG, or BMP or stored in a format that can be imported into 3D-DOCTOR.

    The following lists the steps needed to create a stack list for 3D image processing and 3D rendering.

    Step 1. Select File/New Stack. The Create 3D Image Stack dialog box will appear.

    Step 2. If a “DICOMDIR” file exists, you can use the “DICOMDIR” button to open it.

    If there is no DICOMDIR file, use the "Add Files" button to add image slices files to the stack list.

    A Select Image Files dialog box is used to browse and select files. The Select Image Files dialog box supports multiple file name selections so you can add several files in one group. Make sure the order of the files added correspond to the order the image planes are acquired. To select multiple files, hold down the SHIFT KEY and click the left mouse button to select a group files. You can also hold down the CTRL KEY and click the left mouse button on individual files to select.

    If all files displayed in the list are to be added, use the “Select All” button and then “Open” to add them to the list.

    The "Delete" button allows you to delete a file from the current list. Select a file from the list first and then press the "Delete" button.  The deleted files can be added before or after a selected file using the “Add Before” or the “Add After” buttons.

    If you need to take a look at an image file added in the list, select the file name in the list and then press the "Preview" button. The image will be displayed in the preview window.

    Note: If the image can not be previewed, then you may have a problem with the file or the file format used. You may have to use 3D-DOCTOR's File/Raw Image File Import function to configure the file first.

    Step 3. Once the files are added to the list, save the list to a stack list file. In the future, you can also open the stack list directly for processing.

    Step 4. Sorting Options: for most DICOM images, use the “Sort By Image Position” option. If the image slices do not appear to be sorted correctly, you can use the “Image/Reslice/Sort By Image Number” command to resort the slices after the stack is open.

    For other image formats, you should add them in the correct order or use the “Sort By Name” button to sort them.

    Step 5. Click the "Open" button to open the 3D image stack you just created. In the future, you can use the File/Open command to open the list file directly. All files stored in the list will be treated as an image plane within the 3D image.

    About the “Stack List” File:

    The stack list file is a simple ASCII text file that looks like this

    STACK LIST FILE

    C:\images3d\HeadCTHalf\17283179

    C:\images3d\HeadCTHalf\17283197

    C:\images3d\HeadCTHalf\17283215

    C:\images3d\HeadCTHalf\17283233

    C:\images3d\HeadCTHalf\17283251

    C:\images3d\HeadCTHalf\17283269

    C:\images3d\HeadCTHalf\17283287

    The first line indicates the file type. After that, each line is a file path to an image slice. You can edit the stack list file using Windows NotePad or any text file editor.

    To delete an image slice file from the stack, find the line and delete it.

    To add an image slice to the stack manually, you need enter the file path at the correct location.

    File order can be also re-arranged by changing the order of the files in the Stack List.

    Back to Top



    3. Reading a 3D Image Stored in Raw or Non-Standard Format into 3D-DOCTOR

    3D-DOCTOR supports various image file formats directly, including DICOM, TIFF, JPEG, Interfile   and BMP. For other non-standard image file formats, such as a raw binary file or a vendor proprietary image file format, 3D-DOCTOR’s raw image import function will create an image header file for the raw image data file when its configuration or file structure is known.

    If an image is 256 by 256, uncompressed, and 12-16 bits deep (and hence usually stored as two bytes per pixel), then the file is going to contain 256*256*2=131072 bytes of pixel data at the end of the file. If the file is 145408 bytes long, as all GE Signa 3X/4X files are for example, then you need to skip 145408-131072 = 14336 bytes of header before you get to the data. If you are sure the pixel data is stored at the end of the file, then you can enter –1 and let 3D-DOCTOR calculate it automatically for you.

    Because images can be stored either by row or by column, the imported image orientation may be different or incorrect. In this case, the Image/Flip or Transpose commands can be used to adjust the orientation.

    3D-DOCTOR has two functions under the File menu for importing raw image files, File/Raw Image File Import/Single File and File/Raw Image Import/Multiple Files. The first command is used to create a header file for a single image data file, either stored as a 3D volume or as a 2D plane. The second command is used to create headers for a group of image data files belonging to a 3D volume image. When creating headers for multiple files, an image stack list file (*.lst) can be created as well, which will be used by 3D-DOCTOR to open the volume image.

    Once the header file is created correctly, you can then use the header file (*.HDR) instead of the image data file to open the image and read the data into 3D-DOCTOR. The file will be treated the same as a directly supported file format, like DICOM or TIFF.

    The following are the steps needed to create a header file for a single non-standard image file or a list file for an image volume stored in multiple files:

    Step 1. Select File/Raw Image Import/Single File if dealing with only one raw image data file or the File/Raw Image Import/Multiple Files command if working with multiple files for an image volume. Both commands create a header or configuration file for each image data file, which allows 3D-DOCTOR to read a non-standard or proprietary image data file directly.  The command for multiple files can also generate a list file for the volume image. This provides a universal image reader capable of handling most uncompressed image file formats so you can bring your data directly into 3D-DOCTOR for processing and rendering.

    Step 2. All parameters listed in the dialog box must be correctly entered in order for the software to read the image data correctly. If you do not know the parameters, you should contact the vendor or source where you received the file to obtain these parameters. The figure below shows how the parameters correspond to data stored in an image file.

    Image Header Diagram

    Enter the following parameters:

    1.   Non-Standard Image Data Files (Multiple Files): Use the “Add Files” button to add the data files to be imported to the list. Make sure the files are added in the same order as they exist in the volume image. When the file open dialog box appears, you can select multiple files by holding down the shift key and the left mouse button. The file open dialog box has a limit on the number of files to be selected, so don’t select too many files each time. Header files will be created when the “OK” button is pressed for all the data files. Each data file will have a corresponding header file. If the configuration is different from data file to data file, then you should use the command for Single File to create header files for each individually.

    2.  List File Name (Multiple Files): Use this button to define an image stack list file name to save the list of the files to be imported.  If the list file name is not defined, then only header files are created.

    3.  Header file name (Single File): Use this field to enter a header file name to save the configuration parameters. This will be used again later in 3D-DOCTOR to read your image. If you want to copy or edit all the information from an existing header file, use the browse button to open the existing header file. All parameters will be read in for you to modify.

    4.   Image data file name (Single File): Use the “Browse” button or enter directly the file name where the image data is stored. Enter the file name exactly the way it appears as it is used by 3D-DOCTOR to find the image data.

    5.  Number of columns: This is the number of pixels in the X or column direction in one image plane or slice. 

    6.  Number of rows: This is the number of rows or pixels in the Y direction in one image plane or slice.

    7.  Number of image planes or slices: This is the number of image planes or slices in the file.

    8.  Number of bits per pixel: This tells the size of each image pixel, if the number of bits is 8, then each pixel is one byte in size and can store up to 256 levels. If the number of bits is 16, then each pixel has 2 bytes of data and can store up to 65536 levels.

    9.  Number of bytes to skip before the image data array: Some image files have a fixed length header for storing vendor specific information. The length or the size of the header must be provided so the software knows to skip it in order to read the image data correctly.  Enter -1 if you want the software to estimate it.

    10.  Little endian or big endian:  This parameter only matters when the number of bits per pixel is greater than 8, for example, when an image is in 16-bit. For most images created on a PC, the file is stored as little endian (default). If your image is created on a Macintosh or a Unix workstation, it is possible the pixel is stored as big endian. You can tell right away if the image does not display correctly, for example, discontinuous gray levels. In this case, uncheck the little endian box to set it as big endian.

    Step 3. Select “OK” to save all the information to the header file. You are now able to work with your image data by using File/Open using header file type (*.HDR).  If a list file is saved for an image volume, it will be automatically opened.

    Back to Top



    4. Defining Voxel Size and Slice Thickness for Calibration

    For a 3D image, the voxel size (image resolution) must be provided so 3D rendering will have the correct scale in all 3-dimensions and can be used by the reporting and measurement functions. If your image is stored in DICOM format, the parameters may already exist in the file header and will be used automatically by 3D-DOCTOR. However, you may need to adjust the slice thickness if some slices are not used when you create the 3D stack.

    The following explains the parameters and how they are defined. Your image must be open before you start the following steps.

    Step 1. Select the Edit/Calibrations command. The dialog box shown below appears.

     

    Step 2. If your image already has calibration parameters, for example, DICOM image files, the provided values will be displayed in the fields. Otherwise, default values are used. The X and Y values for voxel resolution is the size of one pixel in a slice. For example, a CT image has a pixel size of 1.5mm. You can enter 1.5 for both X and Y fields and the unit as mm. The slice thickness is the physical thickness of one slice plus the gap distance between 2 neighbor slices in the same measurement unit as the XY sizes. You can also think of slice thickness as the distance between the centers of 2 neighbor slices in the 3D space.

    If your image is scanned from a film or from other sources, the XYZ parameters can be estimated from the physical size of the imaged volume and the image size. For example, a 3D image covers a 3D volume with the physical width of 200mm, a height of 400mm and a depth of 100mm. The Image/Information command shows that the number of columns for the image is 1000, the number of rows is 2000 and the number of slices is 50. The calibration parameters can then be calculated by dividing the physical size by the image size.

    For this image,

    X = 200mm/1000 (cols) = 0.2mm

    Y = 400mm/2000 (rows) = 0.2mm

    And the slice thickness Z = 100mm/50 = 2mm

    You can then enter 0.2, 0.2 and 2 for the X, Y and Z fields, respectively.

    Step 3. The parameters for the Pixel Rescale portion of the dialog box are used to calibrate pixel values to their physical units, for example, the Houndsfield unit used by a CT image. Two parameters, slope and intercept, are used to define a linear transformation between the pixel value and the calibrated pixel value:

    NewValue = PixelValue * Slope + Intercept

    If you do not have the parameters, they can be calculated from the calibration step wedge, in an image where pairs of pixel values and calibrated values are available. Click the “Calculate” button to do this.  

    Back to Top



    5. Creating 3D Models From Your Image

    3D-DOCTOR allows you to 3D surface models quickly from your cross-section image. To create 3D models, you first need to generate boundary (or contour) lines for objects in the image and then use the surface rendering command to create the model. The boundary lines define image regions to be used by both volume rendering and surface model creation.

    For each 3D image, you can define multiple objects and change their display status using the Edit/Object Setting command. After the objects are defined, you can set one as “Current” and generate boundaries for it using one of the segmentation commands or the boundary editor. Boundary data can also be imported from other sources or exported to other programs.

    The following explains the process of generating boundary lines using image segmentation for 3D rendering:

    Step 1. Open the 3D image using the File/Open command. If the image has multiple slices, you should see two windows, one window displays a single slice and another window displays a montage of all the slices. If you don’t see the montage window and the image plane number is not displayed in the single slice window, then you’ll need to use File/New Stack to put the 2D image files into a 3D stack first.  

    Step 2. If you want 3D-DOCTOR to detect object boundaries automatically, simply select the 3D Rendering/Auto Segment command and enter the number which indicates how many possible objects you'd like to detect. Click OK and wait for the boundaries to be detected. If you are happy with the boundaries, go to Step 3 to turn off objects you don't want to render and then to Step 7. 

    If you'd like to segment the image planes interactively, then follow Step 3 to Step 6.

    Step 3.  Use Edit/Object Settings to add new object names for this image. When the dialog appears, enter a new object name in the edit box at the bottom and click the “Add” button to add to the object name list. Highlight one object from the list and click the “Current” button to set it as current to receive boundaries from the segmentation process in Step 5.  Click the “OK” button to finish this step.

    Step 4. The Regions of Interest (ROIs) can be defined using Edit/Region of Interest to limit the image areas for the segmentation. If ROIs are defined, only pixels within the ROIs are processed for boundary extraction. This is especially useful when segmenting objects with complex boundary lines across the image planes. Once the ROI editing is ON, you can click the left mouse button within the image to draw polygons. Press the spacebar to close a polygon. ROIs are displayed as thick blue lines.

    Step 5. Select the 3D Rendering/Interactive Segment command. Once the interactive segmentation starts, the image plane display is refreshed to apply color to pixels that fall within the threshold range specified by the Min and Max values. Use the slider bar to adjust the Min and Max values. The display of the image slice is updated in real-time according to the current threshold selection. When pixels that belong to the intended object are displayed in color, you can click the “Segment Plane” button to extract the boundaries for the current image plane. Use the “Next Plane” or “Prev Plane” button to go through other planes to segment them individually. If the threshold values are applicable to all slices, you can click on the “Segment All” button to extract boundaries for all image slices. Click “Finish” to leave the interactive segmentation function.

    Step 6. Now, you can repeat Steps 3 to 5 to segment boundaries for other objects.

    Step 7. The boundary lines can be edited using the tools provided by the Edit/Boundary Editor. If you need to split the object into two sub objects, then use the 3D Rendering/Split Object command to do it. Use the File/Save/Save Project command to save the boundaries and other data to a project file.

    Step 8. Once the boundaries are defined, you are ready to create 3D surface models.  This can be accomplished using the 3D Rendering/Simple Surface Rendering or the 3D Rendering/Complex Surface commands.   You can also create 3D volume rendering  using the 3D Rendering/Volume Rendering command.

    Step 9. When the 3D rendering display window appears, use commands under View to change the viewing angles and other controls.  

    Back to Top



    6. Creating a 3D Volume Rendering

    3D volume rendering is easy to do using 3D-DOCTOR. 

    Click here to watch a movie clip.

    The following explains the process of performing a 3D volume rendering:

    Step 1. Open the 3D image using the File/Open command. If the image has multiple slices, you should see two windows, one window displays a single slice and a second window displays a montage of all the slices. If you don’t see the MONTAGE WINDOW and the image plane number is not displayed in the image plane window, then you’ll need to use File/New Stack to put the 2D image files into a 3D stack first.

    Step 2.  If you want to use the entire image for the rendering, then use the Volume Rendering/Smooth Rendering command. Use the View/Opacity command to adjust the tissue opacity range for the display. Or

    Step 3. If you want to render a portion of the volume, within the single image plane window, start Edit/ROI Editor (Regions of Interest). Click the left mouse button to draw a region of interest and press the SPACEBAR to finish.

    Step 4. Use the Volume Rendering/Smooth Rendering command to create 3D volume rendering. Once the VOLUME VIEW window is displayed, all the view control and settings can be adjusted using commands under the View menu.

    More about volume rendering...


    Back to Top



    7. Interactive Multi-Modality Image Registration

    With 3D-DOCTOR's interactive registration command, a source image can be registered against a target image of different or same modality. 

    Click here to see details.


    8. Registering Two 3D Images Using Control Points and Creating a Fusion Image

    Click here to watch a tutorial video clip for registering two images.

    3D-DOCTOR provides the Image/Registration command to geometrically transform or register a 3D stack image (source image) against another 3D image (target image) using user defined control points. The Registration command will create a new image from the source image that has the same orientation, scale and dimension as the target image so they can fused or compared.

    When you have two images from the same patient but acquired using different imaging devices, for example, a CT and MRI image of a head, registering the two images to the same coordinate system will allow you to compare them more accurately.

    When an image is acquired with some geometric distortion, it can be geometrically corrected to its original shape when proper control points can be identified.

    The following steps are used to register a 3D image against a target image and create a fusion image from two registered images:

    Step 1. Open the target image stack and the source image stack that is going to be registered. Now move the windows away from each other so they can be accessed easily.

    Step 2. For the source image, select the Edit/Control Points On command and switch to the "New" editing mode. For the target image, select the Edit/Control Points On command and switch to the "Pick Point" mode.  

    Step 3. Go to the target image and move to an image slice where you can identify a point in both the source image and the target image. For example, the tip of the nose. Move the cursor to the identified location and click the left mouse button. A red cross is displayed to show the point is picked up from the target image.

    Step 4. Now move back to the source image and display the image slice where the identified point is located. Move the cursor to the position and click the left mouse button in the source image to add a control point at this location. The control point definition dialog box appears. On the left (From) side, the values of column, row, and plane are obtained from the source image.  The values on the right side (To) are the coordinates from the target image picked up in Step 3.

    Step 5. Repeat Step 3 and Step 4 until you have at least 4 control points for the source image. Normally you should define more than 4 control points. Make sure the control points are spread out within the volume. They must not all be in a single image slice.

    Step 6. Select the Image/Registration command. Enter the parameters required: the output file name and the dimension of the output image (use the same as the target image if fusion is going to be done). Click on the “OK” button to start the process. When the process is done, a new registered image is created and saved to the name as specified.

    Step 7. If image fusion or color fusion needs to be done, select the Image/Fusion or Image/Color Fusion command. Enter the file names and select the required image combination option and then click on “OK” to start.

    Back to Top


    9. Reslicing a 3D Image Along an Arbitrary Axis

    3D-DOCTOR provides functions to reslice a 3D image along a user-defined axis, or simply the X or the Y-axis of the current image coordinate system. With these functions, you can easily overcome the limitations of an imaging device and create image slices along another axis. By reslicing a 3D image, certain features that may be difficult to see in the original form can become more visible in the new image. The resliced image is saved in a new image file.

    For simple reslicing along the X-axis to create a side view of the image, use the Image/Reslice X Axis command. For reslicing along the Y-axis to create a top view of the image, use the Image/Reslice Y Axis command.

    If you need to reslice the image along an arbitrary axis that is defined by a 3D angle, then use the Image/Reslice Volume command.

    The dialog box appears for entering the 3D angle for the axis, namely X (up/down angle), Y (left/right angle) and Z (clockwise angle):

    Click here to see an example of the reslicing function.

    If you do not know the desired angle, you can use the following steps to estimate it:

    Step 1. Use the 3D Rendering/Volume Rendering command with Transparent mode selected.

    Step 2. Once the volume rendering is displayed, use the array keys or the viewing angle control tool buttons 

    ( ) to adjust volume orientation to the position you want to see in the new image after reslicing.

    Step 3. Use the View/Viewing Angle/Angle Setting command to show the current viewing angle. Write down the 3 values (X, Y, Z).

    Step 4. Now start the Image/Reslice Volume command and enter the 3 values from Step 3 and provide a new image file name. Click “OK” to reslice and save the new image to file. Use File/Open to open the new image file for processing.  

    Back to Top



    10. 3-D Image Segmentation Using a Training Area

    The following steps are used to segment an object in a 3D volume image based on a user defined training area:

    Step 1. It is highly recommended to define a ROI (region of interest) before this segmentation method is used. A carefully defined region of interest will keep the region growing process staying in the proper image area and from jumping to other areas when image noise is present. An ROI is defined using Edit/Region of Interest and updated by using the ROI drawing tool later.

    Step 2. To start the process, select the 3D Rendering/Segment Object/Draw Training Area command to get into the drawing mode. The right mouse button will bring up the options you can use. The training area is used to create a set of features for the 3D segmentation so it should be big enough to cover most of the typical features of the object.

    Step 3. To draw a training area, move the cursor to a location and click to define the first point. Move the cursor to the next location and click the left mouse button again to define the line segment. Repeat this process until you are close to the starting location. Hit the spacebar to close the polygon and the current image plane is segmented automatically. The object boundary in the current image plane is displayed in the image window.

    Step 4. If you want to continue the segmentation process to another plane, use the View/Previous Plane or View/Next Plane option from the main menu or from the floating pop-up menu. Hit the spacebar or select Segment Current to segment with the same training area, or draw a new training area by clicking the left mouse button in the image. The existing training area will automatically be removed when a new training area is defined.

    Step 5. If the defined ROI and the training area are general enough for the entire volume image, you can select Segment All from the right mouse button menu or from the main menu. This command will apply the signatures generated from the training area to segment all image planes that have not been segmented.

    If you want to remove the boundary lines from the current plane and restart the process, use the Remove Plane command.

    Back to Top



    11. Creating Object Boundaries Using the Boundary Editor

    Although 3D-DOCTOR provides several ways of automatic or semi-automatic image segmentation functions, sometimes when an object is complex and does not have a distinguishable edge, it is necessary to create the boundaries manually using the Edit/Boundary Editor menu. Manual boundary editing may seem to take a longer time, but once you are familiar with the editing functions, it is easy to do and faster than you would think.

    Click here to watch a video

    The following steps are suggested to draw boundaries for an object:

    Step 1. If multiple objects are going to be used for 3-D rendering, you should define your new object before the boundaries are drawn. Use the Edit/Object Settings command to add a new object and set it as the "Current" object.

    Step 2. Select the Edit/Boundary Editor On/Off command to start the editor. The default editing mode is the Piecewise Boundary option. This editing mode allows you to draw a closed polygon for the object in the current image plane. You can click the right mouse button to bring up the floating pop-up menu for additional editing options.

    Step 3. To switch to a specific image plane, you can double click your left mouse button on a image pane in the montage view window. You can also use the function key F5 or F6 to move to the previous or next image plane.

    Step 4. Move the cursor to a place on the edge of the object.  For Free Hand Boundaries you must hold down the left mouse button while you draw the entire boundary.  For drawing Piecewise Boundaries, click and release the left mouse button to start the drawing. Once the first point is drawn, move the cursor to the next point along the boundary. Click the left mouse button again to confirm the point. Repeat this step to draw more points along the boundary. If a point is not correctly defined, use the Backspace (?) key to undo the point. With the Backspace key you can undo multiple steps. When you are close to the starting point, hit any key on the keyboard to close the boundary. You now have a finished boundary for the object in this image plane.

    Although you can use the same process in this step to draw a new boundary for another image plane, we have found it is easier to copy the current boundary to the next plane and modify the new boundary instead. In this tutorial, we'll use the copy to next plane approach.

    Step 5. Click the right mouse button to show the editing options. Select the Copy to Next Plane option and then click on the boundary to copy it to the next image plane. You will not see the boundary for the next plane unless you have selected the View/Overlay/Neighbor Boundaries option. However, the copied boundary will be displayed in the montage window if one is present.

    Step 6. Click the F6 key to move to the next image plane. To modify the boundary so that it fits the object in the current plane, use the Add Node, Move Node, or Delete Node options within the Boundary Editor. If you need to move some points, first click the right mouse button to bring up the editing menu, then select the Move Node option. If you want to see the exact location of the points, select the View/Overlay/Boundary Nodes command. Move the cursor to a node, hold down the left mouse button and drag it to a new location. Release the left mouse button to confirm the new location.

    Step 7. Repeat Step 5 and Step 6 to continue working on a plane by plane basis. Once all boundary lines are created, you can save the boundary lines to a boundary file, and then create surface or volume rendering.

    Back to Top



    12. Creating a 3D Rendering from 3D Contours Without Using an Image

    When you have only object boundaries or 3D contours  created from other programs or 3D measurement devices, you can use 3D-DOCTOR to edit and analyze the boundaries and create a 3D surface rendering for visualization.

      The following are the steps for creating a 3D rendering from contours with or without an image:

    Step 1. Use File/New Workspace to open a blank window.

    Step 2. Use the File/Boundary/Import Boundary command to open the boundary data file for display in the blank window. The boundary data must be stored in a format supported by 3D-DOCTOR. The native boundary data format (*.BND) used by 3D-DOCTOR is an ASCII file. For each closed boundary, the first number is the Z value, followed by point pairs of X and Y values (X,Y) along the boundary. The last point is the same as the first point to indicate that it is a closed boundary. The word "END" follows the last point of the boundary. The next boundary starts the same way. After the "END" of the last boundary, the word "END" is used one more time to indicate the end of the file. The following example shows what the syntax looks like:


    Z1
    X11,Y11
    X12,Y12
    ...
    X1N,Y1N
    X11,Y11
    END
    Z2
    X21,X21
    X22,Y22
    ...
    X2M,Y2M
    X21,Y21
    END
    ...
    ZK
    XK1,YK1
    XK2,YK2
    ...
    XKO,YKO
    XK1, YK1
    END
    END

    Step 3. If you need to adjust the size of the workspace, use the Edit/Resize Workspace command. Changing the workspace size will not affect the size of boundary lines, only their relative location in the window.

    Step 4. If you need to edit your boundary data, use the Edit/Boundary Editor On command.

    Step 5. Use the 3D Rendering/Simple or Complex Surface Rendering command to create a 3D display of your data.

    Back to Top



    13. 3D Volume Rendering for 3D Scientific Data

    For 3D scientific data that do not have distinguishable object boundaries, 3D-DOCTOR provides an easy way to create 3D volume rendering for visualization and analysis.

    Click here to see an example.  

    The following are the steps for creating 3D Volume Rendering for Scientific Data:

    Step 1. Open the 3D image. If each image slice or plane is stored in a separate file, use File/New Stack to create a 3D stack list.

    Step 2. Use the 3D Rendering/Cube Boundary command to create a cubic boundary for the 3D volume. If you want to visualize part of the 3D volume, use the 3D Rendering/Split Object command of right mouse click on the Split Object command to cut the cube.

    Step 3. If the three dimensions have different scaling factor, for example, the spacing between slices or pixels is not even, use Edit/Calibrations to enter the scaling factor so the scales can be used to correct the display of the 3D rendering.

    Step 4. Use the 3D Rendering/Volume Rendering command to do the 3D rendering. Use the options under the View menu while in the Volume View window display to select the desired rendering mode and adjust the display.

    Back to Top



    14. Automatic Alignment of Image Slices

    When objects move during the imaging process or you are working with images taken at different times, image slices may not be aligned properly and this can affect the accuracy of image analysis. 3D-DOCTOR's Auto Alignment command uses maximum likelihood algorithm to align slices automatically and accurately across the stack.   

    Click here to see an example.

    The following are the steps for auto alignment:

    Step 1. Open the 3D image. If each image slice or plane is stored in a separate file, use File/New Stack to create a 3D stack list.

    Step 2. Define an image region using the left mouse button. An image region is an area with strong contrast, visible patterns, and variations.

    Step 3. Select the Image/Auto Alignment command.  Adjust the matching parameters if needed and define an output file name. Select "OK" to start the process. A properly aligned image is created and saved as a new image file.

    Step 4. Use File/Open to display the new image file.

    Back to Top



    15. One Step 3D Image Deconvolution

    Image deconvolution is used to remove or reduce degradations caused during the imaging process. These include the blurring introduced by optical systems and by image motion, as well as noise due to electronic and photometric sources. 3D-DOCTOR provides two types of deconvolution to restore degraded 3D images, one is a Fast Nearest Neighbor deconvolution and the other is an iterative Maximum Entropy deconvolution method.  

    Click here to see a deconvolution example.

    Although the deconvolution process is quite complex, 3D-DOCTOR provides a very simplified user interface to make it easy to use. To do a deconvolution, you simply select the Image/Deconvolution/Maximum Entropy command to start.

    The following explains the parameters in the dialog box that appears (See Figure) and how to define them:

     

    The feedback factor is in the scale of 1 to 100. The larger the feedback factor, the stronger the deconvolution will be applied during iteration. However, if the original image is noisy, a smaller feedback factor should be used to reduce the noise.

    The “number of iterations” controls how many iterations the process will take. If both the image and the point spread function (PSF) are in good quality and do not have much noise, a smaller number of iterations may be sufficient.

    Back to Top


    16. Cutting Objects in 3D Rendering

    With 3D-DOCTOR, an object defined by object boundaries can be cut or split into smaller objects. To get the most accurate 3D rendering, cutting an object is done in 2 steps:

    Step 1. Activate the image plane view window where the object boundary is displayed. Select the Edit/Boundary Process/Split Object command. The cursor will change to a cross. Move the cursor to the starting location of the cutting line and click the left mouse button to confirm. Now you'll see a rubber band line which connects the cursor to the starting location. Move the cursor to the ending location and click the left mouse to define the line. A dialog box appears to let you select the range of image slices to be cut. Select the option "Only keep object on the right" to keep the split object on the right side of the cutting line or uncheck it to keep objects on both side.

    Step 2. Once the new object boundaries are cut, the Object management dialog box appears. In this dialog box you can turn off objects that are not to be used for 3D rendering. Now select a 3D rendering (surface or volume) command to create the 3D rendering of the split objects.

    Back to Top