ComfyUI Extension: ComfyUI-Mircify
ComfyUI node for converting images to IRC art blocks
Custom Nodes (0)
README
ComfyUI-Mircify
A ComfyUI custom node for converting images into IRC art by processing them in pixel blocks and generating both image and text outputs with optimal color selection from a 99-color IRC palette.
This node is used with aibird to convert images to IRC art.
Workflow
An example workflow is provided in workflows/mircify_example_workflow.json
. At the moment this example is using qwen image lightning, however any model that is decent at making pixel ansi style art can suffice.
Features
- Universal Image Support: Works with any image dimensions
- Color Transfer Integration: Uses KMeans clustering with Manhattan distance for accurate color mapping
- Block Processing: Configurable block sizes (default 8x15 pixels)
- Half Block Mode: Option for 8x7.5 pixel blocks for finer resolution
- Multiple Color Methods: Choose between dominant, average, or median color extraction
- 99-Color IRC Palette: Maps colors to extended IRC color palette
- Dual Output: Returns both processed image and mIRC-formatted text
- Text File Export: Save IRC codes directly to text files for easy copying
Installation
-
Clone or download this repository to your ComfyUI
custom_nodes
directory:cd ComfyUI/custom_nodes git clone https://github.com/birdneststream/ComfyUI-Mircify
-
Install dependencies:
cd ComfyUI-Mircify pip install -r requirements.txt
-
Restart ComfyUI
Nodes
IRC Art Converter
Category: image/conversion
Converts images into IRC art with both visual and text output.
Inputs:
- image: Input image (any dimensions supported)
- block_width: Width of each block in pixels (default: 8)
- block_height: Height of each block in pixels (default: 15)
- half_block_mode: Enable half-height blocks (8x7.5 instead of 8x15)
- color_method: Method for color selection (dominant/average/median)
Outputs:
- processed_image: Visual representation of the IRC art conversion
- irc_text: mIRC-formatted text with color codes ready for IRC clients
IRC Text Saver (probably not working)
Category: text/output
Saves IRC-formatted text to files for easy copying.
Inputs:
- irc_text: IRC text from the converter (STRING input)
- filename: Output filename (default: "irc_art.txt")
Outputs:
- file_path: Absolute path to the saved file
Usage
-
Basic Workflow:
- Load an image
- Connect it to "IRC Art Converter"
- Connect the
irc_text
output to "IRC Text Saver" - Run the workflow
-
Color Methods:
- dominant: Uses k-means clustering to find the most prominent color in each block
- average: Calculates the mean RGB values for the block
- median: Uses the median RGB values for better noise resistance
-
Block Modes:
- Full blocks (8x15): Standard IRC character block size
- Half blocks (8x7.5): Provides finer vertical resolution
-
Text Output:
- Uses mIRC color format:
\x03{fg},{bg}
- Color codes 1-99 corresponding to the IRC palette
- Ready to paste directly into IRC clients
- Uses mIRC color format:
Color Processing
The node uses a two-stage approach:
- Color Transfer Phase: Applies KMeans clustering with Manhattan distance to map the entire image to the 99-color IRC palette
- Block Processing Phase: Divides the color-corrected image into blocks and generates the final IRC art output
IRC Color Palette
The node uses an extended 99-color IRC palette built in.
Requirements
- ComfyUI
- Python 3.8+
- torch
- numpy
- scikit-learn
- pillow
Credits
- Color transfer logic adapted from ComfyUI-Color_Transfer by 45uee
- Uses KMeans clustering and Manhattan distance for optimal color mapping
License
MIT License