Searching for tutorials and software about Deep Learning and Neural Nets? Be sure to look at my Resource Page!
Looking for Octave? Go to my Easy Octave on Mac page!

Monday, March 9, 2015

Our hero of the day: Luis Pedro Coelho, creator of the Mahotas graphics and vision library for Python

Everyone will be famous for 15 minutes, said Andy Warhol, and I always imagine a rabbit that gets picked out by the TV spotlight. Today our rabbit and blog hero is Luis Pedro Coelho who created an easy to learn Python image processing / computer vision library called Mahotas. I guess as a scientist I owe Pedro Luis a real citation, so here it comes:

Coelho, L.P. 2013. Mahotas: Open source software for scriptable computer vision. Journal of Open Research Software 1(1):e3, DOI:

The slide below shows how Mahotas —at 1 o'clock— fits into the Python ecosystem.

To me, the Mahotas vision library seems notable as much for what it is, Python-oriented from the start, clean, fast to pick up, and easy to install via standard Python installers, as for what it is not, namely the elephantesque OpenCV toolkit inherited from the  C++ community.

Update: Aftter this blog post went live,  sent Luis an email asking why the elephant got stealthed in this slide. 
> I cannot help but notice that you left OpenCV out of the ecosystem slide
> ...was this intentional?
Mostly historical: at the time I did the slide (this was before the
presentation), openCV had some trouble playing with numpy. I remember
you could crash the Python interpreter by doing so (if you passed it a
numpy array with the wrong type, it wouldn't check and then segfault).


In the same presentation, made with reveal.js, I found another slide which seems to show that the takeup on Mahotas is pretty good. 

Of course, the science community is already knee-deep in vision and graphics libraries, just as it is knee-deep in open source and closed source languages and environments - Mathematica, Matlab, Octave, Scilab, R,  C++, Perl and yes, Python. But as Luis points out, Python is flexible, powerful and free, which means Python is always a prudent and open source second choice wherever computers are used in a lab or science teaching environment.  


No comments:

Post a Comment

Hey, let me know what you think of my blog, and what material I should add!