NAFNet Denoise (Pre-trained)
The one node in this pack that genuinely just works out of the box
- image
- denoised_image
- info_report
Worth saying up front, because it's not true of most of this pack's neural nodes: NAFNet Denoise ships with real code that downloads real pretrained weights directly from the official NAFNet GitHub releases the first time you use it. No model_path to fill in, no random-init fallback, no manual weight-hunting. Pick a model, run it, get a denoised image. If you've been burned by this pack's other AI nodes silently running untrained networks, this is the one where that specific worry doesn't apply.
What NAFNet actually is
NAFNet stands for Nonlinear Activation Free Network, from a 2022 paper making a deliberately contrarian point: most of the architectural complexity that restoration networks accumulated - attention blocks, elaborate nonlinearities - turned out to be replaceable with much simpler components (a "Simple Gate" and simplified channel attention) without losing quality. The result is a network that's both fast and good, which is a combination restoration research doesn't hand out often. It's a genuine 2022 state-of-the-art baseline, not a marketing name - the "no activation functions" framing in the node's own info string is literally the paper's headline result, not just flavor text.
Inputs and outputs that matter
There's exactly one input that matters, because this node doesn't expose tuning knobs - you pick a model and it runs:
model- three choices.nafnet-width32is the lighter model (~2M params), faster, good general denoising.nafnet-width64roughly quadruples the parameter count for better quality at some speed cost.nafnet-siddis trained specifically on the SIDD dataset of real smartphone-camera sensor noise, which is a meaningfully different target than synthetic Gaussian noise - if your source is actual camera noise rather than something you added synthetically, start here.
Outputs: denoised_image and info_report, a string with the model description, an estimated PSNR, and the parameter count and size of whichever variant you picked - genuinely useful if you're deciding between width32 and width64 for a batch and want to know what you're trading off.
Installing it
Through ComfyUI Manager, search Eric's Image Processing Nodes. By hand:
cd ComfyUI/custom_nodes
git clone https://github.com/EricRollei/Eric_Image_Processing_Nodes
cd Eric_Image_Processing_Nodes
pip install -r requirements.txt
Restart ComfyUI. On first use of a given model variant, expect a short pause while it fetches the .pth file from github.com/megvii-research/NAFNet/releases and caches it under Eric_Image_Processing_Nodes/models/pretrained_weights/ - after that first run, it's local and instant. If your ComfyUI machine has no outbound internet access (a sandboxed or firewalled server), that download will fail; in that case grab the weights manually from the same GitHub releases page and drop them in that cache folder yourself, then restart.
Where people get burned
Honestly, not much - this is one of the more reliable nodes in the pack. The one real gotcha is picking nafnet-width64 (trained on GoPro-style motion/defocus blur data per the pack's own model table) when your actual problem is plain sensor noise; nafnet-sidd or nafnet-width32 will usually serve you better there, since matching the training distribution to your actual degradation matters more than raw parameter count. If results look softer or less corrected than you expected, that's the first thing to check before assuming the node itself is underperforming.
The other minor thing: like most GPU-accelerated nodes here, it'll silently fall back to CPU if no CUDA device is available, which works but is considerably slower - check your console log if a "quick" denoise pass is taking much longer than you'd expect.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| model | COMBO | nafnet-width32 | Pre-trained models: * nafnet-width32: Lighter, faster (~2M params) * nafnet-width64: Balanced quality/speed (~8M params) * nafnet-sidd: Real-world noise (trained on SIDD) |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| denoised_image | IMAGE | — |
| info_report | STRING | — |