KJNodes/weightsgenerated

Spline Editor(SplineEditor)

D'un point de vue technique, ce nœud prend en charge plusieurs méthodes d'échantillonnage (par exemple, par longueur de chemin ou par temps) et algorithmes d'interpolation (tels que Cardinal, Basis, etc.) pour calculer des transitions lisses entre les points de contrôle.

Spline Editor

bg_image
mask
coord_str
float
count
normalized_str
points_store
STRING
coordinates
STRING
mask_width
512
mask_height
512
points_to_sample
16
sampling_method
time
interpolation
cardinal
tension
0.50
repeat_output
1
float_output_type
list
min_value
0.00
max_value
1.00
KJNodes

⚠️ TRAVAIL EN COURS
Ne comptez pas encore sur ceci dans votre flux de travail,
cela contient probablement beaucoup de bugs et la stabilité
n'est pas garantie !

Éditeur graphique pour créer des valeurs pour divers horaires et/ou lots de masques

D'un point de vue technique, le nœud Spline Editor prend en charge plusieurs méthodes d'échantillonnage (par exemple, par longueur de chemin ou par temps) et algorithmes d'interpolation (tels que Cardinal, Basis, etc.) pour calculer des transitions lisses entre les points de contrôle.

Spline Editor est un nœud permettant de créer et d'éditer des courbes splines. Il permet aux utilisateurs de générer des chemins lisses ou des séquences de valeurs numériques en définissant une série de points de contrôle. La fonction principale de ce nœud est de convertir ces points en masques (Mask) utilisables pour le traitement d'image ou en une série de valeurs FLOTTANTES, fournissant ainsi des données de base pour des animations ou des contrôles de pondération ultérieurs.

Contrôles d'édition

  • Maj + Cliquez pour ajouter un point de contrôle à la fin.
  • Ctrl + Cliquez pour ajouter un point de contrôle (subdiviser) entre deux points.
  • Clic droit sur un point pour le supprimer (note : le premier/dernier point ne peut pas être supprimé).
  • Clic droit sur la toile pour un Menu Contextuel :
    • Ajouter une nouvelle spline – crée une nouvelle spline sur la même toile ; ces chemins ne sont actuellement renvoyés que sous forme de coordonnées.
    • Ajouter un point unique – crée un point qui renvoie ses coordonnées actuelles.
    • Supprimer la spline – supprime la spline actuellement sélectionnée (sélectionnez en cliquant sur son chemin ou parcourez les splines via l'option « Spline suivante »).
  • Options purement visuelles (n'affectent pas la sortie) :
    • Basculer la visibilité des poignées
    • Afficher les points d'échantillonnage – montre les points qui seront renvoyés.

La valeur points_to_sample définit le nombre d'échantillons renvoyés par la spline dessinée elle-même ; cela est indépendant des points de contrôle réels, donc le type d'interpolation est important.

sampling_method :

  • time – échantillonne le long de l'axe temporel (pour les horaires)
  • path – échantillonne le long du chemin lui-même (utile pour les coordonnées)
  • controlpoints – échantillonne uniquement les points de contrôle eux-mêmes
  • speed – échantillonne en fonction de la vitesse le long du chemin

types de sortie :

  • lot de masques – compatible avec les nœuds qui acceptent les masques
  • liste de FLOTTANTS – compatible avec les poids IPAdapter, etc.
  • série pandas – compatible avec les nœuds Fizz Batch Value Schedule
  • tenseur torch – compatible avec les nœuds inconnus

Fonctionnalités du nœud

D'un point de vue technique, ce nœud prend en charge plusieurs méthodes d'échantillonnage (telles que par longueur de chemin ou par temps) et algorithmes d'interpolation (comme Cardinal, Basis, etc.) pour calculer des transitions lisses entre les points de contrôle. Il reçoit des données de coordonnées de points au format CHAÎNE et peut générer une image de masque en niveaux de gris correspondante ou une liste numérique sur une toile de dimensions définies par l'utilisateur (mask_width et mask_height). Il prend également en charge la répétition de la sortie un nombre spécifié de fois.

Description des paramètres du nœud - Spline Editor

Entrées (Inputs)

Nom du paramètreType de donnéesRequisDescription
points_storeCHAÎNEOuipoints_store : Une CHAÎNE utilisée pour stocker et transmettre les données de coordonnées des points de contrôle, généralement générée par l'interaction avec l'interface du nœud dans un format défini en interne.
coordinatesCHAÎNEOuicoordinates : Saisir directement la séquence de coordonnées des points de contrôle sous forme de CHAÎNE. Le format doit respecter « x1,y1,x2,y2... ».
bg_imageIMAGENonbg_image (Entrée) : Saisir optionnellement une image d'arrière-plan. Le nœud générera le masque en fonction des dimensions de cette image, écrasant les paramètres de largeur et hauteur définis manuellement.

Paramètres de contrôle (Parameters)

Nom du paramètreType de donnéesRequisValeur par défautPlage/Valeurs possiblesDescription
sampling_methodCOMBOOuitime"path", "time", "controlpoints", "speed"Détermine la logique de génération des valeurs. Options incluent time, controlpoints, speed et path.
interpolationCOMBOOuicardinal"cardinal", "monotone", "basis", "linear", "step-before", "step-after", "polar", "polar-reverse", "bezier"Affecte directement la fluidité et la forme de la courbe générée. Options incluent cardinal, monotone, basis, linear, step-before, step-after, polar, polar-reverse et bezier.
float_output_typeCOMBOOuilist"list", "pandas series", "tensor"Spécifie le format de la sortie FLOTTANT, comme list, pandas series ou tensor, pour s'adapter aux différents nœuds de traitement en aval.
mask_widthINTOui51284096 (pas : 8)mask_width : Définit la largeur de l'image de masque de sortie. Plage de 8 à 4096 avec un pas de 8. Doit correspondre à la largeur de l'image du scénario d'utilisation.
mask_heightINTOui51284096 (pas : 8)mask_height : Définit la hauteur de l'image de masque de sortie. Plage de 8 à 4096 avec un pas de 8. Doit correspondre à la hauteur de l'image du scénario d'utilisation.
points_to_sampleINTOui1621000 (pas : 1)points_to_sample : Définit le nombre de points à échantillonner sur la courbe spline. Plage de 2 à 1000. Plus le nombre de points est élevé, plus la description de la courbe est fine.
tensionFLOTTANTOui0.50.01.0 (pas : 0.01)tension : Ajuste la tension de l'algorithme d'interpolation Cardinal. Plage de 0.0 à 1.0 avec un pas de 0.01. Affecte la rigidité avec laquelle la courbe passe par les points de contrôle.
repeat_outputINTOui114096 (pas : 1)repeat_output : Contrôle le nombre de répétitions de la séquence de sortie (par exemple, la liste de masques). Plage de 1 à 4096. Utilisé pour générer rapidement des séquences cycliques ou prolongées.
min_valueFLOTTANTNon0.0-10000.010000.0 (pas : 0.01)Limite inférieure optionnelle pour remapper les valeurs FLOTTANTES de sortie.
max_valueFLOTTANTNon1.0-10000.010000.0 (pas : 0.01)Limite supérieure optionnelle pour remapper les valeurs FLOTTANTES de sortie.

Sorties (Outputs)

Nom du paramètreType de donnéesDescription
maskMASKmask (Sortie) : Image de masque en niveaux de gris en sortie. Les zones blanches représentent le chemin de la spline.
coord_strCHAÎNEcoord_str (Sortie) : CHAÎNE en sortie contenant les informations de coordonnées de tous les points échantillonnés.
floatFLOTTANTfloat (Sortie) : Séquence de valeurs FLOTTANTES en sortie, représentant les valeurs obtenues par échantillonnage le long de la courbe spline.
countINTcount (Sortie) : Entier en sortie indiquant le nombre réel de points échantillonnés.
normalized_strCHAÎNEnormalized_str (Sortie) : CHAÎNE en sortie contenant les informations de coordonnées normalisées des points échantillonnés.

Scénarios d'utilisation

Dans des applications concrètes, ce nœud est souvent utilisé pour construire des masques dynamiques ou des courbes de paramètres de contrôle. Par exemple, dans un flux de travail de traitement de trames vidéo, un utilisateur peut dessiner un chemin de mouvement. Spline Editor générera alors une séquence de masques le long de ce chemin, utilisée dans les nœuds suivants pour guider la trajectoire de déplacement du contenu de l'image (comme des particules ou des rayons lumineux), permettant ainsi de créer des effets d'animation complexes.

Points d'attention

Il est important de noter que le format de la CHAÎNE de coordonnées d'entrée doit être correct et que les dimensions de la toile définies doivent correspondre aux dimensions de l'image finale utilisée. Sinon, le masque généré pourrait être mal aligné. De plus, le nombre de points d'échantillonnage ne doit pas être défini trop bas pour garantir la fluidité de la courbe.

Lien vers le code source du nœud Spline Editor

Le nœud Spline Editor provient du pack de nœuds ComfyUI-KJNodes.

Commentaires

Connectez-vous avec GitHub pour rejoindre la discussion.

Chargement des commentaires…