Attached here my cython implementation of the bilateral filter, which is my first cython program. I would ask for the following: 1. Is there any way to speed up the code just by "cosmetic" modifications? 2. In particular I use the unportable gcc function __builtin_abs: Is there any way to access this in a portable way? 3. I would like to donate this code to scipy or any other suitable project. What can/should I do to realise it? Remarks: The code contains 3 end-user routines: 1. A pure python implementation: Easy to read and modify --- it can be cut out into a python source code. 2. A straight forward cython implementation: About 4 times as fast as the python implementation. 3. An optimised cython implementation earning another factor of 2 in speed (depends on the parameters used). I see this code as a "research grade" that would evolve in the near future, as I am working on a related project, and hopefully following your comments. Nadav
Attached here my cython implementation of the bilateral filter, which is my first cython program. I would ask for the following:
Thanks for the code! I know it will be of use to me. (Do you place any particular license on it?) Zach On Aug 5, 2008, at 9:38 AM, Nadav Horesh wrote:
Attached here my cython implementation of the bilateral filter, which is my first cython program. I would ask for the following:
• Is there any way to speed up the code just by "cosmetic" modifications? • In particular I use the unportable gcc function __builtin_abs: Is there any way to access this in a portable way? • I would like to donate this code to scipy or any other suitable project. What can/should I do to realise it?
Remarks:
The code contains 3 end-user routines: • A pure python implementation: Easy to read and modify --- it can be cut out into a python source code. • A straight forward cython implementation: About 4 times as fast as the python implementation. • An optimised cython implementation earning another factor of 2 in speed (depends on the parameters used). I see this code as a "research grade" that would evolve in the near future, as I am working on a related project, and hopefully following your comments.
Nadav <bilateral.pyx>_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
On Tue, Aug 5, 2008 at 9:29 AM, Zachary Pincus <zachary.pincus@yale.edu> wrote:
Attached here my cython implementation of the bilateral filter, which is my first cython program. I would ask for the following:
Thanks for the code! I know it will be of use to me. (Do you place any particular license on it?)
It would be great if you would use the new BSD license. If you want it included in SciPy, you will need to use that license anyway. Thanks, -- Jarrod Millman Computational Infrastructure for Research Labs 10 Giannini Hall, UC Berkeley phone: 510.643.4014 http://cirl.berkeley.edu/
As much as I know, the python's community is bound to the BSD style licence. I was hoping that the code would be included in scipy, after I would attach the required declaration (I do not know which), and maybe with some adjustment to the coding style. In short, for the next few days I am waiting for comments and responses that would enable me to donate the code to an existing project (scipy? pyvision?). Meanwhile I'll improve the co a bit. If you can't wait, and not willing to use the code without a licence statement, I'll repost the code with the scipy's licence declaration. Nadav. -----הודעה מקורית----- מאת: numpy-discussion-bounces@scipy.org בשם Zachary Pincus נשלח: ג 05-אוגוסט-08 19:29 אל: Discussion of Numerical Python נושא: Re: [Numpy-discussion] Bilateral filter
Attached here my cython implementation of the bilateral filter, which is my first cython program. I would ask for the following:
Thanks for the code! I know it will be of use to me. (Do you place any particular license on it?) Zach On Aug 5, 2008, at 9:38 AM, Nadav Horesh wrote:
Attached here my cython implementation of the bilateral filter, which is my first cython program. I would ask for the following:
• Is there any way to speed up the code just by "cosmetic" modifications? • In particular I use the unportable gcc function __builtin_abs: Is there any way to access this in a portable way? • I would like to donate this code to scipy or any other suitable project. What can/should I do to realise it?
Remarks:
The code contains 3 end-user routines: • A pure python implementation: Easy to read and modify --- it can be cut out into a python source code. • A straight forward cython implementation: About 4 times as fast as the python implementation. • An optimised cython implementation earning another factor of 2 in speed (depends on the parameters used). I see this code as a "research grade" that would evolve in the near future, as I am working on a related project, and hopefully following your comments.
Nadav <bilateral.pyx>_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
On Tue, 5 Aug 2008, Nadav Horesh apparently wrote:
As much as I know, the python's community is bound to the BSD style licence. I was hoping that the code would be included in scipy, after I would attach the required declaration (I do not know which), and maybe with some adjustment to the coding style.
In short, for the next few days I am waiting for comments and responses that would enable me to donate the code to an existing project (scipy? pyvision?). Meanwhile I'll improve the co a bit. If you can't wait, and not willing to use the code without a licence statement, I'll repost the code with the scipy's licence declaration.
I had a little trouble understanding what you meant above. So just to be clear... If you offer the code now under a BSD license, that will be acceptable to SciPy. Additionally, I cannot imagine a project (including GPL projects) who would find the BSD license a problem. That is one of the great things about the BSD and MIT licenses! Also, just to be clear, if you release as BSD and later wish to also release your code under another license, you can do so. Finally, anyone would be foolish to use the code without your permission, and once you give your permission your are licensing the code, so you may as well be clear from the start. IANAL, Alan Isaac
Nadav Horesh wrote:
Attached here my cython implementation of the bilateral filter, which is my first cython program. I would ask for the following:
1. Is there any way to speed up the code just by "cosmetic" modifications? 2. In particular I use the unportable gcc function __builtin_abs: Is there any way to access this in a portable way? 3. I would like to donate this code to scipy or any other suitable project. What can/should I do to realise it?
Remarks:
The code contains 3 end-user routines:
1. A pure python implementation: Easy to read and modify --- it can be cut out into a python source code. 2. A straight forward cython implementation: About 4 times as fast as the python implementation. 3. An optimised cython implementation earning another factor of 2 in speed (depends on the parameters used).
I see this code as a "research grade" that would evolve in the near future, as I am working on a related project, and hopefully following your comments. This would be a very welcome addition to SciPy. Thank you.
-Travis
I made the following modification to the source code, I hope it is ready to be included in scipy. 1. Added a BSD licence declaration. 2. Small optimisation. 3. The code is split into a cython back-end and a python front-end. All remarks are welcome, Nadav. On Tue, 2008-08-05 at 16:08 -0500, Travis E. Oliphant wrote:
Nadav Horesh wrote:
Attached here my cython implementation of the bilateral filter, which is my first cython program. I would ask for the following:
1. Is there any way to speed up the code just by "cosmetic" modifications? 2. In particular I use the unportable gcc function __builtin_abs: Is there any way to access this in a portable way? 3. I would like to donate this code to scipy or any other suitable project. What can/should I do to realise it?
Remarks:
The code contains 3 end-user routines:
1. A pure python implementation: Easy to read and modify --- it can be cut out into a python source code. 2. A straight forward cython implementation: About 4 times as fast as the python implementation. 3. An optimised cython implementation earning another factor of 2 in speed (depends on the parameters used).
I see this code as a "research grade" that would evolve in the near future, as I am working on a related project, and hopefully following your comments. This would be a very welcome addition to SciPy. Thank you.
-Travis
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
Hi Nadav 2008/8/6 Nadav Horesh <nadavh@visionsense.com>:
I made the following modification to the source code, I hope it is ready to be included in scipy.
Added a BSD licence declaration. Small optimisation. The code is split into a cython back-end and a python front-end.
All remarks are welcome,
Thanks for working on a bilateral filter implementation. Some comments: 1. Needs a setup.py file to build the Cython module (simplest possible is attached) 2. numpy.numarray.nd_image should be scipy.ndimage 3. For inclusion in SciPy, we'll need some tests and preferably some examples. 4. Docstrings should be in SciPy format. 5. ndarray.h should be numpy/ndarray.h Thanks for writing this filter; I found it useful! Cheers Stéfan
participants (6)
-
Alan G Isaac
-
Jarrod Millman
-
Nadav Horesh
-
Stéfan van der Walt
-
Travis E. Oliphant
-
Zachary Pincus