I started with an incredibly crappy, handheld photo of an IT8 chart. IT8 is a standard colour chart with a set of predefined colours; I already had one on hand that I use with my scanner. This photo is really terrible and probably acts as a good stress test just because of how bad it is - it's not perfectly flat, it's kinda out of focus, it's not really a straight on view. Just awful.
The camera did... okay. For auto-white balance, anyway. The tones aren't really right, it's got a colour cast going on, etc. Time to feed it into Argyll!
First, I converted the .CR2 raw file into a TIFF using dcraw, the practically universal raw format decoder. To get as raw a conversion as possible, I used these options:
Code: Select all
-4: linear 16-bit. Doesn't convert the image from its native gamma to a standard curve, uses a fixed white level, and writes 16 bits per pixel instead of 8 bits.
-T: output as a TIFF
-q 3: Highest image quality
-o 0: Don't try to convert the colours into a standard colour space, leave them as is
Eww. Time to throw Argyll at it!
To get a colour profile from Argyll, I worked in two steps. First, I created a native Argyll colour information file using argyll's "scanin" tool:
Code: Select all
scanin photo.tiff it8.cht R1009005.txt
The result of this was "photo.ti3"; TI3 is an internal format of Argyll's, which isn't really useful to us. So I converted that into a standard ICC profile using Argyl's "colprof" tool:
Code: Select all
colprof -v -D"My awesome colour profile!" -qm -ax photo
So, I went and applied that ICC profile to the TIFF I got out of dcraw, and this is what it looks like:
Pretty good! Slight green tinge in a particular set of the greys, otherwise quite accurate - which given the totally uncontrolled lighting and poor imaging, is quite good performance. Hoping I can improve my results further.
If anyone else has had experience with this - please chime in!