neural-guided bilateral filter (nbf)

tiny unet (93k params) that predicts per-pixel sigma_s, sigma_r and a range guide for two passes of a differentiable bilateral filter (7x7 disc window). the output is always a normalised weighted average of noisy neighbours, so it behaves like a bilateral filter that picks its own parameters. trained blind on BSD400 patches with gaussian noise sigma in [0, 55] (grayscale, one channel, for rgb run each channel as a batch item).

part of a university lab task, code and report: https://github.com/manasrpandya/NLP_CV_Lab/tree/main/projects/07-bilateral-denoising live demo (runs this file in the browser): https://nlp-cv-lab.vercel.app/p/bilateral-denoising

io

  • input x: float32 (n, 1, h, w) in [0, 1], any h, w
  • output y: float32 (n, 1, h, w) denoised
  • output maps: float32 (n, 5, h, w) = sigma_s pass 1, sigma_s pass 2, sigma_r pass 1, sigma_r pass 2, guide

results (PSNR dB, gaussian noise, gray)

set s=15 s=25 s=50
set12 31.93 29.60 26.44
bsd68 30.82 28.38 25.48
kodak24 32.11 29.79 26.84

opset 17, 462 kB, max abs diff vs pytorch 7.6e-06.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support