Re: [Gimp-developer] Best way for "limit distance"

2004-12-02 Thread Joseph Heled

Øyvind Kolås wrote:
http://pippin.gimp.org/tmp/despeckle_adaptive_non_recursive_radius_1_black_level_0_white_level_256.png.html
might be similar to what you want (note that I have run it on the jpeg
version of
your original.) running with a radius of 1.
/pippin
I was careless and did not realize the jpeg will make such a big difference. I 
replaced the original on my page with a png file, which you can grab if you wish 
and see the problem for real.

While your settings are definitely better, personally I find the result not good 
enough. And as I mentioned, the speed of the plugin is a big deterrent as well.

-Joseph
___
Gimp-developer mailing list
[EMAIL PROTECTED]
http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Best way for "limit distance"

2004-12-02 Thread Joseph Heled
I am using gimp-2.2-pre2. I certainly get totally different results than you for 
the same setting. I would appreciate some advice on how to find out how can that be,

-Joseph
Øyvind Kolås wrote:
On Fri, 03 Dec 2004 10:12:37 +1300, Joseph Heled
<[EMAIL PROTECTED]> wrote:
BTW, all this was part of a small evaluation of CCD noise removal method. If you
are interested, the details are in
http://pages.quicksilver.net.nz/pepe/d70/Nikon_D70_on_Linux.html#ISONoise
The results are quite dismaying. I appreciate any insight on the subject.
However please note I am not looking for a solution for the specific image I
used, but a generic one.

I think you are running with an old version of the gimp, the artifacts
from the median filtering done in the Despeckle plugin doesn't look
good at all in your image,. somehow it seems like the result I achieve
in
http://pippin.gimp.org/tmp/despeckle_adaptive_non_recursive_radius_1_black_level_0_white_level_256.png.html
might be similar to what you want (note that I have run it on the jpeg
version of
your original.) running with a radius of 1.
/pippin
___
Gimp-developer mailing list
[EMAIL PROTECTED]
http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Best way for "limit distance"

2004-12-02 Thread Øyvind Kolås
On Fri, 03 Dec 2004 10:12:37 +1300, Joseph Heled
<[EMAIL PROTECTED]> wrote:
> BTW, all this was part of a small evaluation of CCD noise removal method. If 
> you
> are interested, the details are in
> http://pages.quicksilver.net.nz/pepe/d70/Nikon_D70_on_Linux.html#ISONoise
> 
> The results are quite dismaying. I appreciate any insight on the subject.
> However please note I am not looking for a solution for the specific image I
> used, but a generic one.

I think you are running with an old version of the gimp, the artifacts
from the median filtering done in the Despeckle plugin doesn't look
good at all in your image,. somehow it seems like the result I achieve
in

http://pippin.gimp.org/tmp/despeckle_adaptive_non_recursive_radius_1_black_level_0_white_level_256.png.html

might be similar to what you want (note that I have run it on the jpeg
version of
your original.) running with a radius of 1.

/pippin

-- 
Software patents hinder progress | http://swpat.ffii.org/ 
Web :  http://pippin.gimp.org/
___
Gimp-developer mailing list
[EMAIL PROTECTED]
http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Best way for "limit distance"

2004-12-02 Thread Joseph Heled
Thanks for the suggestion. Using Joao <[EMAIL PROTECTED]> lead I use for now 
python-fu with the numarray extension. As far as I know such speedups are 
something scrip-fu is not capable off, and I truly hope one day script-fu will 
be phased out and python-fu (or any other sane scripting language) will take 
it's place.Others might disagree, but I don't consider perl sane :)

BTW, all this was part of a small evaluation of CCD noise removal method. If you 
are interested, the details are in 
http://pages.quicksilver.net.nz/pepe/d70/Nikon_D70_on_Linux.html#ISONoise

The results are quite dismaying. I appreciate any insight on the subject. 
However please note I am not looking for a solution for the specific image I 
used, but a generic one.

-Joseph
Øyvind Kolås wrote:
On Tue, 30 Nov 2004 13:25:16 +1300, Joseph Heled
<[EMAIL PROTECTED]> wrote:
(I think this has been discussed on the list before, but not sure where/when.)
What is the best way to achieve the following functionality -
  Given two layers L1 and L2, I want L2 limited by it's distance from L1
  Result  <-  L1 - MIN( MAX(L1 - L2), -20), 20)
Options:
A. Write a plugin
B. Write it as a script-fu (not sure if script-fu can iterate on pixels, and
what is the speed implication). And I hate scheme.
C. Write it in python fu if I can compile it, but even though it is probably not
 as universally available as scrip-fu. Can I iterate over an image in python-fu?
D. I know I can do it with 5 layers and overlay modes. write this as a
script-fu. Not elegant and requires loads of memory for large images.
   E. extend gluas to be able to pick an auxiliary drawable for
additional pixel sources,
(essentially resurrecting some code I initially had in a different
version of gluas, and write the expression in gluas).
( gluas is at http://pippin.gimp.org/plug-ins/gluas/ )
/pippin
___
Gimp-developer mailing list
[EMAIL PROTECTED]
http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Best way for "limit distance"

2004-12-02 Thread Øyvind Kolås
On Tue, 30 Nov 2004 13:25:16 +1300, Joseph Heled
<[EMAIL PROTECTED]> wrote:
> 
> (I think this has been discussed on the list before, but not sure where/when.)
> 
> What is the best way to achieve the following functionality -
> 
>Given two layers L1 and L2, I want L2 limited by it's distance from L1
> 
>Result  <-  L1 - MIN( MAX(L1 - L2), -20), 20)
> 
> Options:
> A. Write a plugin
> B. Write it as a script-fu (not sure if script-fu can iterate on pixels, and
> what is the speed implication). And I hate scheme.
> C. Write it in python fu if I can compile it, but even though it is probably 
> not
>   as universally available as scrip-fu. Can I iterate over an image in 
> python-fu?
> D. I know I can do it with 5 layers and overlay modes. write this as a
> script-fu. Not elegant and requires loads of memory for large images.
   E. extend gluas to be able to pick an auxiliary drawable for
additional pixel sources,
(essentially resurrecting some code I initially had in a different
version of gluas, and write the expression in gluas).

( gluas is at http://pippin.gimp.org/plug-ins/gluas/ )

/pippin

-- 
Software patents hinder progress | http://swpat.ffii.org/ 
Web :  http://pippin.gimp.org/
___
Gimp-developer mailing list
[EMAIL PROTECTED]
http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Best way for "limit distance"

2004-11-29 Thread Joao S. O. Bueno Calligaris
Moin ..
I e written the python-fu to to that.
If someone else is interested, just mail me.



On Monday 29 November 2004 22:25, Joseph Heled wrote:
> (I think this has been discussed on the list before, but not sure
> where/when.)
>
> What is the best way to achieve the following functionality -
>
>Given two layers L1 and L2, I want L2 limited by it's distance
> from L1
>
>Result  <-  L1 - MIN( MAX(L1 - L2), -20), 20)
>
> (This expression uses L1/L2 as placeholder for each pixel in all
> RGB channels)
>
> Options:
>
> A. Write a plugin
>
> B. Write it as a script-fu (not sure if script-fu can iterate on
> pixels, and what is the speed implication). And I hate scheme.
>
> C. Write it in python fu if I can compile it, but even though it is
> probably not as universally available as scrip-fu. Can I iterate
> over an image in python-fu?
>
> D. I know I can do it with 5 layers and overlay modes. write this
> as a script-fu. Not elegant and requires loads of memory for large
> images.
>
>   Layer   Mode
>
>   L1 Grain Merge
> 148 Darken Only
> 108 Lighten Only
>   L1 Grain Extract
>   L2 Normal
>
> (148/108 stand for a layer filled with gray pixels
> (148,148,148)/(108,108,108)
>
> E. Write a generic framework which allows any kind of expression(s)
> between layer(s)  (Only kidding ...)
>
> F. Anything better?
>
>
> -Joseph
>
>
> ___
> Gimp-developer mailing list
> [EMAIL PROTECTED]
> http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer
___
Gimp-developer mailing list
[EMAIL PROTECTED]
http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Best way for "limit distance"

2004-11-29 Thread Joao S. O. Bueno Calligaris
On Monday 29 November 2004 22:25, Joseph Heled wrote:
> (I think this has been discussed on the list before, but not sure
> where/when.)
>
> What is the best way to achieve the following functionality -
>
>Given two layers L1 and L2, I want L2 limited by it's distance
> from L1
>
>Result  <-  L1 - MIN( MAX(L1 - L2), -20), 20)
>
> (This expression uses L1/L2 as placeholder for each pixel in all
> RGB channels)
>
> Options:
>
> A. Write a plugin
>
> B. Write it as a script-fu (not sure if script-fu can iterate on
> pixels, and what is the speed implication). And I hate scheme.
>
> C. Write it in python fu if I can compile it, but even though it is
> probably not as universally available as scrip-fu. Can I iterate
> over an image in python-fu?

This one, or the C plugin. In python fu you can iterate over pixels, 
and still have all the ase of use of the PDB API, and from the python 
language itself. But it's slow to interate over pixels. If you want 
more speed, you either have to go to C, or use a python extension 
called "pyrex"which allows one to declare C langauge objects within 
python syntax, therefore gaining speed.

But it so easy in python that I could write you the plug-in in little  
time -  I just an not sure of what you want to achieve - Your 
"result" would be stored in the Layer 2 pixels? or on a  3 layer (/me 
thinks would be better) 
> D. I know I can do it with 5 layers and overlay modes. write this
> as a script-fu. Not elegant and requires loads of memory for large
> images.
>
>   Layer   Mode
>
>   L1 Grain Merge
> 148 Darken Only
> 108 Lighten Only
>   L1 Grain Extract
>   L2 Normal
>
> (148/108 stand for a layer filled with gray pixels
> (148,148,148)/(108,108,108)

Brrr... But you could also use a pythonfu script to control teh 
creation and placement of these five layers.
>
> E. Write a generic framework which allows any kind of expression(s)
> between layer(s)  (Only kidding ...)

No kidding - I have this code written down. 
But I did this for old gimp 1.3.14, and never broguthit upt o date, or 
wrote an itnerface for writing or compiling the generic expresion.

I call it ¨ the custom layer mode", and I actually have plans to bring 
it back from the not-quite-dead.

I will do you a template for the python plugin for now. To compile it 
in posix systems, just add "--enable-python" to your confgure 
directives. Peope on gimp-users have info on building it for windows.


Regards, 

>
> F. Anything better?

Can't think of anything that surpasses "E". C will do for you, if you 
have patience each time you change yor source layers.

>
>
> -Joseph
>
___
Gimp-developer mailing list
[EMAIL PROTECTED]
http://lists.xcf.berkeley.edu/mailman/listinfo/gimp-developer