Pages: 1 ... 9 10 [11] 12 13 ... 78   Go Down

Author Topic: DCamProf - a new camera profiling tool  (Read 767292 times)

AlterEgo

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 1995
Re: DCamProf - a new camera profiling tool
« Reply #200 on: May 14, 2015, 10:16:53 am »

0.6.1 recompiled for Windows (mingw) = https://app.box.com/s/mcdk72i5hgrvbgpnrpb8pp8xs1n55bfh
Logged

Iliah

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 770
Re: DCamProf - a new camera profiling tool
« Reply #201 on: May 14, 2015, 05:37:21 pm »

lobby for RD v2.0, long overdue, to include some more complex processing when generating cgats in addition to simple gamma

A simple script or even a spreadsheet can take the linear CGATS or CSV and apply a curve of your liking. It can be done within a profiling engine as well. IMHO RawDigger proper is not the place where it should be done as the variety of needs is quite overwhelming.
« Last Edit: May 14, 2015, 05:38:56 pm by Iliah »
Logged

GWGill

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 608
  • Author of ArgyllCMS & ArgyllPRO ColorMeter
    • ArgyllCMS
Re: DCamProf - a new camera profiling tool
« Reply #202 on: May 14, 2015, 08:43:40 pm »

Edit2: the htonl/nthol macro code I copied was bad, it assumes the compiler defines BYTE_ORDER LITTLE_ENDIAN etc, and if it doesn't the code is written such that big endian becomes default ie all words in the icc gets in the wrong order, it doesn't look like that but C preprocessing has some traps... will fix and release a patch soon.
Another reason to be using lcms ?

[ I personally prefer writing endian independent code, rather than relying on compile time endian detection and byte swapping. ]
Logged

AlterEgo

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 1995
Re: DCamProf - a new camera profiling tool
« Reply #203 on: May 14, 2015, 09:40:36 pm »

A simple script or even a spreadsheet can take the linear CGATS or CSV and apply a curve of your liking. It can be done within a profiling engine as well. IMHO RawDigger proper is not the place where it should be done as the variety of needs is quite overwhelming.
certainly... but it is a commercial product and so customers as expected are wishing all kind of things, overwhelming or not :) ...
Logged

Iliah

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 770
Re: DCamProf - a new camera profiling tool
« Reply #204 on: May 14, 2015, 10:23:34 pm »

certainly... but it is a commercial product and so customers as expected are wishing all kind of things, overwhelming or not :) ...
I can't even start on what functions I want to be added to exposure meters. Nobody manufacturers listen ;)
That's not to say we are not willing to add features, but fulfilling some requests lead to more dissatisfied users, as they want the same but in yellow and with a grey strip ;)
« Last Edit: May 14, 2015, 10:26:47 pm by Iliah »
Logged

torger

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3267
Re: DCamProf - a new camera profiling tool
« Reply #205 on: May 15, 2015, 02:31:59 am »

Another reason to be using lcms ?

[ I personally prefer writing endian independent code, rather than relying on compile time endian detection and byte swapping. ]


I've written 13000 lines of codes in about two months in addition to having a full-time job, and now it's documented and freshly released to the public. If everyone's going to make points for each bug that is found this will be a very tiresome thread.
« Last Edit: May 15, 2015, 02:38:00 am by torger »
Logged

Alexey.Danilchenko

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 257
    • Spectron
Re: DCamProf - a new camera profiling tool
« Reply #206 on: May 15, 2015, 04:28:07 am »

I've written 13000 lines of codes in about two months in addition to having a full-time job, and now it's documented and freshly released to the public. If everyone's going to make points for each bug that is found this will be a very tiresome thread.
As promised I will have a go at converting it to LCMS but in a few weeks time (I'll send you the code when it will work).
Logged

Tim Lookingbill

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2436
Re: DCamProf - a new camera profiling tool
« Reply #207 on: May 15, 2015, 06:55:08 am »

I've written 13000 lines of codes in about two months in addition to having a full-time job, and now it's documented and freshly released to the public. If everyone's going to make points for each bug that is found this will be a very tiresome thread.

I don't write code, don't know a lick about programming, but it will be a tiresome thread for me if I don't get to see results from all this hard work in the form of an A/B comparison photo showing the code works.

I look forward to seeing this. In a sense the anticipation of what's been accomplished in this discussion is keeping me from seeing this thread as tiresome.
Logged

Alexey.Danilchenko

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 257
    • Spectron
Re: DCamProf - a new camera profiling tool
« Reply #208 on: May 15, 2015, 07:17:42 am »

I don't write code, don't know a lick about programming, but it will be a tiresome thread for me if I don't get to see results from all this hard work in the form of an A/B comparison photo showing the code works.
The results of DCamProf can hardly be judged in such a primitive way as A/B photo comparison. The code is also not producing any photos so not really surte what you expect as  "showing the code works"
« Last Edit: May 15, 2015, 07:52:40 am by Alexey.Danilchenko »
Logged

Bart_van_der_Wolf

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 8913
Re: DCamProf - a new camera profiling tool
« Reply #209 on: May 15, 2015, 07:40:07 am »

I've written 13000 lines of codes in about two months in addition to having a full-time job, and now it's documented and freshly released to the public. If everyone's going to make points for each bug that is found this will be a very tiresome thread.

Thanks for the huge effort and research that goes with such a project.

There will always be things to change/improve/hindsight/etc. Don't take it as criticism, but as a pat on the back because it's apparently perceived as worthwhile enough to care about and build on, and a add a bit more functionality e.g. for Capture One (although not originally intended). But I also understand that there are limits to the resources for such a labor of love, thanks.

Cheers,
Bart
Logged
== If you do what you did, you'll get what you got. ==

torger

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3267
Re: DCamProf - a new camera profiling tool
« Reply #210 on: May 15, 2015, 07:51:55 am »

As promised I will have a go at converting it to LCMS but in a few weeks time (I'll send you the code when it will work).

Thanks but you don't need to, your valuable time is probably better spent on some other project than rewriting code that now works (hopefully ;) ). It seems like some think that I've written custom code for a major part of the software which LCMS already does, but that's not the case. If I strip out the code LCMS could do the ICC I/O stuff is ~500 lines out of those ~13000. LCMS is already used for LUT color conversions, CIEDE2000 and other complex code. Even if reading/writing is converted to LCMS code I still need/want the internal simplified profio_icc format as it will complexify the code dealing with a generic do-it-all ICC in the internals so the difference will be very small. Just as little as if Argyll would switch to using LCMS for reading and writing profiles DcamProf won't automatically gain ICCv4 support or any other feature.

Another point is that although I'm very grateful for your will to contribute to my personal project, I rather keep the code close to my own chest for now it's like my own child ;), patches with bug fixes yes, rewriting the code, no.
Logged

torger

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3267
Re: DCamProf - a new camera profiling tool
« Reply #211 on: May 15, 2015, 08:05:54 am »

Thanks for the huge effort and research that goes with such a project.

There will always be things to change/improve/hindsight/etc. Don't take it as criticism, but as a pat on the back because it's apparently perceived as worthwhile enough to care about and build on, and a add a bit more functionality e.g. for Capture One (although not originally intended). But I also understand that there are limits to the resources for such a labor of love, thanks.

Capture One support was originally intended, just not this soon :-).
Logged

Alexey.Danilchenko

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 257
    • Spectron
Re: DCamProf - a new camera profiling tool
« Reply #212 on: May 15, 2015, 08:06:30 am »

Fair enough.

Even if reading/writing is converted to LCMS code I still need/want the internal simplified profio_icc format as it will complexify the code dealing with a generic do-it-all ICC in the internals so the difference will be very small. Just as little as if Argyll would switch to using LCMS for reading and writing profiles DcamProf won't automatically gain ICCv4

I don't think we are still on the same page here. LCMS2 usage is not about complexity dealing with all ICC stuff it is about not writing the code to parse ICC. Whether you use it to access more complex areas is up to you. Opening a profile, checking the version and getting a matrix out of it for example is done in 3 calls. Creating profile from scratch is also simple. I kept pointing to dcp2icc tool - here is a snippet from there that creates a complete LUT profile (the lut creation are done with callbacks to dcp2iccc routines so these are all LCMS2 calls):


int CreateICC(char *fname, Sampler *smp, char *name, char *model)
{
    cmsHPROFILE h;
    LPLUT clut;

    h=cmsOpenProfileFromFile(fname,"w");
    if (!h) {
        printf("Error creating '%s'\n", fname);
        return -1;
    }
    cmsSetDeviceClass(h, icSigInputClass);
    cmsSetColorSpace(h, icSigRgbData);
    cmsSetPCS(h, icSigXYZData);
    cmsSetRenderingIntent(h, INTENT_PERCEPTUAL);
    cmsAddTag(h, icSigProfileDescriptionTag, name);
    cmsAddTag(h, icSigCopyrightTag, "(c) Nobody");
    cmsAddTag(h, icSigDeviceModelDescTag, model);
    clut=cmsAllocLUT();
    cmsAlloc3DGrid(clut, 33, 3, 3);

    if (!cmsSample3DGrid(clut, dcpTest1, smp, 0)) {
        printf("Error creating CLUT\n");
    }

    if (!cmsSample3DGrid(clut, dcpTest2, smp, 0)) {
        printf("Error creating CLUT\n");
    }

    if (!cmsSample3DGrid(clut, dcpSampler, smp, 0)) {
        printf("Error creating CLUT\n");
    }

    if (!cmsAddTag(h,icSigAToB0Tag, clut)) {
        printf("Error adding CLUT\n");
    }

    cmsFreeLUT(clut);
    cmsCloseProfile(h);
}
« Last Edit: May 15, 2015, 10:18:37 am by Alexey.Danilchenko »
Logged

torger

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3267
Re: DCamProf - a new camera profiling tool
« Reply #213 on: May 15, 2015, 08:23:58 am »

I don't write code, don't know a lick about programming, but it will be a tiresome thread for me if I don't get to see results from all this hard work in the form of an A/B comparison photo showing the code works.

I look forward to seeing this. In a sense the anticipation of what's been accomplished in this discussion is keeping me from seeing this thread as tiresome.

There many things you can do A/B tests for, but each test will be quite narrow and quite much work to perform. You don't see much A/B images for Argyll either (although I actually have one on my Argyll print workflow page).

I will myself be busy with maintaining the code and fixing improving for some while and will unfortunately not spend much time for these types of tests, except for those I do myself during development but those are not really presentable directly. At some point I'll probably write an article more in-depth about profiling and then there can be these type of A/B examples, but that's some time away now.

I'll maybe drop in some picture at some point if I come up with something interesting and presentable. So far I mostly do things "oh yes this seems to work" sanity check types of things, plus plot a lot of things.

Some ideas to test:
* A/B test between Ligthroom/C1 standard and DCamProf ICC/DCP on some typical scenes
* A/B test between files generated with different type of targets, CC24 vs IT8
* A/B test SSF-profile vs target profile, see if for example skin tone spectral data helps or not

it's difficult to show everything in a picture though as it cannot contain all colors, so plots are useful too.

There are still to me many undiscovered aspects of profiling, and the previously existing tools did not have the features I needed to allow me to research them, DCamProf has that and hopefully I'll actually do the tests now when I can, but writing the code turned out to be interesting too :)
« Last Edit: May 15, 2015, 08:58:37 am by torger »
Logged

Tim Lookingbill

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2436
Re: DCamProf - a new camera profiling tool
« Reply #214 on: May 15, 2015, 03:16:30 pm »

The results of DCamProf can hardly be judged in such a primitive way as A/B photo comparison. The code is also not producing any photos so not really surte what you expect as  "showing the code works"

Works in regard to color management and how it profiles a camera's response recording color which requires we see this in a photo compared to other camera profiling packages that use different coding and color descriptors to define how a camera records color.

Does that make it more clear for you?
Logged

Tim Lookingbill

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2436
Re: DCamProf - a new camera profiling tool
« Reply #215 on: May 15, 2015, 03:19:18 pm »

There many things you can do A/B tests for, but each test will be quite narrow and quite much work to perform. You don't see much A/B images for Argyll either (although I actually have one on my Argyll print workflow page).

I will myself be busy with maintaining the code and fixing improving for some while and will unfortunately not spend much time for these types of tests, except for those I do myself during development but those are not really presentable directly. At some point I'll probably write an article more in-depth about profiling and then there can be these type of A/B examples, but that's some time away now.

I'll maybe drop in some picture at some point if I come up with something interesting and presentable. So far I mostly do things "oh yes this seems to work" sanity check types of things, plus plot a lot of things.

Some ideas to test:
* A/B test between Ligthroom/C1 standard and DCamProf ICC/DCP on some typical scenes
* A/B test between files generated with different type of targets, CC24 vs IT8
* A/B test SSF-profile vs target profile, see if for example skin tone spectral data helps or not

it's difficult to show everything in a picture though as it cannot contain all colors, so plots are useful too.

There are still to me many undiscovered aspects of profiling, and the previously existing tools did not have the features I needed to allow me to research them, DCamProf has that and hopefully I'll actually do the tests now when I can, but writing the code turned out to be interesting too :)

I'm getting the sense there will be no photo comparisons. Just say it so I can move on.
Logged

torger

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3267
Re: DCamProf - a new camera profiling tool
« Reply #216 on: May 15, 2015, 04:53:30 pm »

I'm getting the sense there will be no photo comparisons. Just say it so I can move on.

You can do them yourself too you know ;). Erik showed some patchtool dumps a while back. I don't know what other users will do, I will myself prioritize the todo list on software features rather than making demonstrations though. I'd love to do both but I think the early adopters prefer I focus on filling in the gaps.

Next up is ICC test-profile and plotting capability to wrap up the ICC support. I'm also thinking of adjusting the whitepoint preservation handling, seems like there's often problems with targets that have a scale of neutrals, which give contradicting corrections (possibly due to precision issues in the target reference files) and this can lead to some local stretching badness of the LUT when whitepoint is preserved. May need to do some special case handling for that.
« Last Edit: May 15, 2015, 05:18:16 pm by torger »
Logged

GWGill

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 608
  • Author of ArgyllCMS & ArgyllPRO ColorMeter
    • ArgyllCMS
Re: DCamProf - a new camera profiling tool
« Reply #217 on: May 16, 2015, 04:00:21 am »

If everyone's going to make points for each bug that is found this will be a very tiresome thread.
I'm not sure what you mean by "make points for each bug" -
my comment was intended just as food for thought - something to contemplate as you consider your longer term development plans.
Logged

torger

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3267
Re: DCamProf - a new camera profiling tool
« Reply #218 on: May 16, 2015, 07:05:06 am »

I'm not sure what you mean by "make points for each bug" -
my comment was intended just as food for thought - something to contemplate as you consider your longer term development plans.

Fine, I probably overreacted, no problem. There's been a bit too much focus on a thing that I don't think matter. DCP and DNG ref code is custom too, but I better shut up about that... Oops :-)
Logged

Alexey.Danilchenko

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 257
    • Spectron
Re: DCamProf - a new camera profiling tool
« Reply #219 on: May 16, 2015, 11:45:21 am »

Fine, I probably overreacted, no problem. There's been a bit too much focus on a thing that I don't think matter. DCP and DNG ref code is custom too, but I better shut up about that... Oops :-)
DNG SDK is nice to have but it does not suite you for other reasons - it is C++ (and you are not using that) and hard to compile (too many dependencies that one does not need).
Logged
Pages: 1 ... 9 10 [11] 12 13 ... 78   Go Up