Dual ISO - massive dynamic range improvement (dual_iso.mo)

Started by a1ex, July 16, 2013, 06:33:50 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Danne

Yes. Was trying adding the more complete set of tags to see if that would refine white balance interpretation in acr but made no difference.
Despite the very long and interesting thread around white balance through other calculations than the simple  WB RGGB Levels As Shot division I cannot see any closer match than coming from those numbers.

Danne

I digged a little further and I think I,m on to something. The camera calibration tags seems to be the final piece of what is needed for that final calibration of white balance. This tag is different for every camera and you obtain it from a converted dng file through good old adobe dng converter. Notice both camera calibration tags are the same.

CR2 4800 +7
DNG 4600 +6 (without missing tags)
DNG 4800 +7 (with added tags) Exact match!

(Calibration numbers possible to include to AsShotNeutral tag with simple addition? Havn,t tested)
*update (Calibration numbers possible to include to AsShotNeutral tag with simple division tested working)

exiftool "-CameraCalibration1=1.0255 0 0 0 1 0 0 0 0.9766" /Users/Daniel/Desktop/untitledfolder/O42A0230.DNG
exiftool "-CameraCalibration2=1.0255 0 0 0 1 0 0 0 0.9766" /Users/Daniel/Desktop/untitledfolder/O42A0230.DNG


These tags were added. Now next we could see if any tags could be excluded.
Color matrix 1
Color matrix 2
CameraCalibration1(cameraspecific)
CameraCalibration2(cameraspecific)
ForwardMatrix1
ForwardMatrix2
CalibrationIlluminant1 to 'Standard Light A'
CalibrationIlluminant2 to D65


This should conclude the WB RGGB Levels As Shot to be the correct value to calculate dng multipliers from.

On a sidenote wouldn,t it be possible to match perfect muliplier numbers in mlvfs and mlp(mlv_dump), raw2cdng if knowing cameracalibration value?

xorpi

Hi... and any new performance update for blacks/highlites/shadows?
Think Dynamic! #HDR #BW 📸

Photography & FineArt by photofrano 🎨   
www.fb.com/PHOTOFRANO & www.500px.com/PHOTOFRANO

a1ex

What problem(s) do you have with current version? (images, not grumbling)

Please read this and this before replying.

xorpi

Images:

https://www.flickr.com/photos/martinfrano/23185583551/in/album-72157660572707536/

https://www.flickr.com/photos/martinfrano/23669973776/

- Less details and sharpeness on black/shadows areas of these photos. It's like blur or something... - under the castle and second photo - in the dark/shadow areas...

and chromatic abberations:

https://www.flickr.com/photos/martinfrano/22044619463/

CANON EOS 700D.
Think Dynamic! #HDR #BW 📸

Photography & FineArt by photofrano 🎨   
www.fb.com/PHOTOFRANO & www.500px.com/PHOTOFRANO

a1ex

You didn't read the above links, did you?

Less details and chromatic abberations compared to what?

Please upload the original CR2 and the reference images (ground truths) for the defects mentioned.

josepvm

Chromatic aberration is a defect of the lens. How could Dual-ISO introduce chromatic aberration?

And some loss of vertical resolution in extreme shadows and highligths is an unavoidable tradeoff of the Dual-ISO method. But the loss is not very high, and the overall result is a lot better than having all the shadow's noise that you get without Dual-ISO.

But if you need maximum detail, the solution is simple: don't use Dual-ISO and shoot bracketed exposures instead.

Walter Schulz

I suppose he confuses aliasing artifacts and chromatic aberrations.

xorpi

Think Dynamic! #HDR #BW 📸

Photography & FineArt by photofrano 🎨   
www.fb.com/PHOTOFRANO & www.500px.com/PHOTOFRANO

xorpi

Please, you should approach this according to the development plan of the whole product and focus on best parts. Everyone who will come explore magic lantern do so because of ability to encrease dynamic range using dual-iso, that is still not finished properly. More like a toy than professional instrument. Its sad that programmers who developed this do not wish to optimize this for production use.

My recommendation:

Optimize and finalize dual-iso (without loosing resolutions and details) as format for ML platform with dynamic range boost. With that use AutoETTR system for dual-iso  (as replacement for HDR Bracketing) - Dual-iso as native format of the Magic Lantern firmware.

Integrate various modules from other developers on the forum directly to the Magic Lantern - great one is Focus Stacking + Autofocus + Intervalometer.

Along with that please consider usage and planning of modules emulation in runtime to view results from dual-iso. Eventually Android app which can view this as Android app is connected.

In case you would be able to finish this during one year, which is no problem for other dev teams, Magic Lantern would become good firmware for normal use, not 30 unusable experiments.

Have a nice day ;)
Think Dynamic! #HDR #BW 📸

Photography & FineArt by photofrano 🎨   
www.fb.com/PHOTOFRANO & www.500px.com/PHOTOFRANO

josepvm

Quote from: xorpi on October 03, 2016, 03:27:24 PM

My recommendation:

Optimize and finalize dual-iso (without loosing resolutions and details) as format for ML platform with dynamic range boost.
With that use AutoETTR system for dual-iso  (as replacement for HDR Bracketing) - Dual-iso as native format of the Magic Lantern firmware.

That's impossible.  Dual-ISO uses half of the sensor rows to capture extreme shadows and highlights. And this produces an unavoidable loss of resolution on those areas. There's no way to optimize anything to change this fact.

You are asserting that Dual-ISO is not optimized and not prepared for serious work, but you don't have any idea of how Dual-ISO works, and It seems that you don't care at all of trying to understand it.
Dual-ISO is optimized and finished enough for a lot of users here, we use it frequently, and take great advantage of it.  But Dual-ISO is not a replacement for bracketing when you need to use the full resolution of your camera sensor.   

And you are not providing any data and any help to the developers to improve the flaws you say Dual-ISO has.


Quote
Integrate various modules from other developers on the forum directly to the Magic Lantern - great one is Focus Stacking + Autofocus + Intervalometer.

Experimental modules need to be tested and fully implemented for all ML supported cameras, before being added to nightly builds.  Otherwise there is a big risk of bricking cameras. And I suppose you will not be happy if you see your camera bricked...

But you have said in another thread that you don't care at all about helping the ML community with programming, building, and testing experimental code, you only want a finished product, for free, and in less than a year ...

So the conclusion is: you are a troll, and with your posts you are only making the developers to waste their valuable time. And you are using this forum to insert links to your photo galleries, advertising yourself for free.
You are not apporting anything good to this comunity, so don't expect to receive any consideration or any help here. 

This is the last time that I waste my time also, replying to your messages.


dmilligan


keepersdungeon



Quote from: josepvm on October 03, 2016, 04:25:55 PM
So the conclusion is: you are a troll, and with your posts you are only making the developers to waste their valuable time. And you are using this forum to insert links to your photo galleries, advertising yourself for free.
You are not apporting anything good to this comunity, so don't expect to receive any consideration or any help here. 

This is the last time that I waste my time also, replying to your messages.

+1

keepersdungeon

Quote from: xorpi on October 03, 2016, 03:27:24 PM
Please, you should approach this according to the development plan of the whole product and focus on best parts. Everyone who will come explore magic lantern do so because of ability to encrease dynamic range using dual-iso, that is still not finished properly. More like a toy than professional instrument. Its sad that programmers who developed this do not wish to optimize this for production use.
@xorpi before you start acting all bossy and blaming magic lantern for your unsatisfied photos, start small with the stuff that u can fix. Maybe, I don't know, work on your stamping for example in your post-process...


Marsu42

Quote from: josepvm on October 02, 2016, 02:38:46 PM
Chromatic aberration is a defect of the lens. How could Dual-ISO introduce chromatic aberration?

In theory, I guess it's possible that cr2hdr confuses that ca-reduction algorithm of some postprocessing software which are tuned for specific, untouched raw files, i.e. dual_iso shots could have more ca left. However, I have never observed this effect myself (using acr) even with cheap fast lenses, but I didn't try to provoke it either to prove or disprove the possibility.

Quote from: josepvm on October 02, 2016, 02:38:46 PMSee also http://www.magiclantern.fm/forum/index.php?topic=10265 (in particular, posts from ayshih and Marsu42)

Good advice, that :-p ... I faintly remember me stating that the color reproduction of very different iso levels (like iso100/iso1600 on a crop camera) is a source of confusion in any case, i.e. you cannot expect this to behave like a perfect iso100 bracketing-hdr shot with expanded dynamic range.

Alas, I admit I was nitpicking when I started using dual_iso, but since I do nature shots and no one except me knows how the original scene looked anyway a perfect color reproduction or wb doesn't matter that much to me. When in doubt about the wb, the "auto" setting in acr (i.e. Lightroom or Photoshop) works just fine as a starting point, and not getting blown whites or drowned blacks is more valuable than anything else.

Danne

These are the tags which seems necessary for correct white balance(check below). The other tags mentioned before aren,t needed. I,m trying to fetch CameraCalibration tags in CR2 but somehow it only shows when converted in adobe dng converter. If anyone have any clues here? I tried checking here http://lclevy.free.fr/cr2/

CameraCalibration1(cameraspecific)
CameraCalibration2(cameraspecific)
CalibrationIlluminant1 to 'Standard Light A'
CalibrationIlluminant2 to D65

What is essential too is the WB RGGB Levels As Shot tag in the CR2 file. Put the multiplier in "-AsShotNeutral" tag. Could look like this.
ex. 1
WB RGGB Levels As Shot          : 1464 1165 1165 2725
1165/1464=multiplier
1165/2725=multiplier

ex 2
WB RGGB Levels As Shot          : 1165 1024 1024 3226
1024/1165=multiplier
1024/3226=multiplier

I have updated MLP with a new bash script which will produce the camera calibration number if adobe dng converter is installed.

Here,s the bash script
https://drive.google.com/file/d/0B4tCJMlOYfirQnZTUWN4UVpSOXc/view?usp=sharing

DeafEyeJedi

Dude this is smoking hot and thanks for sharing the bash script @Danne!

I wonder if it is actually due to missing specific tag(s) because we "haven't told"  cr2hdr what's to look for in the first place prior to processing Dual-ISO files and only if we had knew then this WB issue would be resolved somehow, right?
5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109

Marsu42

Quote from: Danne on October 04, 2016, 06:01:40 AM
These are the tags which seems necessary for correct white balance(check below). The other tags mentioned before aren,t needed. I,m trying to fetch CameraCalibration tags in CR2 but somehow it only shows when converted in adobe dng converter. If anyone have any clues here?

Doh - that's closed source for you. There have been attempts to get the correct wb from tags here before, all doomed b/c obviously we lack the secret sauce ingredient :-\

Adobe seems to have managed to make use of the maker notes, probably using some insight straight from Canon we don't have. It might even be that there's no single algorithm to convert the values, but actually a model-specific lookup table as for new cameras there has to be a new acr version.

Danne

Quotewe lack the secret sauce ingredient
It,s only the Camera calibration tag numbers that are missing. Once they are put together with the above mentioned tags and the WB RGGB Levels As Shot value recalculated to dng multipliers everything seems fine.  Are you saying Camera calibrations tags are matrixed and calculated in a secret sauce :) revealed in a dng file or are they maybe hardcoded into the cr2 coming straight from the factory where it was calibrated but only told to adobe?

Armetz

hey guys   just if someone feels like replying to my message at least with something like "you can find solutions to this in this forum" or "your camera seems to be broken" then I would might have a hint how to go on from here..  thanks

Quotehello
I´m quite new to dual iso, maybe the issues I have here were discussed before  .. I have 2 problems with my dual iso shots:
1. some merged frames differ quite much in brightness but I can´t see that in the the original dual iso dngs. It appears for 20 or so frames in a sequence every few 100 frames. I uploaded exaple dngs here (original and merged)  https://www.dropbox.com/sh/dvwp3f2xkpkzlmh/AAAMo2z1bBiuxXjhvDHYMw2Ha?dl=0
2. the merged files appear to have a color temperature shift towards blue. That´s not really a big problem but maybe there´s an easy way to fix this..

thanks

Danne

Seems that white level isn,t the same. Usually the problem when there is flicker in dual iso files. If you,re on mac you can use MLP http://www.magiclantern.fm/forum/index.php?topic=13512.0
If on windows not sure how raw2cdng or MLVFS(windows version) handles these problems.
You can also apply same white level in post with for instance exiftool. Search here at the forum. Should be several posts here about it. Mlvproducer also handles dual iso files for windows. And of course cr2hdr itself has a same level switch which could be used.

Armetz


Marsu42

Quote from: Armetz on October 04, 2016, 02:51:04 PM1. some merged frames differ quite much in brightness

I browsed the files in your merged "dual" folder and everything's fine and as it's supposed to be :-o

Quote from: Armetz on October 04, 2016, 02:51:04 PMthe merged files appear to have a color temperature shift towards blue

The wb of dual_iso is dodgy, you need to set a manual wb which is no problem as it's lossless on raw data.

Marsu42

Concerning the dual_iso dynamic range: Where does cr2hdr get the data to calculate the theoretical dynamic range from? I had a glance at the source code, and it seems to have to do with black/white-points and some mysterious "dark noise", but I don't understand it.

I'm asking b/c the 7d has higher dynamic range than the 60d according to dxo data, but the output of cr2hdr shows a little less. The resulting difference is nothing to write home about, even a 5d2 isn't a lot different at 100/800 according to cr2hdr output (but full frame can be used at 100/1600 while crop falls apart).

http://sensorgen.info/CanonEOS-7D.html
http://sensorgen.info/CanonEOS-60D.html

But I'm wondering: Why doesn't dxo's nominal higher dr @100 plus highrer dr @ 800 add up to a better dual_iso result than on 60d? Is it b/c of the higher noise of the older 7d1 (it has more "pattern" noise, too)? Or is the photographic reality for preventing clipped highlights and raising shadows completely different from what cr2hdr says anyway?

a1ex

It looks at the optical black area (see dcraw -4 -E) and computes the noise levels from there, assuming that's the read noise. Then, it uses the simplified DR formula: log(white-black) - log(black_stdev), which is another approximation.

Note the stdev is heavily influenced by hot pixels. Maybe I should replace it with some robust statistic.