Sunday, 17 September 2017

Snapseed and noise (but from where?)

The other evening I was out walking (to watch the ISS go over) and took this image with my Oppo F1 phone (it being the only camera I happened to have with me) while I was out. (Note, blogspot seems to be causing posterisation on the images I load with its recompression of gradients ... Uhgg)

I took it with the phone/cam set to RAW so that I'd be able to play with the image later (cos I already know how much better that can be). I put it into Snapseed (which has become my default phone image processing tool) and applied my basic preferred steps and was disappointed by then noise it had in the image. I wanted it for Facebook so knowing it was going to be scaled back anway (meaning noone would notice) I cropped it a bit and resized it down and loaded it up. So wonding if the processing of HDR Scape was introducing the noise I pulled this image out of the same DNG file and had a look around. Even at this scale the noise is clear..

so lets have a pixel peep ... (cos even scaled back it looks a bit 'rough')

quite noisy ... and applying a little HDR (I've found gentle HDRI to adjust the brightness and at a low filter level cleans up a lot of vignetting) to it only made this worse.

I tried a few tools to remove the noise and was resigned to it being "how it is" at an ISO over 1000 (1229 actually) in low light.

Then it occured to me "I wonder what DCRAW Mobile would render" as I know DCRAW has wavelets for noise control. So while I was unable to see any difference using those parameters, DCRAW did a significantly better job.

without seeming to make the image any softer really (no sharpening applied, but I think Snapseed always does a bit).

So while this makes me feel comfortable that I can push my phones limits that bit more, it also makes me wonder what Snapseed are doing. I suspect that they may be adding noise in their process because (to save space) they may work with lower bit depths. Its well known that adding noise can cover gradient posterisation caused by inadequate bit depth. If you are interested I suggest reading this article over at the University of Chicago (totally worth the read for the technically inclined). The author examines how you can keep apparent tonal range with reduced bit depth (faster to process) as long as you have enough noise to cover it up.

NB: from that page

Given how fast Snapseed processes my DNG files (compared to DCRAW) it makes me wonder if they are not doing something like that. I already know (from asking the developer) that once the conversion from DNG to a demosiaced image occurs they only work in 8 bit ... hmmm ... I for one would be very interested to know why there is so much more noise even without the HDRI filter.

So I have reached out to the developer of DCRAW Mobile to ask if the wavelets are actually doing anything and hopefully they'll comment back here. Perhaps even answer if the slowness of demosaic in DCRAW is exacerbated by lack of threading on phones.

Meanwhile, my final image is this one, which somehow I find not quite punch enough but anyway:

No comments: