ComfyUI-JetImageScale

A premium ComfyUI custom node that scales and crops images and masks to target aspect ratios with support for letterboxing (with custom background color padding), cropping, and stretching.

繁體中文版說明請見下方

Features

  • Aspect Ratio Presets: Choose from standard aspect ratios: original, 1:1, 3:2, 4:3, 16:9, 2:3, 3:4, 9:16, or input a custom ratio.
  • Custom Scaling Options: Use the proportional_width and proportional_height parameters to specify any custom aspect ratio.
  • Sizing Boundaries: Scale to longest, shortest, width, height, or select none to preserve original scale while adjusting layout.
  • Three Fitting Modes:
    • crop: Scales the image to completely cover the target dimensions and crops excess from the center, preserving content aspect ratio.
    • letterbox: Fits the entire image within target dimensions and pads the background with a customizable color, preserving content aspect ratio.
    • fill: Stretches/squeezes the image to match the target dimensions exactly.
  • Pillow Resampling Algorithms: Choose from high-quality resampling filters: lanczos, bicubic, hamming, bilinear, and nearest.
  • Mask Alignment: Supports resizing masks alongside images, ensuring exact alignment and padding.

Input Parameters

Parameter Type Default Options / Description
image IMAGE Required Input image tensor [B, H, W, C]
mask MASK Optional Input mask tensor [B, H, W]
aspect_ratio Combo original original, custom, 1:1, 3:2, 4:3, 16:9, 2:3, 3:4, 9:16
proportional_width INT 1 Proportional width multiplier for custom aspect ratio.
proportional_height INT 1 Proportional height multiplier for custom aspect ratio.
fit Combo crop crop, letterbox, fill
method Combo lanczos lanczos, bicubic, hamming, bilinear, nearest
scale_to_side Combo longest longest, shortest, width, height, none
scale_to_length INT 1280 Dimension length to scale the selected side to.
background_color STRING #000000 Hex color code for letterbox padding.

Outputs

  • image (IMAGE): The scaled/cropped image tensor.
  • mask (MASK): The aligned scaled/cropped mask tensor.
  • original_size (TUPLE): The original dimensions (width, height).
  • width (INT): The new width.
  • height (INT): The new height.

Installation

Clone this repository into your ComfyUI custom nodes folder:

cd ComfyUI/custom_nodes
git clone https://github.com/JetterTW/ComfyUI-JetImageScale.git

ComfyUI-JetImageScale (繁體中文版)

這是一個優質的 ComfyUI 自訂節點,用於將影像與遮罩縮放、裁剪至目標寬高比。支援加黑邊(letterbox,以自訂背景顏色填滿)、裁剪(crop)以及直接拉伸填滿(fill)。

功能特點

  • 寬高比預設 (Aspect Ratio Presets):可選擇標準寬高比:original (原始)、1:1、3:2、4:3、16:9、2:3、3:4、9:16,或輸入 custom (自訂) 比例。
  • 自訂縮放選項 (Custom Scaling Options):使用 proportional_width 與 proportional_height 參數指定任意自訂寬高比。
  • 縮放基準邊長 (Sizing Boundaries):可縮放至 longest (最長邊)、shortest (最短邊)、width (寬度)、height (高度),或選擇 none (不縮放影像內容,僅調整畫布排版)。
  • 三種最適化模式 (Three Fitting Modes):
    • crop (裁剪):縮放影像以完全填滿目標尺寸,並從中央裁剪多餘部分,保留內容原有的寬高比。
    • letterbox (加黑邊/信箱模式):將完整影像放入目標尺寸內,並以自訂背景顏色填滿空白處,保留內容原有的寬高比。
    • fill (拉伸填滿):直接拉伸/壓縮影像以完全符合目標尺寸。
  • Pillow 重採樣演算法 (Pillow Resampling Algorithms):提供多種高品質重採樣濾鏡:lanczos、bicubic、hamming、bilinear 與 nearest。
  • 遮罩對齊 (Mask Alignment):同步縮放與裁剪遮罩,確保遮罩與影像完全對齊並填滿。

輸入參數

參數名稱 類型 預設值 選項 / 說明
image IMAGE 必填 輸入影像張量 [B, H, W, C]
mask MASK 選填 輸入遮罩張量 [B, H, W]
aspect_ratio Combo original original, custom, 1:1, 3:2, 4:3, 16:9, 2:3, 3:4, 9:16
proportional_width INT 1 自訂寬高比的寬度比例。
proportional_height INT 1 自訂寬高比的高度比例。
fit Combo crop crop, letterbox, fill
method Combo lanczos lanczos, bicubic, hamming, bilinear, nearest
scale_to_side Combo longest longest, shortest, width, height, none
scale_to_length INT 1280 指定邊長縮放至的像素大小。
background_color STRING #000000 信箱模式 (letterbox) 的背景填滿十六進位顏色代碼。

輸出

  • image (IMAGE):縮放/裁剪後的影像張量。
  • mask (MASK):對齊且縮放/裁剪後的遮罩張量。
  • original_size (TUPLE):原始尺寸 (寬度, 高度)。
  • width (INT):新寬度。
  • height (INT):新高度。

安裝說明

將此儲存庫複製到您的 ComfyUI custom_nodes 資料夾中:

cd ComfyUI/custom_nodes
git clone https://github.com/JetterTW/ComfyUI-JetImageScale.git
S
Description
No description provided
Readme
32 KiB
Languages
Python 100%