Extensions/Image Misc
ComfyUI Extension

Image Misc

Miscellaneous nodes for image manipulation. Currently just download image with bypass, so you can create workflows including image examples. No extra dependencies, just an internal module.

By set-soft·Created about a year ago·Updated 8 months ago· 2
set-soft/ComfyUI-ImageMisc
Nodes16
On cloudLocal install
Categoryimage/foreground, image/manipulation
Stars2
Updated8 months ago

Nodes (16)

Estimate foreground (AFFCE)

De-contaminate your cutout edges — the fast foreground-estimation fix

image/foreground
Apply Mask using AFFCE

Apply a background-removal mask without the edge halo

image/manipulation
Face Composite

Put the reanimated face back where it belongs

image/manipulation
Face Composite (frame by frame)

Paste a processed face back into every frame of a video

image/manipulation
Create Empty Image

A blank canvas that inherits another image's exact shape

image/generation
Estimate foreground (FMLFE)

The serious foreground estimator that also hands you a clean background

image/foreground
Image Download and Load

A Load Image that fetches its own file, so your workflow travels

image/io
Pad Image (KJ/SET)

Add borders that are a color, an edge, or a blurred version of the image

image/manipulation
Resize Image (KJ/SET)

One resize node that stretches, pads, crops, or blurs — the KJ/SET workhorse

image/manipulation
Image with text label, good for comparison grids

Label your comparison images so you can actually read the grid

image/manipulation
Arbitrary Normalize

Normalize an image to any mean and std you care to dial in

image/normalization
Normalize Parameters

The sliders that feed the Arbitrary Normalize node

image/normalization
Normalize Image to ImageNet

The preprocessing every ImageNet-trained model expects

image/normalization
Normalize Image to [-0.5, 0.5]

Center your image values around zero, the [-0.5, 0.5] way

image/normalization
Normalize Image to [-1, 1] (i.e. GAN)

The [-1, 1] input range your GAN-style model actually wants

image/normalization
Resize Mask (KJ/SET)

Resize a mask without painting gray fringes on it

image/manipulation
Readme

ComfyUI Image Miscellaneous Nodes 🎨

This repository provides a set of custom nodes for ComfyUI focused on image manipulation. Currently we just have a few nodes used by other nodes I maintain.

⚙️ Main features

✅ No bizarre extra dependencies, we use the same modules as ComfyUI

✅ Warnings and errors visible in the browser, configurable debug information in the console

📜 Table of Contents

✨ Nodes

The nodes are documented here. Use the above ToC to access them by category.

🚀 Installation

You can install the nodes from the ComfyUI nodes manager, the name is Image Misc, or just do it manually:

  1. Clone this repository into your ComfyUI/custom_nodes/ directory:
    cd ComfyUI/custom_nodes/
    git clone https://github.com/set-soft/ComfyUI-ImageMisc ComfyUI-ImageMisc
    
  2. Install dependencies: pip install -r ComfyUI/custom_nodes/ComfyUI-ImageMisc/requirements.txt
  3. Restart ComfyUI.

The nodes should then appear under the "image/io", "image/manipulation", "image/normalization" and "image/foreground" categories in the "Add Node" menu.

📦 Dependencies

  • SeCoNoHe (seconohe): This is just some functionality I wrote shared by my nodes, only depends on ComfyUI.
  • PyTorch: Installed by ComfyUI
  • NumPy: Installed by ComfyUI
  • Pillow: Installed by ComfyUI
  • Requests (optional): Usually an indirect ComfyUI dependency. If installed it will be used for downloads, it should be more robust than then built-in urllib, used as fallback.
  • Colorama (optional): Might help to get colored log messages on some terminals. We use ANSI escape sequences when it isn't installed.

🖼️ Examples

Once installed the examples are available in the ComfyUI workflow templates, in the Image Misc section (or ComfyUI-ImageMisc).

image_download.json

Shows how to use the image downloader node.

image_download.json

resize.json

Shows the most common uses of the resize and padding nodes. You can see how various modes and options affects the result and how the different interpolation methods works. It shows how masks and RGBA images are handled.

resize.json

📝 Usage Notes

  • Logging: 🔊 The nodes use Python's logging module. Debug messages can be helpful for understanding the transformations being applied. You can control log verbosity through ComfyUI's startup arguments (e.g., --preview-method auto --verbose DEBUG for more detailed ComfyUI logs which might also affect custom node loggers if they are configured to inherit levels). The logger name used is "ImageMisc". You can force debugging level for these nodes defining the IMAGEMISC_NODES_DEBUG environment variable to 1.

📜 Project History

  • 1.0.0 2025-07-21: Initial release
    • Just the download image.
  • 1.1.0 2025-07-25: Adapted to use SeCoNoHe
  • 1.1.1 2025-07-25: Just small details for ComfyUI registry
  • 1.2.0 2025-10-05:
    • Face composite nodes
    • Normalization nodes
    • Apply mask nodes, including support for:
      • "Fast Multi-Level Foreground Estimation" (from PyMatting)
      • "Approximate Fast Foreground Colour Estimation" (from Photoroom)
    • Create empty image node, from reference image
  • 1.3.0 2025-10-14: Pad Image, Resize Image and Resize Mask nodes
  • 1.4.0 2025-10-20: "Image with text label" and "Arbitrary Normalize"/"Normalize Parameters"

⚖️ License

GPL-3.0

🙏 Attributions

  • Good part of the initial code and this README was generated using Gemini 2.5 Pro.
  • The Pad Image, Resize Image and Resize Mask are from KJNodes by Kijai (Jukka Seppänen)