142 lines
5.0 KiB
Markdown
142 lines
5.0 KiB
Markdown
# SATA Utility Node Suite for ComfyUI
|
||
|
||
**Author:** Satadal
|
||
**Version:** 1.0
|
||
**License:** MIT
|
||
**Repository:** https://github.com/SatadalAI/SATA_UtilityNode
|
||
|
||
---
|
||
|
||
## 🚀 Overview
|
||
|
||
SATA Utility Node Suite is a collection of custom nodes for [ComfyUI](https://github.com/comfyanonymous/ComfyUI) designed to enhance your image processing and workflow experience.
|
||
It includes:
|
||
|
||
- **Upscale Machine:** High-quality model-based image upscaling with aspect-ratio preserving rescale.
|
||
- **Prompt Machine:** Easy prompt selection from a CSV for positive/negative prompt workflows.
|
||
- **Touchpad Pan & Zoom:** Seamless navigation for large images in the ComfyUI preview panel.
|
||
- **Resolution Machine:** Quick selection of model-specific image resolutions for popular models.
|
||
|
||
---
|
||
|
||
## 🧩 Node Features
|
||
|
||
### 🖼️ Upscale Machine
|
||
|
||
- **Model-based Upscaling:** Uses custom or pre-trained models from the `upscale_models` folder.
|
||
- **Aspect Ratio Preserving Rescale:** Output size is always original size × rescale factor.
|
||
- **CPU-based Rescaling:** Efficient resizing using OpenCV.
|
||
- **Supersampling:** Optional detail preservation for downscaling/fractional resizing.
|
||
- **Rounding Modulus:** Ensures output dimensions align with model/UI constraints.
|
||
- **Dual Output:** Returns both the processed image and a help/documentation link.
|
||
|
||
### 💬 Prompt Machine
|
||
|
||
- **CSV-based Prompt Selection:** Select prompt sets from a CSV file (`prompts.csv`).
|
||
- **Positive/Negative Output:** Outputs both positive and negative prompts as strings.
|
||
- **Easy Integration:** Designed for use in prompt-driven workflows.
|
||
|
||
### 🖱️ Touchpad Pan & Zoom
|
||
|
||
- **Preview Navigation:** Enables smooth pan and zoom for large images in the ComfyUI preview panel.
|
||
- **User Experience:** Makes inspecting high-res outputs fast and intuitive.
|
||
|
||
### 📏 Resolution Machine
|
||
|
||
- **Model-aware Resolution Selection:** Choose from a list of recommended resolutions for each supported model.
|
||
- **Auto-populate Width/Height:** Selecting a resolution automatically fills in the correct width and height.
|
||
- **Manual Override:** You can manually set width/height, which clears the preset selection.
|
||
- **Supports Many Models:** Includes presets for SD1.5, SDXL, Illustrious XL, Pony XL, Flux.1 Dev, Qwen-Image, Wan2.2-S2V, SD3.5 Large, Lumina-Image 2.0, and more.
|
||
- **UI Integration:** Intuitive dropdowns for model and resolution selection in the ComfyUI interface.
|
||
|
||
---
|
||
|
||
## 📦 Installation
|
||
|
||
1. Clone or download this repository into your ComfyUI `custom_nodes` directory:
|
||
|
||
```sh
|
||
git clone https://github.com/SatadalAI/SATA_UtilityNode.git
|
||
```
|
||
|
||
2. (Optional) Install dependencies if not already present:
|
||
|
||
```sh
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
3. Restart ComfyUI.
|
||
|
||
---
|
||
|
||
## 📚 Node Inputs & Outputs
|
||
|
||
### Upscale Machine
|
||
|
||
| Name | Type | Description |
|
||
|------------------|--------|--------------------------------------------------|
|
||
| `image` | IMAGE | Input image tensor |
|
||
| `upscale_model` | STRING | Model filename from `upscale_models` folder |
|
||
| `rescale_factor` | FLOAT | Scaling factor (aspect ratio preserved) |
|
||
| `supersample` | STRING | `"true"` or `"false"` |
|
||
| `rounding_modulus` | INT | Ensures dimensions are divisible by this value |
|
||
|
||
**Outputs:**
|
||
|
||
| Name | Type | Description |
|
||
|-------------|--------|------------------------------------|
|
||
| `IMAGE` | IMAGE | The upscaled and resized image |
|
||
| `show_help` | STRING | Link to documentation/help |
|
||
|
||
---
|
||
|
||
### Prompt Machine
|
||
|
||
| Name | Type | Description |
|
||
|-------------|--------|------------------------------------|
|
||
| `selection` | STRING | Prompt set name from CSV |
|
||
|
||
**Outputs:**
|
||
|
||
| Name | Type | Description |
|
||
|-------------|--------|------------------------------------|
|
||
| `positive` | STRING | Positive prompt |
|
||
| `negative` | STRING | Negative prompt |
|
||
|
||
---
|
||
|
||
### Touchpad Pan & Zoom
|
||
|
||
- **No node configuration required.**
|
||
- Enables pan/zoom in the ComfyUI preview panel for large images.
|
||
|
||
---
|
||
|
||
### Resolution Machine
|
||
|
||
| Name | Type | Description |
|
||
|--------------|--------|--------------------------------------------------|
|
||
| `model` | STRING | Model name (select from supported models) |
|
||
| `resolution` | STRING | Resolution preset name (auto-populates size) |
|
||
| `width` | INT | Image width (can be set manually) |
|
||
| `height` | INT | Image height (can be set manually) |
|
||
|
||
**Outputs:**
|
||
|
||
| Name | Type | Description |
|
||
|----------|------|----------------------------|
|
||
| `width` | INT | Final image width |
|
||
| `height` | INT | Final image height |
|
||
|
||
---
|
||
|
||
## 📝 License
|
||
|
||
MIT License
|
||
|
||
---
|
||
|
||
## 🔗 Links
|
||
|
||
- [ComfyUI](https://github.com/comfyanonymous/ComfyUI)
|
||
- [SATA Utility Node GitHub](https://github.com/SatadalAI/SATA_UtilityNode) |