I'm trying to use LibRaw to convert CR2 files from Canon 80D, and when I use rgb_cam combined with pre_mul, I get some not quite realistic colors. In particular, it looks too orange to me. It appears as if the old Canon 1100D got it more "right" than the new 80D.
I then took some photos of my monitor showing RGBCMYK colors and lighter versions of them with 80D, and also measured these colors with SpyderX. After I made my own camera-to-sRGB color conversion matrix using these data, I got some better results.
I'm quite sure that I'm using the matrix correctly, at least because the calculation of sRGB2XYZ*rgb_cam*diag(pre_mul) gives me a very close matrix to inverse(cam_xyz), so this seems sane.
My question is now: where is rgb_cam taken from? Is it some official Canon-supplied matrix, or was it derived somehow by LibRaw developers?
Are colors generated by dcraw
Are colors generated by dcraw_emu are wrong? If so, could you please provide raw file sample?
-- Alex Tutubalin @LibRaw LLC
Yes, they are also wrong.
Yes, they are also wrong. Here's a link to the shots by both 1100D and 80D: https://drive.google.com/open?id=1WXae5dDIwxz77b2JD9cSPv-LXasytjN3
I used the following commands for dcraw_emu to get comparable-brightness results:
dcraw_emu -W -b 5 80D.CR2
dcraw_emu -W -b 3.5 1100D.CR2
I've not checked how accurate the 1100D colors are, but at least they seem more believable.
I do not see very big problem
I do not see very big problem here.
To check color accuracy it is better to check something with known colors and even spectral response (e.g. color checker) and known light source, not wall with unknown dye used under unknown light
-- Alex Tutubalin @LibRaw LLC