Files
Junst-ComfyUI-Concept-Diffu…/example_workflow_fixed.json
T
Junst 6595d25bad Update workflow for elderly woman character example
- Remove VAE output from CheckpointLoaderSimple (not needed for ConceptAttention)
- Update example prompt to: 'Elderly woman character with white hair and a red dress holding a cane and accompanied by a small white cat on her shoulder. Cartoon style with smooth lines and exaggerated facial features offering a whimsical and friendly appearance. Her name is abae.'
- Update concept segmentation to: woman, cat, white, lines, cane
- Update concept saliency map default to: woman
- Update mock saliency map patterns for new concepts:
  * woman: center region (red)
  * cat: shoulder region (green)
  * white: scattered bright spots (white)
  * lines: horizontal/vertical line patterns (blue)
  * cane: vertical line on right side (magenta)
- Update color mappings in utils.py and nodes.py
- Fix workflow link validation issues
2025-09-17 14:02:15 +09:00

187 lines
5.4 KiB
JSON

{
"last_node_id": 10,
"last_link_id": 11,
"nodes": [
{
"id": 1,
"type": "LoadImage",
"pos": [100, 100],
"size": {"0": 315, "1": 314},
"flags": {},
"order": 0,
"mode": 0,
"outputs": [
{"name": "IMAGE", "type": "IMAGE", "links": [1], "slot_index": 0}
],
"properties": {"Node name for S&R": "LoadImage"},
"widgets_values": ["example_image.png", "image"]
},
{
"id": 2,
"type": "CheckpointLoaderSimple",
"pos": [100, 500],
"size": {"0": 315, "1": 98},
"flags": {},
"order": 1,
"mode": 0,
"outputs": [
{"name": "MODEL", "type": "MODEL", "links": [2], "slot_index": 0},
{"name": "CLIP", "type": "CLIP", "links": [3], "slot_index": 1},
{"name": "VAE", "type": "VAE", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "CheckpointLoaderSimple"},
"widgets_values": ["flux1-dev.safetensors"]
},
{
"id": 3,
"type": "ConceptAttentionNode",
"pos": [500, 100],
"size": {"0": 400, "1": 400},
"flags": {},
"order": 2,
"mode": 0,
"inputs": [
{"name": "model", "type": "MODEL", "link": 2},
{"name": "clip", "type": "CLIP", "link": 3},
{"name": "image", "type": "IMAGE", "link": 1}
],
"outputs": [
{"name": "concept_maps", "type": "CONCEPT_MAPS", "links": [4, 5], "slot_index": 0},
{"name": "visualized_image", "type": "IMAGE", "links": [6], "slot_index": 1}
],
"properties": {"Node name for S&R": "ConceptAttentionNode"},
"widgets_values": ["person, car, tree, sky, building", 20, 0]
},
{
"id": 4,
"type": "ConceptSaliencyMapNode",
"pos": [1000, 100],
"size": {"0": 300, "1": 200},
"flags": {},
"order": 3,
"mode": 0,
"inputs": [
{"name": "concept_maps", "type": "CONCEPT_MAPS", "link": 4},
{"name": "concept_name", "type": "STRING", "link": null},
{"name": "threshold", "type": "FLOAT", "link": null}
],
"outputs": [
{"name": "mask", "type": "MASK", "links": null, "slot_index": 0},
{"name": "saliency_image", "type": "IMAGE", "links": [8], "slot_index": 1}
],
"properties": {"Node name for S&R": "ConceptSaliencyMapNode"},
"widgets_values": ["person", 0.5]
},
{
"id": 5,
"type": "ConceptSegmentationNode",
"pos": [1000, 400],
"size": {"0": 300, "1": 200},
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{"name": "concept_maps", "type": "CONCEPT_MAPS", "link": 5},
{"name": "image", "type": "IMAGE", "link": 1},
{"name": "concepts", "type": "STRING", "link": null}
],
"outputs": [
{"name": "segmentation_mask", "type": "MASK", "links": null, "slot_index": 0},
{"name": "segmented_image", "type": "IMAGE", "links": [10], "slot_index": 1}
],
"properties": {"Node name for S&R": "ConceptSegmentationNode"},
"widgets_values": ["person, car, tree, sky, building"]
},
{
"id": 6,
"type": "ConceptAttentionVisualizerNode",
"pos": [500, 600],
"size": {"0": 300, "1": 200},
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{"name": "concept_maps", "type": "CONCEPT_MAPS", "link": 4},
{"name": "image", "type": "IMAGE", "link": 1},
{"name": "overlay_alpha", "type": "FLOAT", "link": null}
],
"outputs": [
{"name": "visualized_image", "type": "IMAGE", "links": [11], "slot_index": 0}
],
"properties": {"Node name for S&R": "ConceptAttentionVisualizerNode"},
"widgets_values": [0.5]
},
{
"id": 7,
"type": "SaveImage",
"pos": [1400, 100],
"size": {"0": 315, "1": 270},
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{"name": "images", "type": "IMAGE", "link": 6}
],
"properties": {"Node name for S&R": "SaveImage"},
"widgets_values": ["concept_attention_visualization"]
},
{
"id": 8,
"type": "SaveImage",
"pos": [1400, 400],
"size": {"0": 315, "1": 270},
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{"name": "images", "type": "IMAGE", "link": 8}
],
"properties": {"Node name for S&R": "SaveImage"},
"widgets_values": ["person_saliency_map"]
},
{
"id": 9,
"type": "SaveImage",
"pos": [1400, 700],
"size": {"0": 315, "1": 270},
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{"name": "images", "type": "IMAGE", "link": 10}
],
"properties": {"Node name for S&R": "SaveImage"},
"widgets_values": ["concept_segmentation"]
},
{
"id": 10,
"type": "SaveImage",
"pos": [900, 900],
"size": {"0": 315, "1": 270},
"flags": {},
"order": 9,
"mode": 0,
"inputs": [
{"name": "images", "type": "IMAGE", "link": 11}
],
"properties": {"Node name for S&R": "SaveImage"},
"widgets_values": ["attention_overlay"]
}
],
"links": [
[1, 1, 0, 3, 2, "IMAGE"],
[2, 2, 0, 3, 0, "MODEL"],
[3, 2, 1, 3, 1, "CLIP"],
[4, 3, 0, 4, 0, "CONCEPT_MAPS"],
[5, 3, 0, 5, 0, "CONCEPT_MAPS"],
[6, 3, 1, 7, 0, "IMAGE"],
[8, 4, 1, 8, 0, "IMAGE"],
[10, 5, 1, 9, 0, "IMAGE"],
[11, 6, 0, 10, 0, "IMAGE"]
],
"groups": [],
"config": {},
"extra": {},
"version": 0.4
}