β¨ Qwen Effects
Every image filter you'd want, minus the alpha-channel anxiety
- image
- processed_image
Qwen Effects is the part of the Geeky Qwen Edit pack that turns a bare cropped segment into something that looks designed: drop shadows, outer glow, outlines, color grading, and a stack of artistic filters - all with one guarantee that matters, which is that none of it destroys transparency. If you've ever run a filter in this space and watched your clean cutout come out with a black or white backing, you know exactly why that promise is the whole point.
Like the rest of this pack, the "Qwen" in the name is branding, not the Alibaba model. There's no diffusion here, no GPU, no weights - just Pillow image processing, deterministic and instant. It slots into the segment β edit β recompose workflow this pack is built around: crop a region with Qwen Segment Loader, do your diffusion edit (or skip it and just style the cutout), then run the result through this node before the compositor pastes it back.
How it works is refreshingly transparent. Every effect is gated behind a boolean, so nothing runs unless you flip it on - the node converts the image to RGBA, preserves the alpha channel, applies whatever you've toggled, and hands you one processed_image output. That all-effects-off default means a node with a genuinely intimidating parameter list (the schema has a couple dozen inputs) is actually gentle: switch on drop shadow, tune three numbers, done. Everything off except the color adjustments, which are the one group that's always active - brightness, contrast, saturation default to 1.0 (no change) and hue_shift to 0, so you only notice them when you move them.
The effects you'll actually use, roughly in order of "yes I reach for this":
- Drop shadow -
shadow_offset_x/y,shadow_blur,shadow_opacity,shadow_color. The star of the show. Works correctly on transparent images, which is rarer in ComfyUI than it should be. - Outer glow -
glow_radius,glow_intensity,glow_color. Same category, different mood. - Stroke / outline -
stroke_widthandstroke_color, following the alpha channel so the outline hugs the cutout. - Color overlay -
overlay_color,overlay_opacity, and a real blend-mode picker:normal,multiply,screen,overlay,soft_light,hard_light. This is your tinting/colorizing tool. - The rest - Gaussian
blur_radius,sharpen/sharpen_amount,emboss/emboss_strength,posterize/posterize_levels,edge_enhance/edge_enhance_strength,add_noise/noise_amount, andvignettewith strength and radius.
For a beginner, don't try to understand all of it at once. Learn drop shadow, stroke, and the color overlay with its blend modes; those three cover 90% of the "make this cutout look finished" jobs. Wire image from a background-removal node's RGBA output - the pack's own docs point at RemBG-style nodes, and BiRefNet cutouts are the natural input here - and send processed_image into Qwen Compositor's edited_segment port.
Install is shared across the whole pack, and it's lightweight. ComfyUI Manager, search "ComfyUI-Image-Segmenting-Loader", or:
cd ComfyUI/custom_nodes
git clone https://github.com/GeekyGhost/ComfyUI-Image-Segmenting-Loader
Then restart ComfyUI. Dependencies are just Pillow>=9.0.0, torch>=1.13.0, numpy>=1.20.0 - nothing new to download, no models.
Worth knowing before you're surprised: because the node is built for alpha, it converts even an opaque input to RGBA, so feeding it a fully opaque image works fine - you just get an RGB result back out. And keep an eye on the always-on color adjustments: if something looks subtly off and you didn't touch the sliders, that's not a bug, but do double-check saturation didn't get nudged while you were tweaking neighboring fields. The effects are individually simple; the only real failure mode is piling on so many toggles that the result turns to mush. One or two effects at a time is the way.
Inputs (36)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | β | |
| drop_shadowopt | BOOLEAN | false | β |
| shadow_offset_xopt | INT | 5-50β50 | β |
| shadow_offset_yopt | INT | 5-50β50 | β |
| shadow_bluropt | INT | 100β50 | β |
| shadow_opacityopt | FLOAT | 0.500β1 | β |
| shadow_coloropt | COMBO | black | 8 options: black, white, red, green, blue, yellow, +2 |
| outer_glowopt | BOOLEAN | false | β |
| glow_radiusopt | INT | 151β100 | β |
| glow_intensityopt | FLOAT | 0.800β2 | β |
| glow_coloropt | COMBO | white | 8 options: white, blue, red, green, yellow, purple, +2 |
| strokeopt | BOOLEAN | false | β |
| stroke_widthopt | INT | 31β20 | β |
| stroke_coloropt | COMBO | black | 8 options: black, white, red, green, blue, yellow, +2 |
| brightnessopt | FLOAT | 1.000.1β3 | β |
| contrastopt | FLOAT | 1.000.1β3 | β |
| saturationopt | FLOAT | 1.000β3 | β |
| hue_shiftopt | INT | 0-180β180 | β |
| blur_radiusopt | FLOAT | 0.00β10 | β |
| sharpenopt | BOOLEAN | false | β |
| sharpen_amountopt | FLOAT | 1.00.1β3 | β |
| embossopt | BOOLEAN | false | β |
| emboss_strengthopt | FLOAT | 1.00.1β3 | β |
| color_overlayopt | BOOLEAN | false | β |
| overlay_coloropt | COMBO | blue | 8 options: red, green, blue, yellow, purple, orange, +2 |
| overlay_opacityopt | FLOAT | 0.300β1 | β |
| overlay_modeopt | COMBO | overlay | 6 options: normal, multiply, screen, overlay, soft_light, hard_light |
| add_noiseopt | BOOLEAN | false | β |
| noise_amountopt | FLOAT | 0.100β1 | β |
| posterizeopt | BOOLEAN | false | β |
| posterize_levelsopt | INT | 82β256 | β |
| edge_enhanceopt | BOOLEAN | false | β |
| edge_enhance_strengthopt | FLOAT | 1.00.1β5 | β |
| vignetteopt | BOOLEAN | false | β |
| vignette_strengthopt | FLOAT | 0.500β2 | β |
| vignette_radiusopt | FLOAT | 0.700.1β2 | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| processed_image | IMAGE | β |