Re: ideas for contributions
2009/9/25 Gary Ruben <gary.ruben@gmail.com>:
You may already know this, but pymorph is BSD licensed and may be a good starting point for incorporating morphological functions: http://luispedro.org/pymorph/
Damian has been working on morphological operators during the sprint, so I'll ask him to compare pymorph to the work he has done so far. It looks like pymorph pretty much covers all the Matlab functionality?
Also I have some small Finite Radon Transform routines, which are pure Python and hence not super fast (but they are super fast compared to Matlab) but they do work correctly. It's not a widely used transform but if you're interested, I'm happy to contribute it to scikits.image.transform.
I'd be very interested to see this code included! Regards Stéfan
I've set up a github account and added my finite radon transform code to my local clone. Stéfan, should I try pushing the changes back? A little bit of information about the frt. My code is a pure Python implementation. I'm told that one can implement the frt in terms of the fft which should be faster, but maybe only if rewritten in C or Cython. The best/fastest way is actually to use the number theoretic transform (ntt) which the guy in the next office to me, who is doing his PhD on this, has implemented. Anyway, that's for the future. For now, I have the frt code and my other friend said he's willing to donate the other numpy routines. This is the filtered back projection code and some other forward transform routines, which he says do work with numpy. I may take Mike Sarahan up on his offer to integrate that code, because I shouldn't be spending time on this at the moment, but my friend may do it himself. Gary
Hi Gary 2009/9/27 Gary Ruben <gary.ruben@gmail.com>:
I've set up a github account and added my finite radon transform code to my local clone. Stéfan, should I try pushing the changes back?
That's fantastic -- thanks. Could you please send me the url of your branch or, even easier, click on "request merge" on Github? Regards Stéfan
Hi Stefan, Sorry for the delayed response. I've been traveling a bit and my connectivity has been pretty intermittent. 2009/9/25 Stéfan van der Walt <stefan@sun.ac.za>:
2009/9/25 Gary Ruben <gary.ruben@gmail.com>:
You may already know this, but pymorph is BSD licensed and may be a good starting point for incorporating morphological functions: http://luispedro.org/pymorph/
Damian has been working on morphological operators during the sprint, so I'll ask him to compare pymorph to the work he has done so far. It looks like pymorph pretty much covers all the Matlab functionality?
Very interesting. pymorph is a huge library that covers a large space of mathematical morphology algorithms. I searched around google, sourceforge, and their project website, and I've been unable to find their source code to see exactly what it depends on and how it might be integrated into scikits.image. They only have a windows release of their code so I'm unable at the moment to try some benchmarks on my Linux machine. The API should definitely be changed: the function names are too short and every function begins with mm rather than using a module name to encapsulate. LIBCVD supports highly optimized, basic morphology but not the full space of algorithms provided by pymorph. Damian -- ----------------------------------------------------- Damian Eads Ph.D. Candidate University of California Computer Science 1156 High Street Machine Learning Lab, E2-489 Santa Cruz, CA 95064 http://www.soe.ucsc.edu/~eads
Hi Damian, The code is accessible via a link on LuÃs Pedro Coelho's site, but the documentation is hosted by the original authors. To be precise, the source is here: http://luispedro.org/files/pymorph-0.91.1.tar.gz He says this further down also: "Most of the documentation in the original documentation is still valid, except that I removed the mm prefix from function names..." "I also changed other small things, including removing some functions which were superfluous. See the CHANGES_SINCE_08 file in the distribution." It looks to me like it's purely dependent on numpy and a couple of standard Python modules. Perhaps it could actually be sped up by making ndimage a dependency and simply replacing a few of the functions in terms of ndimage ones. Gary Damian Eads wrote:
Hi Stefan,
Sorry for the delayed response. I've been traveling a bit and my connectivity has been pretty intermittent.
2009/9/25 Stéfan van der Walt <stefan@sun.ac.za>:
2009/9/25 Gary Ruben <gary.ruben@gmail.com>:
You may already know this, but pymorph is BSD licensed and may be a good starting point for incorporating morphological functions: http://luispedro.org/pymorph/ Damian has been working on morphological operators during the sprint, so I'll ask him to compare pymorph to the work he has done so far. It looks like pymorph pretty much covers all the Matlab functionality?
Very interesting. pymorph is a huge library that covers a large space of mathematical morphology algorithms. I searched around google, sourceforge, and their project website, and I've been unable to find their source code to see exactly what it depends on and how it might be integrated into scikits.image. They only have a windows release of their code so I'm unable at the moment to try some benchmarks on my Linux machine. The API should definitely be changed: the function names are too short and every function begins with mm rather than using a module name to encapsulate. LIBCVD supports highly optimized, basic morphology but not the full space of algorithms provided by pymorph.
Damian
participants (3)
-
Damian Eads
-
Gary Ruben
-
Stéfan van der Walt