Introducing a new FOSS raw image denoiser, RawRefinery, and seeking testers.

First off, thank you for creating this, it looks super promising.

I followed all the installation instructions (I think) and the Raw Refinery window opens and works. But I can’t select any raw files, DNG or NEF - they’re all greyed out. Is there a setting or something I need to adjust to get it to recognise those file types?

Interesting. The greyed out state is usually reserved for preventing collisions in the multiprocessing, perhaps there is some bug triggering it. Is there any additional information you can provide?

e.g. Operating system?

HI all,

Sorry, I said I would put an update out last week, but I had a surprise talk I had to give so it got delayed. But the talk is past now, so I will work on it tomorrow.

4 Likes

My OS is Ubuntu 25.10. Is there any way I can confirm that I’ve installed everything correctly?

I could probably create some sort of test script, but one thing you could do is run pip list in a terminal in the environment you run in and I can cross reference the libraries.

I uploaded an xtrans model, but it works a bit differently than the others, so I still need to push some changes for it to work properly, but my goal is to get a version up over the weekend.

3 Likes

Might be because of demosaicing algorithm used. I think Topaz/DXO etc. all do joint demosaicing and denoising. It would be interesting to see joint demosaicing and denoising nind model added to this comparison.

@RawRefinery pip version on Linux can’t open denoised dng files created from cr3 files and apple dng files at all. Same error for both:

Failed to open file: Singular matrix

thank you. days ago i have installed with python -m pip install rawrefinery on linux mint, following all the step on github page. how can i update? i did

source .venv/bin/activate

and

python -m pip install rawrefinery

but it doesn’t seem to recognize .RAF files.

I have obtained singular matrix too with for example this file from raw.pixls.us

dng

Thank you!

here you go:

Package Version


aptdaemon 2.0.2
arronax 0.8
attrs 25.3.0
autocommand 2.2.2
babel 2.17.0
bcc 0.31.0
bcrypt 4.2.0
beautifulsoup4 4.13.4
blinker 1.9.0
Brlapi 0.8.6
certifi 2025.1.31
chardet 5.2.0
click 8.1.8
command-not-found 0.3
configobj 5.0.9
cryptography 43.0.0
cssselect 1.3.0
cupshelpers 1.0
dasbus 1.7
dbus-python 1.4.0
defer 1.0.6
distro 1.9.0
distro-info 1.14
duplicity 3.0.4
fasteners 0.18
gyp-next 0.16.2
html5lib-modern 1.2
httplib2 0.22.0
idna 3.10
inflect 7.3.1
jaraco.context 6.0.1
jaraco.functools 4.1.0
Jinja2 3.1.6
jsonpatch 1.32
jsonpointer 2.4
jsonschema 4.19.2
jsonschema-specifications 2023.12.1
language-selector 0.1
launchpadlib 2.1.0
lazr.restfulclient 0.14.6
lazr.uri 1.0.6
linkify-it-py 2.0.3
louis 3.33.0
lxml 6.0.1
Mako 1.3.9.dev0
markdown-it-py 3.0.0
MarkupSafe 2.1.5
mdurl 0.1.2
monotonic 1.6
more-itertools 10.7.0
netaddr 1.3.0
oauthlib 3.2.2
olefile 0.47
packaging 25.0
paramiko 3.5.1
passlib 1.7.4
pexpect 4.9.0
pillow 11.3.0
pip 25.1.1
psutil 7.0.0
ptyprocess 0.7.0
pycairo 1.27.0
pycups 2.0.4
Pygments 2.18.0
PyGObject 3.50.0
PyJWT 2.10.1
PyNaCl 1.5.0
pyparsing 3.1.2
pyserial 3.5
python-apt 3.0.0+ubuntu1.1
python-dateutil 2.9.0
python-debian 1.0.1+ubuntu1
pyxdg 0.28
PyYAML 6.0.2
referencing 0.36.2
requests 2.32.3
rich 13.9.4
rpds-py 0.21.0
screen-resolution-extra 0.0.0
setproctitle 1.3.6
snappergui 0.1
soupsieve 2.7
systemd-python 235
typeguard 4.4.2
typing_extensions 4.13.2
ubuntu-drivers-common 0.0.0
ubuntu-pro-client 8001
uc-micro-py 1.0.3
ufw 0.36.2
unattended-upgrades 0.1
urllib3 2.3.0
usb-creator 0.3.16
wadllib 2.0.0
watchdog 6.0.0
webencodings 0.5.1
wheel 0.46.1
xdg 5
xkit 0.0.0
xlrd 2.0.1

What a great project and very promising results so far!
Would love to test this on my Macbook, but I have no idea where to start. I have the feeling I’d destroy my laptop before I have this working…

Easy, download this dmg and install as usual.

https://github.com/rymuelle/RawRefinery/releases/download/v1.3.0-alpha/RawRefinery_v1.3.0.dmg

1 Like

Installing was indeed easier than I thought. I do get an error trying to open raw files: Failed to open: Singular Matrix.

This happens with .RAF (fuji) and .NEF (nikon) files.
Am i missing something?

Hello, can’t help you as I have an Imac with Intel CPU and the RawRefinery.dmg only works with Apple CPUs.

@RawRefinery
There’s some colorcast or clipping on highlights close to raw whitepoint. I’m guessing this comes from the colorspace conversions?

Original

Denoised

Also would you rather have these kind of findings reported here or in Github?

I have the same with my z6iii files (compressed NEF, not HE) but not with older NEFs from my d700. 7D canon files are also OK
I played around with Adobe Camera Raw, converting the z6iii nefs to DNG, but that does not work either. Saving als a very old non compressed DNG also does not work to get RawRefinery reading the files. (DT can read all versions btw)

It would be best if RR could just support libraw or rawspeed for maximum compatibility (why reinvent the wheel?)

Even better, integrate the whole thing as module in DT

It’s using rawpy which in turn is using libraw (0.22 at the moment to be precise if you use the latest version)

Hi all, I have a new feature added to raw forge: Xtrans support!

I don’t have instructions up yet, nor have I tested the branch on my test VMs, but you can find the code on this branch if you wish to try it out:

The model tag is “TreeNetDenoiseXTrans”. If you try and run the other models with this branch, the results will not be good, although it is possible haha.

rawforge TreeNetDenoiseXTrans test.RAF test_rawpy_xtrans_raf.dng --cfa 

However, in the next few days I’ll find the time to test and write instructions up on it, I just wanted to keep y’all up to date.

6 Likes

Either here or GitHub is fine to be honest. The most recent xtrans model (which works on bayer images as well) doesn’t do color space conversion, I would be interested to see if that helps with the clipping.

Either way, thanks for reporting the issue!

@paulmatth

The dmg is a bit outdated unfortunately and some users had issues installing it, but it is probably the easiest way if you are not used to python.

Otherwise, it shouldn’t be that hard to install it through pip. I forget if I have Mac specific instructions up (most people wanted linux), but I have a Mac myself so it for sure should work.

I will be updating these things to make them more user friendly however if the current state is not good for you. Eitherway, lmk if you got it installed with the dmg

I have an alpha feature just up to support Raf/xtrans images!