disclaimer: this module is in a highly experimental stage and is probably not very useful for productive use.
the weights are read from ~/.config/vkdt/data/jddcnn-weights.dat
.
this executes a network trained externally (pytorch ipython notebook). in the pipeline it should replace denoising and demosaicing.
the network architecture is a u-net very much inspired by intel's OIDN. the input is rggb bayer data in four planes of half resolution, and a fifth input channel is added as a noise estimate for the bayer block, using the poissonian/gaussian noise profile data.
the original code was written by Adrien Vannson and has been modified to work on bayer images and ported from tensorflow to pytorch.
as a sidenote, working with neural networks is pretty exciting.
compatibility:
for optimisation:
for quality:
black
custom raw black levelwhite
custom raw white levelnoise_a
gaussian part of the noise modelnoise_b
poissonian part of the noise modelinput
a raw rggb bayer pattern image, after the denoise module scaled it to [0,1)output
the denoised and demosaiced rgb image