[Play Raw] Underwater world

(Roel) #1

One of my favourite places in zoo, is the aquarium. Its serenity is soothing, its life fascinating, and its colour mightily impressive at times. However, it is also a difficult place to shoot great photos, not in the least because of low light and thick, refracting glass walls.

A recent trip produced this shot from a coral reef and scattered fish. What can you do to make it into an underwater spectacle?

_DSC2188.NEF (28.7 MB)

This file is licensed (CC BY-NC-SA 4.0)


(Glenn Butcher) #2

Got my attention; spent two years at Kwajalein Atoll. Learned to dive because it was too easy to do; in the atoll visibility was usually >100 meters, but oceanside was truly spectacular.

All sorts of lenses in play here with the addition of water and glass, making colors and distortions that vex the capture. Here’s what I did in rawproc:

  • _DSC2188.NEF:rawdata=crop - Now that I have librtprocess demosaics, I’m moving away from dcraw processing, instead starting with the raw data from the NEF.
  • colorspace:camera,assign - rawproc now reads both dcraw and camconst.json, and it appears it got primaries for your D750 from dcraw.
  • subtract:camera: Blackpoint subtraction based on the libraw-provided number
  • demosaic:amaze - librtprocess, the ‘amazing’ work of @heckflosse :smile:
  • blackwhitepoint:rgb,data - for some reason, black still wasn’t black after the subtract, and rawproc now has a blackwhitepoint option to scale to the actual data min/max (Edit: ah, went back and looked, turns out the whitebalance below was shifting the data off 0, probably what I get for putting white balance too far down the chain…)
  • rotate:270.0 - The exif orientation was 1, but the image was laying on its side… ?? (Edit: Just inspected the NEF with exiftool, it’s orientation is tagged correctly. So, something wrong I’m doing in rawproc…)
  • whitebalance:3.714,1.000,1.139 - I started with the camera numbers, but I used them to also take out the color cast, basically just scooching the numbers until the histogram peaks lined up.
  • curve:rgb,3.0,0.0,19.0,13.0,33.0,39.1,255.0,255.0 - puts contrast into the data, which sits at the lower end of the display bounds.
  • saturation:1.20 - Just to put a bit of pop back into the desaturated colors
  • resize:0,1080,lanczos3 - For posting


@Thanatomanic Thanks for sharing. Yes, taking such a photo isn’t the easiest to do. Seldom do I get amazing results. Need to work on an algorithm for this. :wink::stuck_out_tongue:


(Thomas) #4

I would develop it like this …

_DSC2188.NEF.xmp (5.3 KB)



darktable (2.7-git): _DSC2188.NEF.xmp (9.5 KB)



With GIMP and G’MIC:



_DSC2188.NEF.xmp (4.8 KB)


(JegMeg) #8

RT 5.5

_DSC2188RT3.jpg.out.pp3 (13.1 KB)

1 Like

(Ingo Weyrich) #9

My version using RT dev. Colours may be totally off as I’ve absolutely no idea how correct underwater colours are.

_DSC2188.NEF.pp3 (12.0 KB)



Sir, Madam, would you mind if I dipped my colour checker into the tank? You know, just for a sec?



I have been having fun writing a simple G’MIC dehaze filter. Far from done (e.g., no parameters, nothing to adjust) but here is my first test. photoflow minimal, gmic dehaze with retinex, curves for brightness and contrast, and nothing else.

Zoom 100% and enjoy!

1 Like


Picture was a quite tricky, which I do enjoy as it forces me to learn. Nice shot and thanks for sharing!

_DSC2188.NEF.xmp (15.0 KB)



There is however fringing and bleeding at some of the sharper edges. Might be the dehaze or the blending. There is room for improvement. :blowfish:

image image


(Gustavo Adolfo) #14

My take with DT 2.7

_DSC2188.NEF.xmp (14.6 KB)


(Todd Prior) #15

_DSC2188_01.NEF.xmp (7.6 KB) My quick edit in DT 2.6.2

1 Like


and my try with dt-2.7

_DSC2188.NEF.xmp (6,8 KB)

1 Like


@gadolf I studied your xmp. Really great. I still have a long way to go :slight_smile:


(Gustavo Adolfo) #18

Really? Thanks!
Well, to say the truth, this is one of those edits where I free my mind and just let go.
I don’t have the xmp available right now but if I remember the edit, I played with a tool that ended up reducing the saturation. Now thinking about it, I could have used directly the saturation tool, so I guess that easy ride turned out into a somewhat anarchic workflow.
What I like in easy ridings like this is how you tweak this and that tool without a clear idea where you want to go, just for the pleasure of experimenting.
Somehow you got a dark result like mine, but your colors are more coherent with the overall mood. In summary, you did a better job.

1 Like


The first dehaze test was horrid. It was both the unrefined script and the processing around it. The type of preprocessing matters. Here is test #2:

photoflow: minimal. NB. Should probably use RT with good CA and defringe correction.
gmic: curves (HLG, brightness, contrast), dehaze script, retinex, sharpen (LoG), resize.

Edit: Oops, here is the proper file, the difference being a little more detail in the highlights. :blush:



Thanks for the flowers :slight_smile: