KJNodes/imagegenerated

Transformation d'image KJ(ImageTransformKJ)

Nœud interactif de transformation d'image : recadrer, redimensionner, rembourrer et pivoter. Connectez une entrée d'image — l'aperçu apparaît automatiquement. Recadrage : Cliquez + faites glisser pour dessiner une zone de recadrage. Faites glisser à l'intérieur pour déplacer, faites glisser les bords/coins pour redimensionner. Cliquez droit pour supprimer une zone. Ctrl pour aligner sur la grille. Maj + redimensionner pour contraindre le rapport hauteur/largeur. Alt + redimensionner pour redimensionner symétriquement. Rembourrage : Maj + faites glisser pour ajuster la position du rembourrage. Le bouton Pivoter active une croix de rotation (faites glisser pour pivoter, cliquez droit pour réinitialiser). Définissez target_width/height pour redimensionner la sortie (0 = conserver l'original). Utilisez keep_proportion pour contrôler la façon dont l'image s'adapte à la cible. Utilisez extra_padding pour ajouter du rembourrage avec remplissage de couleur ou de bord (clamp/repeat/mirror).

Image Transform KJ

image
mask
keep_proportion
extra_padding
invert_crop
cropped
cropped_mask
bbox
bbox_mask
width
height
target_width
0
target_height
0
upscale_method
lanczos
divisible_by
2
bboxes
STRING
pad_x
0.50
pad_y
0.50
edge_mode
clamp
pad_x
0.50
pad_y
0.50
width_mult
1.00
height_mult
1.00
edge_mode
clamp
edge_mode
clamp
KJNodes

Description

Le nœud Transformation d'image KJ fournit une interface interactive dans l'aperçu pour recadrer, redimensionner, rembourrer et pivoter des images (et des masques optionnels).
Connectez une entrée d'image et l'aperçu apparaît automatiquement, vous permettant de dessiner des zones de recadrage, d'ajuster le placement du rembourrage et d'appliquer une rotation directement dans l'aperçu.

Recadrage :

  • Cliquez + faites glisser pour dessiner une zone de recadrage.
  • Faites glisser à l'intérieur de la zone pour la déplacer ; faites glisser les bords ou les coins pour redimensionner.
  • Cliquez droit pour supprimer une zone.
  • Maintenez Ctrl pour aligner sur une grille.
  • Maintenez Maj pendant le redimensionnement pour contraindre le rapport hauteur/largeur.
  • Maintenez Alt pendant le redimensionnement pour redimensionner symétriquement autour du centre.

Rembourrage :

  • Maintenez Maj et faites glisser le contenu à l'intérieur de l'aperçu pour ajuster la position du rembourrage (équivalent à modifier pad_x et pad_y).

Rotation :

  • Cliquez sur le bouton Pivoter pour activer une croix de rotation. Faites glisser pour pivoter ; cliquez droit pour réinitialiser la rotation.

Entrées

NomTypeDéfautInfo-bulle / Description
imageIMAGE / MATCHTYPEL'image (ou tenseur compatible masque) à transformer.
maskMASKoptionnelMasque optionnel à transformer avec l'image.
target_widthINT0Largeur cible de la sortie. 0 = conserver la largeur d'origine.
target_heightINT0Hauteur cible de la sortie. 0 = conserver la hauteur d'origine.
upscale_methodCOMBOlanczosMéthode d'interpolation pour le redimensionnement : nearest-exact, bilinear, area, bicubic, lanczos.
keep_proportionDYNAMICCOMBOContrôle comment le contenu s'adapte aux dimensions cibles (par ex. conserver le rapport hauteur/largeur, étirer, etc.). Les options dépendent du backend – ajustez selon votre flux de travail.
divisible_byINT2Garantit que les dimensions de sortie sont divisibles par cette valeur (0 = aucune contrainte ; max 512).
extra_paddingDYNAMICCOMBOActive un rembourrage supplémentaire autour du contenu recadré. Lorsqu'il est actif, pad_x, pad_y et edge_mode sont utilisés.
invert_cropDYNAMICCOMBOLorsqu'il est activé, la zone de recadrage est inversée (la zone à l'extérieur du recadrage est conservée/traitée).
bboxesSTRING""Boîtes englobantes préexistantes optionnelles (par ex. depuis un nœud de détection) à appliquer ou modifier.
pad_xFLOAT0.5Position horizontale du contenu dans la zone rembourrée (0 = gauche, 0.5 = centre, 1 = droite). Également ajustable de manière interactive en faisant glisser le contenu avec Maj.
pad_yFLOAT0.5Position verticale du contenu dans la zone rembourrée (0 = haut, 0.5 = centre, 1 = bas). Également ajustable de manière interactive en faisant glisser le contenu avec Maj.
edge_modeCOMBOclampComment remplir les zones de rembourrage : clamp (étendre les pixels de bord), repeat (mosaïque de l'image), mirror (mosaïque avec effet miroir).
width_multFLOAT1.0Multiplie la largeur de recadrage par ce facteur. Plage [0.01, 16], pas 0.05.
height_multFLOAT1.0Multiplie la hauteur de recadrage par ce facteur. Plage [0.01, 16], pas 0.05.

Remarque : L'aperçu interactif se met à jour en temps réel. Les modifications apportées à pad_x, pad_y, width_mult, height_mult et à la rotation sont reflétées immédiatement.

Sorties

Sortie n°TypeDescription
1IMAGE (même type que l'entrée)L'image transformée après recadrage, redimensionnement, rembourrage et rotation.
2MASKLe masque transformé (si une entrée masque a été fournie ; sinon un masque vide).
3BBOXCoordonnées de la boîte englobante de la zone de recadrage appliquée (le format dépend du backend, généralement [x1, y1, x2, y2] ou similaire).
4MASKUn masque correspondant à la zone recadrée (utile pour la composition ou un traitement ultérieur).
5INTLargeur de la zone de recadrage finale.
6INTHauteur de la zone de recadrage finale.

Notes d'utilisation

  • Le recadrage interactif est le flux de travail principal prévu : l'aperçu permet une sélection intuitive des zones de recadrage. L'entrée bboxes peut être utilisée pour fournir ou remplacer la zone par programme.
  • Comportement de redimensionnement : Lorsque target_width et target_height sont tous deux à 0, la sortie conserve la taille recadrée/rembourrée sans mise à l'échelle supplémentaire. Pour redimensionner à une résolution spécifique, définissez une ou les deux cibles et choisissez une upscale_method. L'option keep_proportion détermine si l'image est étirée, recadrée pour s'ajuster ou rembourrée pour remplir la cible.
  • Le rembourrage n'est appliqué que lorsque extra_padding est actif. Utilisez pad_x / pad_y pour positionner le contenu et edge_mode pour contrôler la façon dont la zone de rembourrage est remplie.
  • La rotation est appliquée après le recadrage et avant le redimensionnement/rembourrage. La croix de rotation dans l'aperçu offre un contrôle précis ; la rotation est stockée en interne et peut être ajustée par session.
  • Le paramètre divisible_by est utile pour aligner les dimensions sur des tailles adaptées au modèle (par ex. multiples de 8, 16, 32). Le définir à 0 désactive la contrainte.
  • Alignement des coordonnées : Maintenez Ctrl pendant que vous dessinez ou déplacez un rectangle de recadrage pour aligner sa position et sa taille sur une grille (l'espacement de la grille est déterminé par le pas interne du nœud). Cela aide à aligner les recadrages sur un pavage régulier.

Tous les paramètres qui affectent la sortie finale sont exposés en tant qu'entrées, de sorte que le nœud peut être utilisé à la fois de manière interactive et dans des pipelines automatisés en connectant des valeurs appropriées (par ex. provenant d'autres nœuds qui produisent des boîtes englobantes ou des dimensions).

Commentaires

Connectez-vous avec GitHub pour rejoindre la discussion.

Chargement des commentaires…
Transformation d'image KJ (ImageTransformKJ) - ComfyUI-KJNodes | ComfyUI Wiki