Skip to content

FabriceSalvaire/mamba-image

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

This Git repository was initialised from the source of Mamba Image library for Python release V1.1.3.

Later Mamba maintainers created this official repository https://github.com/nicolasBeucher/mamba-image

Mamba is an open-source Mathematical Morphology library written in C and Python. I believe it is the most complete implementation available in open source. It was developed by Serge Beucher, Nicolas Beucher and Michel Bilodeau. Serge Beucher and Michel Bilodeau are researchers in the CMM (Centre de Morphologie Mathématique) laboratory where the Mathematical Morphology was invented by Jean Serra. The source code originates from a software so called Micromorph developed and commercialised by CMM in the past.

The project home page is located here and look at this page for history and licence.

Links to Open Source Mathematical Morphology libraries

Note: all these libraries have a Python interface.

  • is an image processing library written in Python and Cython.
  • It is more complete than OpenCV (for Mathematical Morphology).
  • But not adapted for large image.
  • is under very active development,
  • but quite incomplete for Mathematical Morphology, for example reconstruction is not implemented.
  • is implemented using strict coding rules,
  • but it is generally quite slower.
  • stands for Simple Image Processing Lirary
  • is developed by Matthieu Faessel and ARMINE
  • should be open source, but source code is not yet made available
  • see this presentation to learn more about SMIL pdf It compares Mamba, SMIL, Morph-M and Fulguro.
  • is no more active
  • developed by Christophe Clienti
  • is no more active
  • developed by Raffi Enficiaud
  • is no more active and doesn't have a Python interface.

Morph-M is a proprietary library developed by the CMM.

ImageJ has some plugins on the topic.

Ideas for Improvements

  • speed: make use of more recent SIMD than SSE2, look at OpenCV and Fulguro
  • documentation: use sphinx to generate a nice HTML documentation
  • cosmetic: homogenisation of the coding (space, DOS encoding, etc.)

Changes

  • Python3 support (basic and advanced test suit pass excepted 3 tests)
  • Numpy support, see file examples/numpy_wrapper.py for usage
  • pillow support
  • some cosmetics to homogenise the coding (added space)

Building

The procedure to build Mamba is described in the readme file.

To compile and install the Mamba library, run these commands from the src/mambaApi directory :

python setup.py build_ext build
python setup.py install

You can also run make from the top directory.

Releases

No releases published

Packages

No packages published