InterChannelCurves

Carlos Milovic

Well-known member
Hi all

This is another long waited module (for me, at least). I had the idea several years ago to make some Curves transformation, but, where you don't control the same channel as input and output. Let me put it as an example. Imagine that you are modifying the saturation of the image, depending on the luminance. Or, the hue depending on the saturation... and any combination of the PCL supported channels :)
Well, here it is.

Right now, compiled only for Linux x64:
http://pteam.pixinsight.com/pcldev/carlos/x64/InterChannelCurves-pxm.so

And the source code:
http://pteam.pixinsight.com/pcldev/carlos/src/InterChannelCurves-src-20110613.zip


Another new module to come this weekend: NonLinearStretch.
 
Its not really clear to me what this module does, and in which situations it is useful. Maybe a screenshot of the GUI plus a small processing example wouldbe helpful.

Georg
 
The interfase is almost the same as in ColorSaturation. You draw a curve that represents atenuations or amplifications. There are two extra comboboxes, where you select the reference channel (for the horizontal axis) and the target channel.
In fact, if you select the reference to be the Hue, and the target the Saturation, then this process will be quite the same as ColorSaturation (although, the function used to scale values is different).

As I said, another use could be modifying the Saturation, using the luminance as reference. This way, you may increase saturation in stars or bright features, while reducing saturation on the background.

You should try it, and experiment with other combinations. Maybe we find useful, for example, modifying the CIE b channel using the X as reference. Who knows? ;)
 
Carlos,

Sounds interesting. Hopefully you'll find time to write a windows version.

With regards to modifying saturation with luminance as a reference so that saturation is changed according to brightness values, isn't that what happens when the curves module is used to adjust saturation. If not, what is the x axis when using curves for saturation changes.

Steve
 
In normal Curves, it is the same channel in both axis.

The problem with windows is that I have limited access to the computer where I had the compiler working :p I should install and configure that on my main PC, but I've being too lazy :)
 
Yes I've been waiting for you to finish this module as well - for whatever reason it sounded interesting when you first described it. Congratulations for having finished it!

Since I never installed a GUI to the only machine I have here at home with Linux (plus it's pretty old, little ram, etc), I guess I'll have to wait a bit longer  ;)
 
:p
If another kind soul doesn't compile it before, it should be for win x64 this weekend. I'm in the middle of several exams and projects at the university, so free time is scarce.
 
I've heard good things about this script but am running OSX. Will the Linux build run for me?
 
let me see if i can compile this. i used to have the PCL stuff installed but since then i have upgraded my machine...

 
well, i built it for 64-bit osx (built on 10.8.2 with tools from xcode 4.5.2) but it is too large to attach to a forum post.

i uploaded it to endor, under Forum Shared Files / pfile / InterChannelCurves-pxm.dylib

i tried to make a "share" link but endor just says "file not found" when i try to go to the generated link. so i guess that's not working.

let me know if this is not downloadable, or if you need a 32-bit version and i'll work on it some more.

by the way - Carlos - are there other modules of yours that need to be built for OSX?
 
Did you compile it with PCL 2.0, for the new 1.8 core?
I'm planning to upgrade the code of all the processes I wrote to the last PCL. As soon as I have them recompiled in linux, I'll ask you do the same in OSX. Thank you very much :)

BTW, I'm having trouble accessing the ftp account of the PTeam... as soon as this is fixed, I may upload the compiled module there. Meanwhile, you may send it to my corporate mail (carlos dot milovic no spam at no spam pixinsight dot com) (sorry for the paranoia :p)
 
no, i compiled it against the older PCL / 1.7 just because 1.8 is having some problems. forgot to mention that, sorry. i guess i can try installing PCL 2.0.

i'll email you the file.
 
It sounds like an interesting module, and one worth experimenting with. I'll wait for it to show up on OS X, perhaps as part of PI 1.8 at some point. (In fact, I'm too deep into a processing project to update to 1.8 at the moment... I think it'll be a little while before I try 1.8, probably after it gets re-released.)

- Marek
 
Back
Top