FAQ - SDC Morphology Toolbox for MATLAB

Answers to Frequently Asked Questions
19Apr2001


Table of Contents

  1. Does the SDC Morphology Toolbox requires the Image Processing Toolbox of MATLAB?
  2. Where is the official website of the SDC Morphology Toolbox?
  3. When upgrading the MATLAB version, do I need a new license authorization for the SDC Morphology Toolbox?
  4. When upgrading the morphology toolbox, do I need a new license authorization?
  5. Is it possible to keep two versions of the SDC Morphology Toolbox?
  6. How do I apply morphological operators to regions of interests (ROIs) of non-rectangular shapes? The ROIs are defined by a set of polygons using the roipoly function of MATLAB.
  7. After a clear command, the SDC Morphology Toolbox functions don't work. The error message is that a library is missing. What is the problem?
  8. I would like to know a bit more about how the function mmareaopen, how it works, from a theoretical standpoint. Is there a reference that you can suggest that describes the function carried out by this routine and its theoretical basis (a journal article or textbook would be great)?
  9. If your question is not here, just ask to morph@mmorph.com.

  1. Does the SDC Morphology Toolbox requires the Image Processing Toolbox of MATLAB?

    No, it just requires MATLAB 5 or above.


  2. Where is the official website of the SDC Morphology Toolbox?
  3. The official SDC Morphology Toolbox homepage is http://www.mmorph.com


  4. When upgrading the MATLAB version, do I need a new license authorization for the SDC Morphology Toolbox?
  5. No. All you need, after installing the new MATLAB version is to include in the startup.m file a call to mmstartup. Like:

        run('/morph/morph0.13/lib/mmstartup.m')
        

  6. When upgrading the morphology toolbox, do I need a new license authorization?
  7. Yes, the license key depends on the SDC Morphology Toolbox version number.


  8. Is it possible to keep two versions of the SDC Morphology Toolbox?
  9. Yes, both library files have different names and can be kept together. All is necessary to change from using one version or another is to call the proper mmstartup file when MATLAB starts up. See file startup (% which startup; type startup). An example of a startup file is below:

        % uncomment the line below to use version 0.13
        run('/morph/morph0.13/lib/mmstartup.m')
        % uncomment the line below to use version 0.12
        %run('/morph/morph0.12/lib/mmstartup.m')
        

  10. How do I apply morphological operators to regions of interests (ROIs) of non-rectangular shapes? The ROIs are defined by a set of polygons using the roipoly function of MATLAB.

    You can use the result of roipoly to select only the area you want to filter. This can be done explicitly using the scheme below:

    a = imread('bloodcells.tif');
    bw = roipoly(a);
    f = mmdil(a, mmsecross(3));
    bg = mmgray(bw);
    c = mmunion(mmintersec(f,bg), mmintersec(a, mmneg(bg)));
    imagesc(c);
    

  11. After a clear command, the SDC Morphology Toolbox functions don't work. The error message is that a library is missing. What is the problem?

    This message happens when the morphology library libmorph.dll file was not copied to the Windows directory, as the last step of the installation of mminstall.


  12. I would like to know a bit more about how the function mmareaopen, how it works, from a theoretical standpoint. Is there a reference that you can suggest that describes the function carried out by this routine and its theoretical basis (a journal article or textbook would be great)?

    Area open is indeed a very powerful function. There are two very good papers on area open by Luc Vincent (who actually introduced it). Unfortunately, they were only published in conferences:

    Luc Vincent
         Morphological Area Opening and Closings for Greyscale Images
         Proc. "Shape in Picture'92 - NATO Workshop, Driebergen, The Netherlands, Sept92,
         Springer Verlag
    
    Luc Vincent
         Grayscale Area Opening and Closing, their efficient implementation and 
         applications.
         Proc. "Eurasip Workshop on Mathematical Morphology and its Applications to
         Signal Processing"
         Barcelona, Spain, May 1993.
    

    To fully understand area open, you need first to understand regional maximum (mmregmax). Area open recursively, lowers the regional maximum flat zone by 1, if it does not have the area specified by the parameter. The concept of regional maximum is not difficult to understand. You need not to confuse this with local max which is a pixelwise operator. Regional max is a "connected region of same pixel values" surrounded by strictly lower value pixels.