Kay-Uwe,
Thank you for the information.
I expect the goal of your profiles would be to simulate the protan and
deutan seeing for designers to aim to better give orientation for
the non
standard colours seeing people.
Exactly.
Designers have various monitors available these days. Each designer
will
see an other simulation. Maybe this is not that important?
This is indeed not very important to me.
Anyway abstract profiles are usable
at Linux/osX within CinePaint <www.cinepaint.org>. Thats about pixel
manipualtion.
A screenshot how to do can be found here:
<http://www.behrmann.name/look_profiles.png>
Photoshop and similiar applications should be able to do the same.
Photoshop, Gimp, and other software can apply abstract profiles on
raster images or use display profiles for "screen proofing". What I
would like to have is a display profile to simulate protan and deutan
seeing independent of any software. Users could check the layout of
their web pages or their vector art work.
An other problem may be that some OSs dont accept LUT based pofiles as
display profiles.
Do you know which OSs? How about Windows, Mac OS X, Linux?
Even if LUT profiles are ok for the abtract type.
Simply copying the original primary and gamma tags could mislead the
underlying CMM, to use these display profile tags instead of the
intented
LUT you created. The effect would be none.
So should I better retake the idea of creating a matrix based display
profile that simply converts to sRGB?
Thanks to everyone for all the comments!
Bernhard
regards
Kai-Uwe Behrmann
+ development for color management
+ imaging / panoramas
+ email: [EMAIL PROTECTED]
+ http://www.behrmann.name
Am 07.09.05, 15:36 +0200 schrieb Bernhard Jenny:
Thank you for your comments and help.
I need a display profile to allow users to temporarily switch
between the
default display profile and the custom profile simulating color
blindness.
This would affect the whole monitor.
The reason why I tried to directly generate a display profile was
that I could
not find any way to combine an abstract profile with a display
profile to
generate another display profile.
The following code tries to combine the currently used display
profile (read
with cmsOpenProfileFromFile) and a dynamically generated abstract
profile.
Both seem to be OK. The result is not a valid display profile:
cmsHPROFILE combineDisplayAndAbstract(cmsHPROFILE displayProfile,
cmsHPROFILE
abstractProfile) {
cmsHPROFILE inProfiles[2] = {displayProfile, abstractProfile};
DWORD dwFlags = 0;
dwFlags |= cmsFLAGS_GRIDPOINTS(LUTRESOLUTION);
DWORD InputFormat = TYPE_XYZ_DBL;
DWORD OutputFormat = TYPE_RGB_DBL;
cmsHTRANSFORM hTransform = cmsCreateMultiprofileTransform
(inProfiles, 2, InputFormat, OutputFormat, INTENT_PERCEPTUAL,
dwFlags);
if (hTransform == NULL)
return NULL;
cmsHPROFILE combinedProfile = cmsTransform2DeviceLink
(hTransform, 0);
cmsSetDeviceClass(combinedProfile, icSigDisplayClass);
return combinedProfile;
}
The rXYZ, gXYZ, bXYZ and rTRC, gTRC and bTRC tags are missing in
the returned
device link profile, which are mandatory in a display profile, as
far as I
know.
Should I copy these tags (and possibly others too) from the
original display
profile?
Another question concerning the size of the LUT in the abstract
profile:
Please note since the matrix is a linear transform, 8 nodes would be
enough to model it on the CLUT. So, you end with the same profile
size.
Should I call cmsAlloc3DGrid with 8? i.e. cmsAlloc3DGrid(AToB0Lut,
8, 3, 3);
Thank you for your help!
Bernhard Jenny
-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Lcms-user mailing list
Lcms-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lcms-user