AI based raw denoise

You can use this (as mentioned by @hanatos above) relatively easily from within ART if you like, by writing a proper user command. Despite all the disclaimers and to-dos, I found it to be pretty amazing. The major downside is that it’s slow, especially if you don’t have a Nvidia GPU and run it on a mobile CPU like myself. But for the few times I needed it, it’s worth the wait imho. And dxo is not exactly fast either as far as I understood.

HTH

3 Likes

Very interesting! I’ll definitely give that a try. And yes, DxO Deep Prime is very slow, especially on a VM, but it only does the work on export, so I just walk away and do something else for a while.

This looks interesting…sounds like you have used it and are impressed…seems like there is a lua script for DT…may have to try and get that to run…

It would be neat to see a before and after that you have done just for demonstration…

1 Like

I gave it a try with the images I posted above. First I did some processing on the original RAW image in ART, but no noise reduction or sharpening, and exported as 16-bit TIF. Then I ran the nind-denoise script on it. It’s not bad but also not nearly as good as DxO. I think I actually prefer the version done in ART with regular noise reduction (posted above) because of the artifacts this has produced on the shadow areas of the face. Maybe there are settings to tweak that could improve it.

Original (downsized to 2000 pixels width):

Denoised:

1 Like

One issue with the approach is that it’s very hard to get pictures of people (and even more so of birds & animals) at different ISO, since they move. But the denoiser needs to be really good with people since we’re much better at seeing artifacts in them.

One solution could be to first train a network that can add noise to images (which presumably should be easier) so that we can generate training samples from single low-ISO shots.

Would you be able to share the raw? I have a different experience, if anything the results I get are too clean / “waxy” for my taste. Here are a couple of examples from playraws:




Sure, here is the raw file.
IMG_6686.CR3 (21.6 MB)

Thanks. Here’s what I get (trying to go in your direction in terms of tone):

still a bit too clean perhaps, but a bit of noise can be added back if needed.

A couple of possible differences between our setups:

  • I use a very neutral profile for denoising, essentially applying only exposure compensation (EDIT: and LMMSE demosaicing)

  • I export in Rec2020

  • I rescale before denoising, because otherwise it takes forever on my modest CPU

Thanks for the tips. I used your approach except that I worked with the full sized image. After denoising, I brought it back into ART for final adjustments, exported, and only then resized. The denoising process is slow, but I think it’s faster than DxO on the VM. This version is definitely better than my first attempt. Still maybe not at DxO’s level, but impressive nonetheless. I’ll have to experiment with less-extreme examples and see how I like it compared to regular noise reduction.

Rescale/resize definitely reduces/averages odd/difficult noise patterns, which makes it easier to denoise afterwards.

I like your result and previous examples.

good to hear. However, note that I wrote “Rec2020”, not “Linear Rec2020”. Rec2020 has a gamma of ~2.2, and that makes a lot of difference. I write this because I noticed that the jpg you attached has a linear rec2020 profile (which really is not suitable for 8-bit files btw…).

HTH

Where do I find Rec2020? Would that be No profile (passthrough mode)?
output_profile

See: Color Management - RawPedia. Note I don’t know what has changed in ART.

I believe he means as your output profile when you export…

image

Mine is currently sRGB as I mostly look at edits on a PC

Yeah, I normally do too. The screenshot above shows the options I get when I click the Output Profile dropdown. I don’t see Rec2020 as an option. Going to check RawTherapee and see if that has it, since it’s in the documentation @afre referenced.

Its in my list… image001.png

It’s inclusion was after ART forked, though I am sure it could be easily rectified.

That’s ART, not RawTherapee? And what version? I’m still on 1.15. I do see one commit in the ChangeLog related to output color profiles, so maybe that’s what I’m missing. I’ll try to update tomorrow and see if it appears. Otherwise maybe @agriggio can help me figure out what I’m missing.

Rec2020 is included in 1.16. but you can also try with prophoto. Otherwise, you can get a rec2020 profile in a number of different ways, e.g. from Elle Stone’s ICC profiles collection (search Elle’s ICC profiles on GitHub).
Note that I’m not sure what was used to train the network, but there’s a chance it was simply sRGB, and that’s why having a profile with a transfer function / “gamma” that is close to that gives better results (but I’m just speculating here)

2 Likes

I upgraded to 1.16.1, and now I have Rec2020. Thanks.

1 Like