aleph65 commited on
Commit
ba7de86
·
verified ·
1 Parent(s): 6e4fe59

Upload workflows/outpaint-flux-fill.json with huggingface_hub

Browse files
Files changed (1) hide show
  1. workflows/outpaint-flux-fill.json +812 -194
workflows/outpaint-flux-fill.json CHANGED
@@ -1,8 +1,8 @@
1
  {
2
- "id": "5e1b21ab-03b0-4e1d-96d4-3dfb04a67130",
3
  "revision": 0,
4
- "last_node_id": 31,
5
- "last_link_id": 54,
6
  "nodes": [
7
  {
8
  "id": 1,
@@ -73,7 +73,7 @@
73
  6,
74
  14,
75
  17,
76
- 49
77
  ],
78
  "slot_index": 0
79
  }
@@ -113,7 +113,7 @@
113
  9,
114
  20,
115
  23,
116
- 50
117
  ],
118
  "slot_index": 0
119
  }
@@ -767,8 +767,11 @@
767
  "name": "IMAGE",
768
  "type": "IMAGE",
769
  "links": [
770
- 40,
771
- 52
 
 
 
772
  ],
773
  "slot_index": 0
774
  },
@@ -777,7 +780,7 @@
777
  "type": "MASK",
778
  "links": [
779
  31,
780
- 41
781
  ],
782
  "slot_index": 1
783
  }
@@ -822,7 +825,7 @@
822
  "name": "MASK",
823
  "type": "MASK",
824
  "links": [
825
- 53
826
  ],
827
  "slot_index": 0
828
  }
@@ -896,7 +899,7 @@
896
  "name": "MODEL",
897
  "type": "MODEL",
898
  "links": [
899
- 42
900
  ],
901
  "slot_index": 0
902
  }
@@ -970,8 +973,8 @@
970
  "name": "VAE",
971
  "type": "VAE",
972
  "links": [
973
- 39,
974
- 47
975
  ],
976
  "slot_index": 0
977
  }
@@ -1095,7 +1098,7 @@
1095
  "name": "CONDITIONING",
1096
  "type": "CONDITIONING",
1097
  "links": [
1098
- 37
1099
  ],
1100
  "slot_index": 0
1101
  }
@@ -1136,7 +1139,7 @@
1136
  "name": "CONDITIONING",
1137
  "type": "CONDITIONING",
1138
  "links": [
1139
- 38
1140
  ],
1141
  "slot_index": 0
1142
  }
@@ -1153,208 +1156,238 @@
1153
  },
1154
  {
1155
  "id": 25,
1156
- "type": "InpaintModelConditioning",
1157
  "pos": [
1158
- 1620,
1159
  480
1160
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1161
  "size": [
1162
  270,
1163
  100
1164
  ],
1165
  "flags": {},
1166
- "order": 25,
1167
  "mode": 0,
1168
  "inputs": [
1169
  {
1170
- "name": "positive",
1171
- "type": "CONDITIONING",
1172
  "link": 37
1173
  },
1174
  {
1175
- "name": "negative",
1176
- "type": "CONDITIONING",
1177
- "link": 38
1178
- },
1179
- {
1180
- "name": "vae",
1181
- "type": "VAE",
1182
- "link": 39
1183
- },
1184
- {
1185
- "name": "pixels",
1186
- "type": "IMAGE",
1187
- "link": 40
1188
  },
1189
  {
1190
- "name": "mask",
1191
- "type": "MASK",
1192
- "link": 41
1193
  }
1194
  ],
1195
  "outputs": [
1196
  {
1197
- "name": "positive",
1198
- "type": "CONDITIONING",
1199
- "links": [
1200
- 43
1201
- ],
1202
  "slot_index": 0
1203
  },
1204
  {
1205
- "name": "negative",
1206
- "type": "CONDITIONING",
1207
  "links": [
1208
- 44
 
1209
  ],
1210
  "slot_index": 1
1211
- },
1212
- {
1213
- "name": "latent",
1214
- "type": "LATENT",
1215
- "links": [
1216
- 45
1217
- ],
1218
- "slot_index": 2
1219
  }
1220
  ],
1221
  "properties": {
1222
- "Node name for S&R": "InpaintModelConditioning",
1223
- "cnr_id": "comfy-core",
1224
- "ver": "0.27.0"
1225
  },
1226
  "widgets_values": [
1227
- true
1228
- ]
 
1229
  },
1230
  {
1231
- "id": 26,
1232
- "type": "KSampler",
1233
  "pos": [
1234
- 1960,
1235
- 40
1236
  ],
1237
  "size": [
1238
- 310,
1239
- 260
1240
  ],
1241
  "flags": {},
1242
- "order": 26,
1243
  "mode": 0,
1244
  "inputs": [
1245
  {
1246
- "name": "model",
1247
- "type": "MODEL",
1248
- "link": 42
1249
- },
1250
- {
1251
- "name": "positive",
1252
- "type": "CONDITIONING",
1253
- "link": 43
1254
  },
1255
  {
1256
- "name": "negative",
1257
- "type": "CONDITIONING",
1258
- "link": 44
1259
  },
1260
  {
1261
- "name": "latent_image",
1262
- "type": "LATENT",
1263
- "link": 45
1264
  }
1265
  ],
1266
  "outputs": [
1267
  {
1268
- "name": "LATENT",
1269
- "type": "LATENT",
1270
  "links": [
1271
- 46
 
1272
  ],
1273
  "slot_index": 0
 
 
 
 
 
 
1274
  }
1275
  ],
1276
  "properties": {
1277
- "Node name for S&R": "KSampler",
1278
- "cnr_id": "comfy-core",
1279
- "ver": "0.27.0"
1280
  },
1281
  "widgets_values": [
1282
- 0,
1283
- "fixed",
1284
- 8,
1285
- 1.0,
1286
- "euler",
1287
- "simple",
1288
- 1.0
1289
- ]
1290
  },
1291
  {
1292
- "id": 27,
1293
- "type": "VAEDecode",
1294
  "pos": [
1295
- 2300,
1296
- 40
1297
  ],
1298
  "size": [
1299
  270,
1300
  100
1301
  ],
1302
  "flags": {},
1303
- "order": 27,
1304
  "mode": 0,
1305
  "inputs": [
1306
  {
1307
- "name": "samples",
1308
- "type": "LATENT",
1309
- "link": 46
1310
  },
1311
  {
1312
- "name": "vae",
1313
- "type": "VAE",
1314
- "link": 47
 
 
 
 
 
1315
  }
1316
  ],
1317
  "outputs": [
1318
  {
1319
- "name": "IMAGE",
1320
- "type": "IMAGE",
1321
  "links": [
1322
- 48
 
1323
  ],
1324
  "slot_index": 0
 
 
 
 
 
 
1325
  }
1326
  ],
1327
  "properties": {
1328
- "Node name for S&R": "VAEDecode",
1329
- "cnr_id": "comfy-core",
1330
- "ver": "0.27.0"
1331
  },
1332
- "widgets_values": []
 
 
 
1333
  },
1334
  {
1335
- "id": 28,
1336
  "type": "ImageScale",
1337
  "pos": [
1338
- 2640,
1339
- 40
1340
  ],
1341
  "size": [
1342
  270,
1343
  100
1344
  ],
1345
  "flags": {},
1346
- "order": 28,
1347
  "mode": 0,
1348
  "inputs": [
1349
  {
1350
  "name": "image",
1351
  "type": "IMAGE",
1352
- "link": 48
1353
  },
1354
  {
1355
  "name": "width",
1356
  "type": "INT",
1357
- "link": 49,
1358
  "widget": {
1359
  "name": "width"
1360
  }
@@ -1362,7 +1395,7 @@
1362
  {
1363
  "name": "height",
1364
  "type": "INT",
1365
- "link": 50,
1366
  "widget": {
1367
  "name": "height"
1368
  }
@@ -1373,7 +1406,7 @@
1373
  "name": "IMAGE",
1374
  "type": "IMAGE",
1375
  "links": [
1376
- 51
1377
  ],
1378
  "slot_index": 0
1379
  }
@@ -1389,37 +1422,27 @@
1389
  512,
1390
  "disabled"
1391
  ],
1392
- "title": "Snap to exact target dims"
1393
  },
1394
  {
1395
- "id": 29,
1396
- "type": "ImageCompositeMasked",
1397
  "pos": [
1398
- 2940,
1399
- 40
1400
  ],
1401
  "size": [
1402
  270,
1403
  100
1404
  ],
1405
  "flags": {},
1406
- "order": 29,
1407
  "mode": 0,
1408
  "inputs": [
1409
- {
1410
- "name": "destination",
1411
- "type": "IMAGE",
1412
- "link": 51
1413
- },
1414
- {
1415
- "name": "source",
1416
- "type": "IMAGE",
1417
- "link": 52
1418
- },
1419
  {
1420
  "name": "mask",
1421
  "type": "MASK",
1422
- "link": 53
1423
  }
1424
  ],
1425
  "outputs": [
@@ -1427,26 +1450,493 @@
1427
  "name": "IMAGE",
1428
  "type": "IMAGE",
1429
  "links": [
1430
- 54
1431
  ],
1432
  "slot_index": 0
1433
  }
1434
  ],
1435
  "properties": {
1436
- "Node name for S&R": "ImageCompositeMasked",
1437
  "cnr_id": "comfy-core",
1438
  "ver": "0.27.0"
1439
  },
1440
- "widgets_values": [
1441
- 0,
1442
- 0,
1443
- false
1444
- ],
1445
- "title": "Paste original pixels back"
1446
  },
1447
  {
1448
- "id": 30,
1449
- "type": "SaveImage",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1450
  "pos": [
1451
  3240,
1452
  40
@@ -1456,13 +1946,13 @@
1456
  300
1457
  ],
1458
  "flags": {},
1459
- "order": 30,
1460
  "mode": 0,
1461
  "inputs": [
1462
  {
1463
  "name": "images",
1464
  "type": "IMAGE",
1465
- "link": 54
1466
  }
1467
  ],
1468
  "outputs": [
@@ -1483,7 +1973,7 @@
1483
  ]
1484
  },
1485
  {
1486
- "id": 31,
1487
  "type": "Note",
1488
  "pos": [
1489
  -60,
@@ -1494,13 +1984,13 @@
1494
  240
1495
  ],
1496
  "flags": {},
1497
- "order": 31,
1498
  "mode": 0,
1499
  "inputs": [],
1500
  "outputs": [],
1501
  "properties": {},
1502
  "widgets_values": [
1503
- "## Outpaint to exact dimensions \u2014 Flux.1 Fill dev + Turbo-Alpha (8 steps)\n\nSet **target_width / target_height** to the EXACT output size you want.\nThe source image is first resized (lanczos) to fit inside the target box,\nthen the remainder is outpainted. Output is always exactly target WxH,\nwith the original pixels composited back untouched.\n\n- **anchor_x**: where the original sits horizontally (0 = left, 0.5 = center, 1 = right)\n- **anchor_y**: same vertically (0 = top, 1 = bottom)\n- **feathering**: seam blend width in px\n\nPurpose-built inpaint/outpaint model, best boundary coherence for\nhard structure and geometry. ~3-5s on an H100. Fill wants HIGH\nguidance (30). Prompt can stay lazy - it reads context from the image."
1504
  ],
1505
  "color": "#432",
1506
  "bgcolor": "#653"
@@ -1797,145 +2287,273 @@
1797
  ],
1798
  [
1799
  37,
1800
- 23,
 
 
1801
  0,
 
 
 
 
1802
  25,
1803
  0,
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1804
  "CONDITIONING"
1805
  ],
1806
  [
1807
- 38,
1808
  24,
1809
  0,
1810
- 25,
1811
  1,
1812
  "CONDITIONING"
1813
  ],
1814
  [
1815
- 39,
1816
  20,
1817
  0,
1818
- 25,
1819
  2,
1820
  "VAE"
1821
  ],
1822
  [
1823
- 40,
1824
- 15,
1825
  0,
1826
- 25,
1827
  3,
1828
  "IMAGE"
1829
  ],
1830
  [
1831
- 41,
1832
- 15,
1833
- 1,
1834
- 25,
1835
  4,
1836
  "MASK"
1837
  ],
1838
  [
1839
- 42,
1840
  18,
1841
  0,
1842
- 26,
1843
  0,
1844
  "MODEL"
1845
  ],
1846
  [
1847
- 43,
1848
- 25,
1849
  0,
1850
- 26,
1851
  1,
1852
  "CONDITIONING"
1853
  ],
1854
  [
1855
- 44,
1856
- 25,
1857
  1,
1858
- 26,
1859
  2,
1860
  "CONDITIONING"
1861
  ],
1862
  [
1863
- 45,
1864
- 25,
1865
  2,
1866
- 26,
1867
  3,
1868
  "LATENT"
1869
  ],
1870
  [
1871
- 46,
1872
- 26,
1873
  0,
1874
- 27,
1875
  0,
1876
  "LATENT"
1877
  ],
1878
  [
1879
- 47,
1880
  20,
1881
  0,
1882
- 27,
1883
  1,
1884
  "VAE"
1885
  ],
1886
  [
1887
- 48,
1888
- 27,
1889
  0,
1890
- 28,
 
 
 
 
 
 
1891
  0,
 
 
1892
  "IMAGE"
1893
  ],
1894
  [
1895
- 49,
 
 
 
 
 
 
 
 
1896
  2,
1897
  0,
1898
- 28,
1899
  1,
1900
  "INT"
1901
  ],
1902
  [
1903
- 50,
1904
  3,
1905
  0,
1906
- 28,
1907
  2,
1908
  "INT"
1909
  ],
1910
  [
1911
- 51,
1912
- 28,
1913
  0,
1914
- 29,
1915
  0,
1916
  "IMAGE"
1917
  ],
1918
  [
1919
- 52,
1920
  15,
1921
  0,
1922
- 29,
1923
  1,
1924
  "IMAGE"
1925
  ],
1926
  [
1927
- 53,
1928
  16,
1929
  0,
1930
- 29,
1931
  2,
1932
  "MASK"
1933
  ],
1934
  [
1935
- 54,
1936
- 29,
1937
  0,
1938
- 30,
1939
  0,
1940
  "IMAGE"
1941
  ]
 
1
  {
2
+ "id": "59a7d51c-344e-48f6-897d-57b9d0aaba4d",
3
  "revision": 0,
4
+ "last_node_id": 41,
5
+ "last_link_id": 70,
6
  "nodes": [
7
  {
8
  "id": 1,
 
73
  6,
74
  14,
75
  17,
76
+ 65
77
  ],
78
  "slot_index": 0
79
  }
 
113
  9,
114
  20,
115
  23,
116
+ 66
117
  ],
118
  "slot_index": 0
119
  }
 
767
  "name": "IMAGE",
768
  "type": "IMAGE",
769
  "links": [
770
+ 37,
771
+ 39,
772
+ 41,
773
+ 43,
774
+ 68
775
  ],
776
  "slot_index": 0
777
  },
 
780
  "type": "MASK",
781
  "links": [
782
  31,
783
+ 46
784
  ],
785
  "slot_index": 1
786
  }
 
825
  "name": "MASK",
826
  "type": "MASK",
827
  "links": [
828
+ 69
829
  ],
830
  "slot_index": 0
831
  }
 
899
  "name": "MODEL",
900
  "type": "MODEL",
901
  "links": [
902
+ 56
903
  ],
904
  "slot_index": 0
905
  }
 
973
  "name": "VAE",
974
  "type": "VAE",
975
  "links": [
976
+ 53,
977
+ 61
978
  ],
979
  "slot_index": 0
980
  }
 
1098
  "name": "CONDITIONING",
1099
  "type": "CONDITIONING",
1100
  "links": [
1101
+ 51
1102
  ],
1103
  "slot_index": 0
1104
  }
 
1139
  "name": "CONDITIONING",
1140
  "type": "CONDITIONING",
1141
  "links": [
1142
+ 52
1143
  ],
1144
  "slot_index": 0
1145
  }
 
1156
  },
1157
  {
1158
  "id": 25,
1159
+ "type": "PrimitiveInt",
1160
  "pos": [
1161
+ 920,
1162
  480
1163
  ],
1164
+ "size": [
1165
+ 280,
1166
+ 80
1167
+ ],
1168
+ "flags": {},
1169
+ "order": 25,
1170
+ "mode": 0,
1171
+ "inputs": [],
1172
+ "outputs": [
1173
+ {
1174
+ "name": "INT",
1175
+ "type": "INT",
1176
+ "links": [
1177
+ 38
1178
+ ],
1179
+ "slot_index": 0
1180
+ }
1181
+ ],
1182
+ "properties": {
1183
+ "Node name for S&R": "PrimitiveInt",
1184
+ "cnr_id": "comfy-core",
1185
+ "ver": "0.27.0"
1186
+ },
1187
+ "widgets_values": [
1188
+ 1536,
1189
+ "fixed"
1190
+ ],
1191
+ "title": "process_long_side (sampling res cap)"
1192
+ },
1193
+ {
1194
+ "id": 26,
1195
+ "type": "MathExpression|pysssss",
1196
+ "pos": [
1197
+ 920,
1198
+ 610
1199
+ ],
1200
  "size": [
1201
  270,
1202
  100
1203
  ],
1204
  "flags": {},
1205
+ "order": 26,
1206
  "mode": 0,
1207
  "inputs": [
1208
  {
1209
+ "name": "a",
1210
+ "type": "*",
1211
  "link": 37
1212
  },
1213
  {
1214
+ "name": "b",
1215
+ "type": "*",
1216
+ "link": null
 
 
 
 
 
 
 
 
 
 
1217
  },
1218
  {
1219
+ "name": "c",
1220
+ "type": "*",
1221
+ "link": 38
1222
  }
1223
  ],
1224
  "outputs": [
1225
  {
1226
+ "name": "INT",
1227
+ "type": "INT",
1228
+ "links": [],
 
 
1229
  "slot_index": 0
1230
  },
1231
  {
1232
+ "name": "FLOAT",
1233
+ "type": "FLOAT",
1234
  "links": [
1235
+ 40,
1236
+ 42
1237
  ],
1238
  "slot_index": 1
 
 
 
 
 
 
 
 
1239
  }
1240
  ],
1241
  "properties": {
1242
+ "Node name for S&R": "MathExpression|pysssss",
1243
+ "cnr_id": "comfyui-custom-scripts",
1244
+ "ver": "1.0.0"
1245
  },
1246
  "widgets_values": [
1247
+ "min(1, c / max(a.width, a.height))"
1248
+ ],
1249
+ "title": "process scale"
1250
  },
1251
  {
1252
+ "id": 27,
1253
+ "type": "MathExpression|pysssss",
1254
  "pos": [
1255
+ 920,
1256
+ 770
1257
  ],
1258
  "size": [
1259
+ 270,
1260
+ 100
1261
  ],
1262
  "flags": {},
1263
+ "order": 27,
1264
  "mode": 0,
1265
  "inputs": [
1266
  {
1267
+ "name": "a",
1268
+ "type": "*",
1269
+ "link": 39
 
 
 
 
 
1270
  },
1271
  {
1272
+ "name": "b",
1273
+ "type": "*",
1274
+ "link": 40
1275
  },
1276
  {
1277
+ "name": "c",
1278
+ "type": "*",
1279
+ "link": null
1280
  }
1281
  ],
1282
  "outputs": [
1283
  {
1284
+ "name": "INT",
1285
+ "type": "INT",
1286
  "links": [
1287
+ 44,
1288
+ 48
1289
  ],
1290
  "slot_index": 0
1291
+ },
1292
+ {
1293
+ "name": "FLOAT",
1294
+ "type": "FLOAT",
1295
+ "links": [],
1296
+ "slot_index": 1
1297
  }
1298
  ],
1299
  "properties": {
1300
+ "Node name for S&R": "MathExpression|pysssss",
1301
+ "cnr_id": "comfyui-custom-scripts",
1302
+ "ver": "1.0.0"
1303
  },
1304
  "widgets_values": [
1305
+ "round(a.width * b / 16) * 16"
1306
+ ],
1307
+ "title": "work width"
 
 
 
 
 
1308
  },
1309
  {
1310
+ "id": 28,
1311
+ "type": "MathExpression|pysssss",
1312
  "pos": [
1313
+ 920,
1314
+ 930
1315
  ],
1316
  "size": [
1317
  270,
1318
  100
1319
  ],
1320
  "flags": {},
1321
+ "order": 28,
1322
  "mode": 0,
1323
  "inputs": [
1324
  {
1325
+ "name": "a",
1326
+ "type": "*",
1327
+ "link": 41
1328
  },
1329
  {
1330
+ "name": "b",
1331
+ "type": "*",
1332
+ "link": 42
1333
+ },
1334
+ {
1335
+ "name": "c",
1336
+ "type": "*",
1337
+ "link": null
1338
  }
1339
  ],
1340
  "outputs": [
1341
  {
1342
+ "name": "INT",
1343
+ "type": "INT",
1344
  "links": [
1345
+ 45,
1346
+ 49
1347
  ],
1348
  "slot_index": 0
1349
+ },
1350
+ {
1351
+ "name": "FLOAT",
1352
+ "type": "FLOAT",
1353
+ "links": [],
1354
+ "slot_index": 1
1355
  }
1356
  ],
1357
  "properties": {
1358
+ "Node name for S&R": "MathExpression|pysssss",
1359
+ "cnr_id": "comfyui-custom-scripts",
1360
+ "ver": "1.0.0"
1361
  },
1362
+ "widgets_values": [
1363
+ "round(a.height * b / 16) * 16"
1364
+ ],
1365
+ "title": "work height"
1366
  },
1367
  {
1368
+ "id": 29,
1369
  "type": "ImageScale",
1370
  "pos": [
1371
+ 1220,
1372
+ 480
1373
  ],
1374
  "size": [
1375
  270,
1376
  100
1377
  ],
1378
  "flags": {},
1379
+ "order": 29,
1380
  "mode": 0,
1381
  "inputs": [
1382
  {
1383
  "name": "image",
1384
  "type": "IMAGE",
1385
+ "link": 43
1386
  },
1387
  {
1388
  "name": "width",
1389
  "type": "INT",
1390
+ "link": 44,
1391
  "widget": {
1392
  "name": "width"
1393
  }
 
1395
  {
1396
  "name": "height",
1397
  "type": "INT",
1398
+ "link": 45,
1399
  "widget": {
1400
  "name": "height"
1401
  }
 
1406
  "name": "IMAGE",
1407
  "type": "IMAGE",
1408
  "links": [
1409
+ 54
1410
  ],
1411
  "slot_index": 0
1412
  }
 
1422
  512,
1423
  "disabled"
1424
  ],
1425
+ "title": "Downscale for sampling"
1426
  },
1427
  {
1428
+ "id": 30,
1429
+ "type": "MaskToImage",
1430
  "pos": [
1431
+ 1220,
1432
+ 700
1433
  ],
1434
  "size": [
1435
  270,
1436
  100
1437
  ],
1438
  "flags": {},
1439
+ "order": 30,
1440
  "mode": 0,
1441
  "inputs": [
 
 
 
 
 
 
 
 
 
 
1442
  {
1443
  "name": "mask",
1444
  "type": "MASK",
1445
+ "link": 46
1446
  }
1447
  ],
1448
  "outputs": [
 
1450
  "name": "IMAGE",
1451
  "type": "IMAGE",
1452
  "links": [
1453
+ 47
1454
  ],
1455
  "slot_index": 0
1456
  }
1457
  ],
1458
  "properties": {
1459
+ "Node name for S&R": "MaskToImage",
1460
  "cnr_id": "comfy-core",
1461
  "ver": "0.27.0"
1462
  },
1463
+ "widgets_values": []
 
 
 
 
 
1464
  },
1465
  {
1466
+ "id": 31,
1467
+ "type": "ImageScale",
1468
+ "pos": [
1469
+ 1220,
1470
+ 800
1471
+ ],
1472
+ "size": [
1473
+ 270,
1474
+ 100
1475
+ ],
1476
+ "flags": {},
1477
+ "order": 31,
1478
+ "mode": 0,
1479
+ "inputs": [
1480
+ {
1481
+ "name": "image",
1482
+ "type": "IMAGE",
1483
+ "link": 47
1484
+ },
1485
+ {
1486
+ "name": "width",
1487
+ "type": "INT",
1488
+ "link": 48,
1489
+ "widget": {
1490
+ "name": "width"
1491
+ }
1492
+ },
1493
+ {
1494
+ "name": "height",
1495
+ "type": "INT",
1496
+ "link": 49,
1497
+ "widget": {
1498
+ "name": "height"
1499
+ }
1500
+ }
1501
+ ],
1502
+ "outputs": [
1503
+ {
1504
+ "name": "IMAGE",
1505
+ "type": "IMAGE",
1506
+ "links": [
1507
+ 50
1508
+ ],
1509
+ "slot_index": 0
1510
+ }
1511
+ ],
1512
+ "properties": {
1513
+ "Node name for S&R": "ImageScale",
1514
+ "cnr_id": "comfy-core",
1515
+ "ver": "0.27.0"
1516
+ },
1517
+ "widgets_values": [
1518
+ "bilinear",
1519
+ 512,
1520
+ 512,
1521
+ "disabled"
1522
+ ],
1523
+ "title": "Downscale mask"
1524
+ },
1525
+ {
1526
+ "id": 32,
1527
+ "type": "ImageToMask",
1528
+ "pos": [
1529
+ 1220,
1530
+ 960
1531
+ ],
1532
+ "size": [
1533
+ 270,
1534
+ 100
1535
+ ],
1536
+ "flags": {},
1537
+ "order": 32,
1538
+ "mode": 0,
1539
+ "inputs": [
1540
+ {
1541
+ "name": "image",
1542
+ "type": "IMAGE",
1543
+ "link": 50
1544
+ }
1545
+ ],
1546
+ "outputs": [
1547
+ {
1548
+ "name": "MASK",
1549
+ "type": "MASK",
1550
+ "links": [
1551
+ 55
1552
+ ],
1553
+ "slot_index": 0
1554
+ }
1555
+ ],
1556
+ "properties": {
1557
+ "Node name for S&R": "ImageToMask",
1558
+ "cnr_id": "comfy-core",
1559
+ "ver": "0.27.0"
1560
+ },
1561
+ "widgets_values": [
1562
+ "red"
1563
+ ]
1564
+ },
1565
+ {
1566
+ "id": 33,
1567
+ "type": "InpaintModelConditioning",
1568
+ "pos": [
1569
+ 1620,
1570
+ 480
1571
+ ],
1572
+ "size": [
1573
+ 270,
1574
+ 100
1575
+ ],
1576
+ "flags": {},
1577
+ "order": 33,
1578
+ "mode": 0,
1579
+ "inputs": [
1580
+ {
1581
+ "name": "positive",
1582
+ "type": "CONDITIONING",
1583
+ "link": 51
1584
+ },
1585
+ {
1586
+ "name": "negative",
1587
+ "type": "CONDITIONING",
1588
+ "link": 52
1589
+ },
1590
+ {
1591
+ "name": "vae",
1592
+ "type": "VAE",
1593
+ "link": 53
1594
+ },
1595
+ {
1596
+ "name": "pixels",
1597
+ "type": "IMAGE",
1598
+ "link": 54
1599
+ },
1600
+ {
1601
+ "name": "mask",
1602
+ "type": "MASK",
1603
+ "link": 55
1604
+ }
1605
+ ],
1606
+ "outputs": [
1607
+ {
1608
+ "name": "positive",
1609
+ "type": "CONDITIONING",
1610
+ "links": [
1611
+ 57
1612
+ ],
1613
+ "slot_index": 0
1614
+ },
1615
+ {
1616
+ "name": "negative",
1617
+ "type": "CONDITIONING",
1618
+ "links": [
1619
+ 58
1620
+ ],
1621
+ "slot_index": 1
1622
+ },
1623
+ {
1624
+ "name": "latent",
1625
+ "type": "LATENT",
1626
+ "links": [
1627
+ 59
1628
+ ],
1629
+ "slot_index": 2
1630
+ }
1631
+ ],
1632
+ "properties": {
1633
+ "Node name for S&R": "InpaintModelConditioning",
1634
+ "cnr_id": "comfy-core",
1635
+ "ver": "0.27.0"
1636
+ },
1637
+ "widgets_values": [
1638
+ true
1639
+ ]
1640
+ },
1641
+ {
1642
+ "id": 34,
1643
+ "type": "KSampler",
1644
+ "pos": [
1645
+ 1960,
1646
+ 40
1647
+ ],
1648
+ "size": [
1649
+ 310,
1650
+ 260
1651
+ ],
1652
+ "flags": {},
1653
+ "order": 34,
1654
+ "mode": 0,
1655
+ "inputs": [
1656
+ {
1657
+ "name": "model",
1658
+ "type": "MODEL",
1659
+ "link": 56
1660
+ },
1661
+ {
1662
+ "name": "positive",
1663
+ "type": "CONDITIONING",
1664
+ "link": 57
1665
+ },
1666
+ {
1667
+ "name": "negative",
1668
+ "type": "CONDITIONING",
1669
+ "link": 58
1670
+ },
1671
+ {
1672
+ "name": "latent_image",
1673
+ "type": "LATENT",
1674
+ "link": 59
1675
+ }
1676
+ ],
1677
+ "outputs": [
1678
+ {
1679
+ "name": "LATENT",
1680
+ "type": "LATENT",
1681
+ "links": [
1682
+ 60
1683
+ ],
1684
+ "slot_index": 0
1685
+ }
1686
+ ],
1687
+ "properties": {
1688
+ "Node name for S&R": "KSampler",
1689
+ "cnr_id": "comfy-core",
1690
+ "ver": "0.27.0"
1691
+ },
1692
+ "widgets_values": [
1693
+ 0,
1694
+ "fixed",
1695
+ 8,
1696
+ 1.0,
1697
+ "euler",
1698
+ "simple",
1699
+ 1.0
1700
+ ]
1701
+ },
1702
+ {
1703
+ "id": 35,
1704
+ "type": "VAEDecode",
1705
+ "pos": [
1706
+ 2300,
1707
+ 40
1708
+ ],
1709
+ "size": [
1710
+ 270,
1711
+ 100
1712
+ ],
1713
+ "flags": {},
1714
+ "order": 35,
1715
+ "mode": 0,
1716
+ "inputs": [
1717
+ {
1718
+ "name": "samples",
1719
+ "type": "LATENT",
1720
+ "link": 60
1721
+ },
1722
+ {
1723
+ "name": "vae",
1724
+ "type": "VAE",
1725
+ "link": 61
1726
+ }
1727
+ ],
1728
+ "outputs": [
1729
+ {
1730
+ "name": "IMAGE",
1731
+ "type": "IMAGE",
1732
+ "links": [
1733
+ 63
1734
+ ],
1735
+ "slot_index": 0
1736
+ }
1737
+ ],
1738
+ "properties": {
1739
+ "Node name for S&R": "VAEDecode",
1740
+ "cnr_id": "comfy-core",
1741
+ "ver": "0.27.0"
1742
+ },
1743
+ "widgets_values": []
1744
+ },
1745
+ {
1746
+ "id": 36,
1747
+ "type": "UpscaleModelLoader",
1748
+ "pos": [
1749
+ 2640,
1750
+ 200
1751
+ ],
1752
+ "size": [
1753
+ 270,
1754
+ 100
1755
+ ],
1756
+ "flags": {},
1757
+ "order": 36,
1758
+ "mode": 0,
1759
+ "inputs": [],
1760
+ "outputs": [
1761
+ {
1762
+ "name": "UPSCALE_MODEL",
1763
+ "type": "UPSCALE_MODEL",
1764
+ "links": [
1765
+ 62
1766
+ ],
1767
+ "slot_index": 0
1768
+ }
1769
+ ],
1770
+ "properties": {
1771
+ "Node name for S&R": "UpscaleModelLoader",
1772
+ "cnr_id": "comfy-core",
1773
+ "ver": "0.27.0"
1774
+ },
1775
+ "widgets_values": [
1776
+ "RealESRGAN_x4plus.pth"
1777
+ ],
1778
+ "title": "Fill detail restorer"
1779
+ },
1780
+ {
1781
+ "id": 37,
1782
+ "type": "ImageUpscaleWithModel",
1783
+ "pos": [
1784
+ 2640,
1785
+ 320
1786
+ ],
1787
+ "size": [
1788
+ 270,
1789
+ 100
1790
+ ],
1791
+ "flags": {},
1792
+ "order": 37,
1793
+ "mode": 0,
1794
+ "inputs": [
1795
+ {
1796
+ "name": "upscale_model",
1797
+ "type": "UPSCALE_MODEL",
1798
+ "link": 62
1799
+ },
1800
+ {
1801
+ "name": "image",
1802
+ "type": "IMAGE",
1803
+ "link": 63
1804
+ }
1805
+ ],
1806
+ "outputs": [
1807
+ {
1808
+ "name": "IMAGE",
1809
+ "type": "IMAGE",
1810
+ "links": [
1811
+ 64
1812
+ ],
1813
+ "slot_index": 0
1814
+ }
1815
+ ],
1816
+ "properties": {
1817
+ "Node name for S&R": "ImageUpscaleWithModel",
1818
+ "cnr_id": "comfy-core",
1819
+ "ver": "0.27.0"
1820
+ },
1821
+ "widgets_values": [],
1822
+ "title": "Upscale sampled result"
1823
+ },
1824
+ {
1825
+ "id": 38,
1826
+ "type": "ImageScale",
1827
+ "pos": [
1828
+ 2640,
1829
+ 40
1830
+ ],
1831
+ "size": [
1832
+ 270,
1833
+ 100
1834
+ ],
1835
+ "flags": {},
1836
+ "order": 38,
1837
+ "mode": 0,
1838
+ "inputs": [
1839
+ {
1840
+ "name": "image",
1841
+ "type": "IMAGE",
1842
+ "link": 64
1843
+ },
1844
+ {
1845
+ "name": "width",
1846
+ "type": "INT",
1847
+ "link": 65,
1848
+ "widget": {
1849
+ "name": "width"
1850
+ }
1851
+ },
1852
+ {
1853
+ "name": "height",
1854
+ "type": "INT",
1855
+ "link": 66,
1856
+ "widget": {
1857
+ "name": "height"
1858
+ }
1859
+ }
1860
+ ],
1861
+ "outputs": [
1862
+ {
1863
+ "name": "IMAGE",
1864
+ "type": "IMAGE",
1865
+ "links": [
1866
+ 67
1867
+ ],
1868
+ "slot_index": 0
1869
+ }
1870
+ ],
1871
+ "properties": {
1872
+ "Node name for S&R": "ImageScale",
1873
+ "cnr_id": "comfy-core",
1874
+ "ver": "0.27.0"
1875
+ },
1876
+ "widgets_values": [
1877
+ "lanczos",
1878
+ 512,
1879
+ 512,
1880
+ "disabled"
1881
+ ],
1882
+ "title": "Snap to exact target dims"
1883
+ },
1884
+ {
1885
+ "id": 39,
1886
+ "type": "ImageCompositeMasked",
1887
+ "pos": [
1888
+ 2940,
1889
+ 40
1890
+ ],
1891
+ "size": [
1892
+ 270,
1893
+ 100
1894
+ ],
1895
+ "flags": {},
1896
+ "order": 39,
1897
+ "mode": 0,
1898
+ "inputs": [
1899
+ {
1900
+ "name": "destination",
1901
+ "type": "IMAGE",
1902
+ "link": 67
1903
+ },
1904
+ {
1905
+ "name": "source",
1906
+ "type": "IMAGE",
1907
+ "link": 68
1908
+ },
1909
+ {
1910
+ "name": "mask",
1911
+ "type": "MASK",
1912
+ "link": 69
1913
+ }
1914
+ ],
1915
+ "outputs": [
1916
+ {
1917
+ "name": "IMAGE",
1918
+ "type": "IMAGE",
1919
+ "links": [
1920
+ 70
1921
+ ],
1922
+ "slot_index": 0
1923
+ }
1924
+ ],
1925
+ "properties": {
1926
+ "Node name for S&R": "ImageCompositeMasked",
1927
+ "cnr_id": "comfy-core",
1928
+ "ver": "0.27.0"
1929
+ },
1930
+ "widgets_values": [
1931
+ 0,
1932
+ 0,
1933
+ false
1934
+ ],
1935
+ "title": "Paste original pixels back"
1936
+ },
1937
+ {
1938
+ "id": 40,
1939
+ "type": "SaveImage",
1940
  "pos": [
1941
  3240,
1942
  40
 
1946
  300
1947
  ],
1948
  "flags": {},
1949
+ "order": 40,
1950
  "mode": 0,
1951
  "inputs": [
1952
  {
1953
  "name": "images",
1954
  "type": "IMAGE",
1955
+ "link": 70
1956
  }
1957
  ],
1958
  "outputs": [
 
1973
  ]
1974
  },
1975
  {
1976
+ "id": 41,
1977
  "type": "Note",
1978
  "pos": [
1979
  -60,
 
1984
  240
1985
  ],
1986
  "flags": {},
1987
+ "order": 41,
1988
  "mode": 0,
1989
  "inputs": [],
1990
  "outputs": [],
1991
  "properties": {},
1992
  "widgets_values": [
1993
+ "## Outpaint to exact dimensions \u2014 Flux.1 Fill dev + Turbo-Alpha (8 steps)\n\nSet **target_width / target_height** to the EXACT output size you want.\nThe source image is first resized (lanczos) to fit inside the target box,\nthen the remainder is outpainted. Output is always exactly target WxH,\nwith the original pixels composited back untouched.\n\n- **anchor_x**: where the original sits horizontally (0 = left, 0.5 = center, 1 = right)\n- **anchor_y**: same vertically (0 = top, 1 = bottom)\n- **feathering**: seam blend width in px\n\nPurpose-built inpaint/outpaint model, best boundary coherence for\nhard structure and geometry. ~3-6s on an H100. Fill wants HIGH\nguidance (30). Prompt can stay lazy - it reads context from the image.\nAny target size is fine: sampling is capped at process_long_side\n(default 1536) and the fill is restored via RealESRGAN before the\noriginal pixels are composited back at full resolution."
1994
  ],
1995
  "color": "#432",
1996
  "bgcolor": "#653"
 
2287
  ],
2288
  [
2289
  37,
2290
+ 15,
2291
+ 0,
2292
+ 26,
2293
  0,
2294
+ "IMAGE"
2295
+ ],
2296
+ [
2297
+ 38,
2298
  25,
2299
  0,
2300
+ 26,
2301
+ 2,
2302
+ "INT"
2303
+ ],
2304
+ [
2305
+ 39,
2306
+ 15,
2307
+ 0,
2308
+ 27,
2309
+ 0,
2310
+ "IMAGE"
2311
+ ],
2312
+ [
2313
+ 40,
2314
+ 26,
2315
+ 1,
2316
+ 27,
2317
+ 1,
2318
+ "FLOAT"
2319
+ ],
2320
+ [
2321
+ 41,
2322
+ 15,
2323
+ 0,
2324
+ 28,
2325
+ 0,
2326
+ "IMAGE"
2327
+ ],
2328
+ [
2329
+ 42,
2330
+ 26,
2331
+ 1,
2332
+ 28,
2333
+ 1,
2334
+ "FLOAT"
2335
+ ],
2336
+ [
2337
+ 43,
2338
+ 15,
2339
+ 0,
2340
+ 29,
2341
+ 0,
2342
+ "IMAGE"
2343
+ ],
2344
+ [
2345
+ 44,
2346
+ 27,
2347
+ 0,
2348
+ 29,
2349
+ 1,
2350
+ "INT"
2351
+ ],
2352
+ [
2353
+ 45,
2354
+ 28,
2355
+ 0,
2356
+ 29,
2357
+ 2,
2358
+ "INT"
2359
+ ],
2360
+ [
2361
+ 46,
2362
+ 15,
2363
+ 1,
2364
+ 30,
2365
+ 0,
2366
+ "MASK"
2367
+ ],
2368
+ [
2369
+ 47,
2370
+ 30,
2371
+ 0,
2372
+ 31,
2373
+ 0,
2374
+ "IMAGE"
2375
+ ],
2376
+ [
2377
+ 48,
2378
+ 27,
2379
+ 0,
2380
+ 31,
2381
+ 1,
2382
+ "INT"
2383
+ ],
2384
+ [
2385
+ 49,
2386
+ 28,
2387
+ 0,
2388
+ 31,
2389
+ 2,
2390
+ "INT"
2391
+ ],
2392
+ [
2393
+ 50,
2394
+ 31,
2395
+ 0,
2396
+ 32,
2397
+ 0,
2398
+ "IMAGE"
2399
+ ],
2400
+ [
2401
+ 51,
2402
+ 23,
2403
+ 0,
2404
+ 33,
2405
+ 0,
2406
  "CONDITIONING"
2407
  ],
2408
  [
2409
+ 52,
2410
  24,
2411
  0,
2412
+ 33,
2413
  1,
2414
  "CONDITIONING"
2415
  ],
2416
  [
2417
+ 53,
2418
  20,
2419
  0,
2420
+ 33,
2421
  2,
2422
  "VAE"
2423
  ],
2424
  [
2425
+ 54,
2426
+ 29,
2427
  0,
2428
+ 33,
2429
  3,
2430
  "IMAGE"
2431
  ],
2432
  [
2433
+ 55,
2434
+ 32,
2435
+ 0,
2436
+ 33,
2437
  4,
2438
  "MASK"
2439
  ],
2440
  [
2441
+ 56,
2442
  18,
2443
  0,
2444
+ 34,
2445
  0,
2446
  "MODEL"
2447
  ],
2448
  [
2449
+ 57,
2450
+ 33,
2451
  0,
2452
+ 34,
2453
  1,
2454
  "CONDITIONING"
2455
  ],
2456
  [
2457
+ 58,
2458
+ 33,
2459
  1,
2460
+ 34,
2461
  2,
2462
  "CONDITIONING"
2463
  ],
2464
  [
2465
+ 59,
2466
+ 33,
2467
  2,
2468
+ 34,
2469
  3,
2470
  "LATENT"
2471
  ],
2472
  [
2473
+ 60,
2474
+ 34,
2475
  0,
2476
+ 35,
2477
  0,
2478
  "LATENT"
2479
  ],
2480
  [
2481
+ 61,
2482
  20,
2483
  0,
2484
+ 35,
2485
  1,
2486
  "VAE"
2487
  ],
2488
  [
2489
+ 62,
2490
+ 36,
2491
  0,
2492
+ 37,
2493
+ 0,
2494
+ "UPSCALE_MODEL"
2495
+ ],
2496
+ [
2497
+ 63,
2498
+ 35,
2499
  0,
2500
+ 37,
2501
+ 1,
2502
  "IMAGE"
2503
  ],
2504
  [
2505
+ 64,
2506
+ 37,
2507
+ 0,
2508
+ 38,
2509
+ 0,
2510
+ "IMAGE"
2511
+ ],
2512
+ [
2513
+ 65,
2514
  2,
2515
  0,
2516
+ 38,
2517
  1,
2518
  "INT"
2519
  ],
2520
  [
2521
+ 66,
2522
  3,
2523
  0,
2524
+ 38,
2525
  2,
2526
  "INT"
2527
  ],
2528
  [
2529
+ 67,
2530
+ 38,
2531
  0,
2532
+ 39,
2533
  0,
2534
  "IMAGE"
2535
  ],
2536
  [
2537
+ 68,
2538
  15,
2539
  0,
2540
+ 39,
2541
  1,
2542
  "IMAGE"
2543
  ],
2544
  [
2545
+ 69,
2546
  16,
2547
  0,
2548
+ 39,
2549
  2,
2550
  "MASK"
2551
  ],
2552
  [
2553
+ 70,
2554
+ 39,
2555
  0,
2556
+ 40,
2557
  0,
2558
  "IMAGE"
2559
  ]