Skip to content

Commit 7dbd9e6

Browse files
DNG Exif: Use AnalogBalance, read more tags and maintenance
Now also read Exif.Image.AnalogBalance and Exif.Image.ForwardMatrix. To allow easier checking of read exif data we initialize the matrixes with usable defaults instead of marking them as invalid and keep track about found data via gbooleans. Name all matrixes as used in the DNG specs to avoid confusion. For easy of maintenance all Illuminant specific data are kept in `struct dt_dng_illuminant_data_t illuminant_data` having `struct dt_dng_illuminant_data_t` per Illuminant. - temperature - human readable Illuminant name for better logs - the xy coordinate - the CA matrix to transform illuminant data to D65 Implemented usage of Exif.Image.AnalogBalance if provided. Added pretty extensive information about found tags and used matrixes via -d imageio. This all requires re-read exif data - done via user request button or fresh import - so no break of old edits. Note about currently unsupported dng features: 1. According to DNG specs we would have to interpolate between illuminants if there is no given D65 illuminant and at least 2 provided illuminant temperatures are one below and one above D65. 2. To improve quality the specs describe and favor the usage of ForwardMatrix if provided. There seems to be more maths involved (matrix diagonalisation ...). 3. The specs describe how to handle DT_LS_Other illuminant. 4. No support for 4 channel images Camera DNG files with (1) or (3) are still pretty rare, for (2) there are at least files from sigma. If we want to have dt progress in this field it would be very nice to get hold on such samples. Thus we check for these cases, report in log and ask the user for feedback via control log to have better chances to get hold on such images to investigate and test implementations. S S adfb
1 parent ff2ef23 commit 7dbd9e6

File tree

2 files changed

+251
-209
lines changed

2 files changed

+251
-209
lines changed

0 commit comments

Comments
 (0)