ITK Implementation Of The Minimum Error Image Thresholding Algorithm

Please use this identifier to cite or link to this publication:
An implementation of the minimum error thresholding algorithm is presented. In this implementation, two versions of the minimum error thresholding algorithm are made available, one utilizing a Gaussian- and the other utilizing a Poisson- mixture model. Two ITK classes are created: The first one (MinErrorThresholdImageCalculator) is used to compute the threshold; the second (MinErrorThresholdImageFilter) is used as an image-thresholding filter. The results indicate code correctness and are comparable to those of Otsu’s thresholding algorithm.
minus 2 Datasets (747Kb)
There is no code review at this time.

minus A useful automatic threshold detection by Gaetan Lehmann on 2009-01-03 17:11:54 for revision #1
starstarstarstarstar expertise: 4 sensitivity: 5

The author describe an automatic threshold computation method called Minimum Error
Image Thresholding Algorithm and the implementation he made and compare it to the Otsu's one.

Open Science:

The source code is provided as well as the input images.


I've been able to download, build and run the code with the test program. I haven't been able to validate the result produced, as the author doesn't provide the output images. I would suggest checking output image in the test. This can be acheived easily with itkTestDriver with the following lines:


ADD_TEST( Test ${TEST_COMMAND} ${CurrentExe}
          ${CMAKE_SOURCE_DIR}/images/input.png out.png
          --compare out.png ${CMAKE_SOURCE_DIR}/images/test.png

Open source Contributions:

The code is built on the same model than ITK's Otsu filter, and the specific parts are well described, so it is easy to use.

Code Quality :

The code is quite nice and easy to read and should run without problems on any platforms supported by ITK.


Automatic threshold method are very useful in many domains. Having many of them make possible to chose the best one for a segmentation task. Also, this method is a reference in automatic threshold computation. It's a must have for method comparisons.

Free comment :

Just a few comments:

  • Otsu filter use a strange convention used only in that filter in ITK: the background in white and the foreground black. You should prefer the one used elsewhere: the background in black and the foreground white

  • ITK's naming convention requires to avoid abbreviations, so MinError should be replaced by MinimumError

  • an enum would be easier to represent the distribution used, and would make easier the implementation of another distribution (if possible) than the m_UseGaussian and m_UsePoisson vars

  • check the output images as suggested before

great contribution!

Add a new review
Quick Comments

Download All
Download Source code

Statistics more
Global rating: starstarstarstarstar
Review rating: starstarstarstarstar [review]
Code rating:
Paper Quality: plus minus

Information more
Categories: Filtering, Segmentation
Keywords: Minimum error thresholding, Otsu thresholding
Toolkits: ITK, CMake
Export citation:


Linked Publications more
Diffeomorphic Demons Using ITK's Finite Difference Solver Hierarchy Diffeomorphic Demons Using ITK's Finite Difference Solver Hierarchy
by Vercauteren T., Pennec X., Perchant A., Ayache N.
Surface Meshes Incremental Decimation Framework Surface Meshes Incremental Decimation Framework
by Gelas A., Gouaillard A., Megason S.

View license
Loading license...

Send a message to the author
Powered by Midas