Hi Casper,

If so, how do I do it with lcms. I was thinking of making a transform that converts to an abstrat colorspace based on CIELAB, but with an extra scale on L* and then back again. Can this be done and how?

Not only can be done... it is already done :-)

There is a function called:

cmsCreateBCHSWabstractProfile()

This function accepts following parameters:

  int nLUTPoints    : Resulting CLUT resolution
 double Bright     : Bright increment. May be negative
 double Contrast   : Contrast increment. May be negative.
 double Hue        : Hue displacement in degree.
 double Saturation : Saturation increment. May be negative
 int TempSrc       : Source white point temperature
 int TempDest      : Destination white point temperature.

And returns a ready to use cmsHPROFILE handle to an abstract profile doing the 
translation.
Then you can use cmsCreateMultiprofileTransform() to bind the RGB -> Lab, the abstract profile and the Lab -> RGB. That works for other spaces like CMYK too.


See this post about the subject:
http://sourceforge.net/mailarchive/message.php?msg_id=11737885

Right now, it works but is not perfect. Incoming versions probably would use other more perceptually-uniform spaces, like CIECAM02.

BTW. I wish to congratulate you and all Krita folks for the great work you are 
doing,
there is a *huge* need of color-savvy application over there. Anybody is going to attend the libresoftware meeting July, 5th to July, 9th in Dijon, in the East of France?
I will be there, so it will be a great chance to get in touch!

Best regards,
--
Marti Maria
The littlecms project.
www.littlecms.com


----- Original Message ----- From: "Casper Boemann" <[EMAIL PROTECTED]>
To: <lcms-user@lists.sourceforge.net>
Sent: Friday, June 10, 2005 4:03 PM
Subject: [Lcms-user] changing brightness


Hi

I'm a developer of krita - the KOffice paint application - which uses lcms

I'm about to rework our brightness/contrast dialog, but looking at how other programs does it I'm a bit confused as to what is correct behaviour

Now what I intend to do is: convert from whatever colorspace we are working in into CIELAB, change L*, and convert back into the original colorspace.

does this sound like the correct thing to do?

If so, how do I do it with lcms. I was thinking of making a transform that converts to an abstrat colorspace based on CIELAB, but with an extra scale on L* and then back again. Can this be done and how?

--
best regards / venlig hilsen
Casper Boemann


-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.  How far can you shotput
a projector? How fast can you ride your desk chair down the office luge track?
If you want to score the big prize, get to know the little guy. Play to win an NEC 61" plasma display: http://www.necitguy.com/?r=20
_______________________________________________
Lcms-user mailing list
Lcms-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lcms-user



--
No virus found in this incoming message.
Checked by AVG Anti-Virus.
Version: 7.0.323 / Virus Database: 267.6.6 - Release Date: 08/06/2005




--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.323 / Virus Database: 267.6.6 - Release Date: 08/06/2005



-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.  How far can you shotput
a projector? How fast can you ride your desk chair down the office luge track?
If you want to score the big prize, get to know the little guy. Play to win an NEC 61" plasma display: http://www.necitguy.com/?r=20
_______________________________________________
Lcms-user mailing list
Lcms-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lcms-user

Reply via email to