📷 Camera Raw Enhance
Adobe Camera Raw for images that never touched a camera
- image
- mask
- image
This is the biggest name-drop in the ComfyUI-Curve pack: it ports Adobe Camera Raw's basic panel - exposure, highlights, shadows, whites, blacks, temperature, tint, vibrance, saturation, contrast - plus the three modern favorites (Texture, Clarity, Dehaze) into a single ComfyUI node. No camera raw file required, which is fine, because you never had one. You're running a RAW developer's controls on a JPEG that a neural network hallucinated 40 seconds ago.
Why you'd reach for it: generated images have predictable color problems. Skin comes out plastic and over-smoothed, haze creeps into "dreamy" prompts, and the tone curve is whatever the model felt like. This node is the single most useful "fix the render" step in the pack - fifteen sliders that cover 90% of what people manually fix after the fact.
How it works
Each slider maps to a real implementation: highlights/shadows recover detail in their tonal band, whites/blacks set the endpoints, temperature and tint do white-balance math, vibrance saturates the under-saturated colors first, and texture/clarity run detail-aware contrast passes. The heaviest machinery is Dehaze. The author implemented several algorithms - a dark-channel prior with guided filter refinement, a Photoshop-style contrast-boost variant, and a simple fallback - then added auto-selection based on image characteristics (brightness, haze level, detail). It's the most code in the pack by a mile, and it shows.
The one honest caveat lives in the README: the frontend preview and the backend output for Dehaze were out of sync for a while, the author aligned them in June 2025, and the changelog still admits the result "still has gaps with PS Camera Raw effects." Read: don't expect pixel-perfect parity with Adobe, but the direction and magnitude are right.
The inputs that matter
exposure(-5 to 5) - the overall brightness dial, the one you'll touch first.highlights/shadows/whites/blacks(-100 to 100) - tonal rescue and endpoint control.temperature/tint(-100 to 100) - strip a blue cast, warm things up.texture/clarity/dehaze- the headline trio. The portrait trick is negative texture: it softens medium-size skin detail the same way a makeup blur does.vibrancevssaturation- vibrance for tasteful pop, saturation when you mean it.blend(0-100, default 50) andoverall_strength(0-2) - the master volume and the wet-brush amount. Use them.
Everything is optional except the image, and there's a mask + mask_blur + invert_mask set if you only want the effect on part of the frame. Single image output, straight into Preview or Save.
Installing it
Standard custom-node fare. ComfyUI Manager → search "ComfyUI-Curve", or:
cd ComfyUI/custom_nodes
git clone https://github.com/aiaiaikkk/ComfyUI-Curve.git
Restart ComfyUI and you're done. No model downloads, no API keys, nothing to fetch at first run. The heavy lifting is numpy/OpenCV math on the image tensor.
Where people get burned
The Dehaze preview mismatch is the documented one - if your popup preview and your saved output disagree on haze, that's the known front/back sync history, not you doing it wrong. Keep blend below 100 and the disagreement stays invisible in practice. The other trap is piling everything on at once: +30 clarity, +40 texture, +20 dehaze, +15 vibrance and you've created a crunchy HDR monstrosity. Pick one or two, keep blend around 50-70, and let the popup live preview be your judge.
Inputs (19)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| exposure | FLOAT | 0.0-5–5 | 曝光度调整,控制整体亮度 |
| highlights | FLOAT | 0-100–100 | 高光调整,控制过曝区域 |
| shadows | FLOAT | 0-100–100 | 阴影调整,提亮暗部细节 |
| whites | FLOAT | 0-100–100 | 白色调整,调整白场点 |
| blacks | FLOAT | 0-100–100 | 黑色调整,调整黑场点 |
| temperature | FLOAT | 0-100–100 | 色温调整,控制冷暖色调 |
| tint | FLOAT | 0-100–100 | 色调调整,绿品偏向 |
| vibrance | FLOAT | 0-100–100 | 自然饱和度,智能饱和度调整 |
| saturation | FLOAT | 0-100–100 | 饱和度调整,整体饱和度 |
| contrast | FLOAT | 0-100–100 | 对比度调整,整体对比度 |
| texture | FLOAT | 0-100–100 | 纹理增强,增强中等大小细节的对比度 |
| clarity | FLOAT | 0-100–100 | 清晰度调整,增强中间调对比度 |
| dehaze | FLOAT | 0-100–100 | 去薄雾效果,减少或增加大气雾霾 |
| blend | FLOAT | 500–100 | 控制增强效果的混合程度(0-100%) |
| overall_strength | FLOAT | 1.00–2 | 增强效果的整体强度 |
| maskopt | MASK | 可选遮罩,增强效果仅对遮罩区域有效 | |
| mask_bluropt | FLOAT | 0.00–20 | 遮罩边缘羽化程度 |
| invert_maskopt | BOOLEAN | false | 反转遮罩区域 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |