Project

General

Profile

Bug #9177

Magenta tint with ISO Hi2 on D5100

Added by Gaspard Jankowiak over 7 years ago.

Status:
Fixed
Priority:
Low
Assignee:
-
Category:
General
Start date:
01/08/2013
Due date:
% Done:

100%

Estimated time:
Affected Version:
git development version
System:
bitness:
64-bit
hardware architecture:
amd64/x86

Description

On Nikon D5100, for the highest ISO setting (25600, aka Hi2) I get a strange magenta
tint which:
  • affects mainly dark areas
  • does not show in a small band at the top of the image
  • shows even with no modules activated, for both demosaicking options

See attachment to see what it looks like in lighttable.
Sample RAW file (upload ETA: 08/01/2012 21:50 GMT+1)

shot.png (725 KB) shot.png Thumbnails of 3 affected shots Gaspard Jankowiak, 01/08/2013 08:44 PM
comparison.png (1.6 MB) comparison.png output comparison Gaspard Jankowiak, 01/12/2013 05:02 PM

History

#1 Updated by Gaspard Jankowiak over 7 years ago

Here is a comparison with other raw processing software.

#2 Updated by Gaspard Jankowiak over 7 years ago

Small update for the record: (this is rather clunky)

I've been able to track down this to rawspeed giving out weird values in NikonDecompressor.cpp.
Basically values are decoded using Huffman magic and then a curve is applied. For ISO 25600 only (works for ISO 12500,
needs confirmation), some values after Huffmann decoding are negative (pLeft1 and pLeft2), resulting in silly values after applying the curve.
Strange enough this happens only after a some kind of reinitialisation of some table (NikonDecompressor::initTable), which happens at row 116 in my case.
Before this reinit is done, values are all seem fine, which explains the band at the top.

What I don't understand now is why rawstudio doesn't have this issue even though it's based on rawspeed too...

#3 Updated by Gaspard Jankowiak over 7 years ago

Ok, after unpacking the srpm used for rawstudio 2.0.4 on fedora, there's some ceiling/flooring going on,
which is not in the version used by dt (the last one?)... so I think this definitely marks it as a rawstudio bug.

dest[x] = curve[MIN(_max-1, MAX(0,pLeft1))] | (curve[MIN(_max-1, MAX(0,pLeft2))] << 16);

Filed against rawspeed as bug #587

#4 Updated by Gaspard Jankowiak over 7 years ago

  • % Done changed from 0 to 100
  • Target version set to Candidate for next patch release
  • Status changed from New to Fixed

Fixed in upstream. Needs a rawspeed update within dt.

#5 Updated by Pascal de Bruijn over 7 years ago

We've imported the new RawSpeed code:

https://github.com/darktable-org/darktable/commit/91d4a3f38e9c52ec36e03b28851ca0e5d335bdd1

Please test and report back.

#6 Updated by Gaspard Jankowiak over 7 years ago

I've tested r506 (the NikonDecompressor part) before closing this bug, it works for me.

Also available in: Atom PDF

Go to top