Files
MaraScott-ComfyUI_MaraScott…/__build__.py
MaraScottandhaohaocreates 28282c8e52 Add tile prompting editor in McBoaty v4 (#94)
* Create README.md

* Hotfix image and mask output

* Update README.md

* Change architecture and start doc how to

* improve bus_fn function to be more dynamic & start web js files

* updae version to 1.1.0

* Initiate web extra menu node

* minor change in MANIFEST

* Move pythong base node to js

* inprogress refactorization of bus node in js

* attempt to assign in and out put - failed

* last attempt to make the node work via JS

* Implement py + js bus

* add back options menu

* update to latest attempt to pass dynamic entries through py node

* Initialize use of api to pass entries

* achieve to pass dynamic var to py node

* start implement profile - attempt 1

* implement proper profile system and identify node id on execution to apply proper profile

* stuck to continue as long as no node id available in bus_fn function

* modify id index

* add profile management on a node base

* remove console.log

* refactoring to appreciate better the execution order within the code

* todo troubleshoot the creation of none id json file

* hotfix empty node on creation

* fix some issues with add/remove inputs

* hotfix img in readme

* remove some useless console.log

* add stable universal bus node

* move busnode to universalbusnode

* add back classic BusNode and convert classname to Universal Bus Node for the dynamic one

* Deactivate UniversalBus and activate Bus and Pipe Basic Node - Bus is not working for some reason

* Add back UniversalBus try to debug the cache

* Merging regular PY Node with JS Node

* Add Bus + Pipe Basic node

* Add Details to build Detailer Pipe

* release of obsolete Bus_node + UniversalBusNode (py)

* Add AnyBusNode and change Helper Class for LiteGraphe in js

* keep developping the AnyBus by Implementing UniversalBus features

* Add synchronized inputs across all node of same default profile

* integrating previousInputName feature

* Implement Node Input Name Management on connect/disconnect

* set initial input to 15

* Implementation for nodeflowsync by profile - next implementation for profile widget to make the whole system work

* in process to assign profile name accross nodes of same flow

* fix profile management

* improving bus assignment based on profile - next make sure disconnected bus sync correctly

* fix input connect/disconnect population to same profile flow

* reach MVP to deliver

* switch widget number to combo

* quickfix

* Add support for Reroute type node in bus

* hotfix on support for reroute

* update a bit before testing why 2 links are addded on 1 connection

* hotfix syncNodes

* add normal workflow for issue 17

* link pass to null on reload

* default is now any not none

* improve non MarasitAnyBusNode node management (reroute)

* Deactivate the code on Initial load

* revert 18c9dad7f7

* update readme for delivery, update max input number, update web flow to hotfix initial load from dnd flow

* Update some doc and version number

* Update some doc and version number

* enable to keep previous input setup on bus disconnect + add a clean button to reset unconnected input

* rename stuff for easier reading and add a refresh feature when cleaning

* hotfix refresh system for monoflow

* fix multiflow sync + allow only full sync

* fix profile name in flows which share same profile name but are no more connected

* fix input cleaning on multiflow

* add a cleaned label when cleaned

* fix overall cleaning process

* add console log if 2 flows have same names

* add console log if 2 flows have same names

* keep input/output on bus disconnect

* Update README.md

* Refactorize Js AnyBusNode

* Update Extension Name

* define all class as static class

* update how to retrieve and update flows

* clean sync process, add reroute node support

* Clean the custom node from previous code

* remove Native Reroute and pysssss Reroute from supported Reroute node

* hotfix for input removed even if used as output

* Update readme

* Update version number

* Update version number to avoid syntax error

* Add support for Get/Set node

* Add support for Get/Set node

* hotfix setNode issue

* Initiate Upscaler and add DisplayInfo node

* Beta test on Upscale node

* Beta test on Upscale node

* Beta test on Upscale node

* Beta test on Upscale node

* remove McBoaty

* add back Image class

* add back Image class

* hotfix rebuild_image_from_parts

* hotfix rebuilding image

* Implement the upscaling on a per grid image basis

* initiate applyin mask to grid image

* Upply mask to image

* add blank mask

* finalize the mask application

* add ksampler

* Set default value

* Update output

* Set default value

* Update Marasit_Nodes.py

* Update and rename UpscalerGridNode.py to UpscalerRefinerNode.py

* Update README.md

* hotfix node class name

* increase version number

* Implement VAEEncode/DecodeTiled

* Implement VAEEncode/DecodeTiled

* clean code

* clean code

* clean code

* clean code

* Add Sigmas_type management

* Update Version

* add AYS Scheduler

* Add log indicator for starting and finishing the McBoaty process

* add version to info + tiled condition

* add old Ksampler

* hotfix slow node

* hotfix slow node

* no hotfix for slow node

* Hotfix slowliness

* Improve log display

* Increment Version

* Update README.md

* hotfix anybus.js

* Add size feature, hidden iteration mecanism, log improvment

* Implement Version Number for nodes

* Implement McBoaty V2

* apply new grid system to Refiner

* apply new grid system to Refiner

* dynaminze the 16 grid & bring back the feather

* hotfix on grid16

* Add tiled images as output

* Update README.md

* Update README.md

* Update README.md

* Update MarasIT to MaraScott

* Update MarasIT to MaraScott

* update workflow png images

* add some more explaination to profile setting of bus node

* update version to 4.0.0

* not supported ControNet

* initiate node

* Add ComfyUI_LayerStyle dependencies

* add Was and Impact dependencies

* Update WAS dep

* Update WAS dep CONSTANT

* Update WAS - in progress

* Update inpainting process for masked area

* update noise_inpaint image

* add ImagePaste

* Update Inpainting Node to become 2 node steps

* integrate second node for inpaintingBymask

* integrate second node for inpaintingBymask

* integrate second node for inpaintingBymask

* integrate second node for inpaintingBymask

* Update V4.1.0

* Hotfix prompt on second node for inpainting (#58)

* Hotfix inpainting paste by mask (#61)

* Hotfix prompt on second node for inpainting

* Improve pasteByMask

* Improve pasteByMask

* Hotfix missing requirements.txt (#63)

* Hotfix prompt on second node for inpainting

* Improve pasteByMask

* Improve pasteByMask

* add requirements

* Feature node inpainting - beta test (#64)

* hotifx class conflict + add TokenCounter from ComfyUI-JNodes

* nodes maintenance - remove deprecated

* node maintenance hotfix + Kijai TokenCounter Node

* hotfix inpainting paste

* refactorize node to more OOP style

* remove deprecated node

* refactorize code

* apply correct mask to paste node but the source is not correct

* apply correct source

* apply correct source

* hotfix tile size and paste position

* hotfix paste by mask

* hotfix paint in noise blend

* initiate code for auto masking

* node inpainting beta version

* node inpainting beta version

* Feature node inpainting (#65)

* hotifx class conflict + add TokenCounter from ComfyUI-JNodes

* nodes maintenance - remove deprecated

* node maintenance hotfix + Kijai TokenCounter Node

* hotfix inpainting paste

* refactorize node to more OOP style

* remove deprecated node

* refactorize code

* apply correct mask to paste node but the source is not correct

* apply correct source

* apply correct source

* hotfix tile size and paste position

* hotfix paste by mask

* hotfix paint in noise blend

* initiate code for auto masking

* node inpainting beta version

* node inpainting beta version

* node inpainting beta version

* Feature node inpainting (#66)

* hotifx class conflict + add TokenCounter from ComfyUI-JNodes

* nodes maintenance - remove deprecated

* node maintenance hotfix + Kijai TokenCounter Node

* hotfix inpainting paste

* refactorize node to more OOP style

* remove deprecated node

* refactorize code

* apply correct mask to paste node but the source is not correct

* apply correct source

* apply correct source

* hotfix tile size and paste position

* hotfix paste by mask

* hotfix paint in noise blend

* initiate code for auto masking

* node inpainting beta version

* node inpainting beta version

* node inpainting beta version

* add padding to grow mask in pastInpaint

* add padding to grow mask in pastInpaint

* Add refiner to McInpainty

* Add refiner to McInpainty

* Feature Add Dynamic Tiling (#68)

* update McBoaty to more OOP approach

* Apply a refiner after upscaling + start dynamicaly define the number of tiles to refine

* refactoring and upgrading the grid system to be dynamic

* update grid system to order properly tile

* add inpainting vae encode

* Upgrade McBoaty to work with Dynamic Tiling for 4 tiles

* Correct rebuild system for dynamic tiling

* Hotfix tile assignment

* apply dynamiztion if the grid cutting sequence to retrieve the entire image and not only part of it

* removed middle tiles to identify issues, the tiles seems a little bit bigger than expected

* pursuing hotfix

* improving reinsertion of tiles in the grid

* fix image distribution

* fix feather display

* create McBoatyV3

* create McBoatyV3

* hotfix McBoatyV2

* hotfix mono image tile

* add McBoaty v3 + refactorize MS_image code for Version compatibility and modifying import

* Update code to allow Version for inc file MS_Image and MS_Mask

* Improve tile upscaling adding an extra feather on the left side or top side

* Update grid slicing to allow all type of ratio

* revise get_grid_image in case tile do not match original image size

* update rebuild process to handle any ratio images

* update to handle any ratio in image rebuilding process

* update outpainting sigmas denoise value to get image from outpainting

* revert to previous version of get_grid_images + hotfix on coordinate

* Add pyproject.toml for Custom Node Registry (#56)

* chore(pyproject): Add pyproject.toml for Custom Node Registry

* Update pyproject.toml

---------

Co-authored-by: MaraScott <david.asquiedge@marascott.ai>

* chore(publish): Add Github Action for Publishing to Comfy Registry (#55)

* Update pyproject.toml (#69)

* Update pyproject.toml (#70)

* add LICENSE

* Hotfix mc boaty v3 (#71)

* hotfix to match UltimateSDUpscale field distribution and to fix bug if feather at 0

* update registry

* update registry for dependencies (#72)

* Hotfix registrylogo (#73)

* update registry for dependencies

* Update logo

* Add colorMatch to McBoaty (#74)

* Feature color match (#75)

* Add vendor KJNodes file

* Add vendor KJNodes file

* Add vendor KJNodes file

* Feature update color match default option (#76)

* add tile size for VAE

* add tile size for VAE

* remove tile size for vae, add none option for colorMatching

* remove tile size for vae to switch back to regular tile size

* fix the SD1 AYS model assignment (#77)

* Hotfix ays model type (#78)

* fix the SD1 AYS model assignment

* fix the SD1 AYS model assignment

* Feature mcboaty llm + new node McPrompty (#79)

* Update McBoaty Upscale Mechanism + add Per Tile Prompting generation + add new node to generate prompt from image

* hotfix llm vision name calling

* hotfix output size upscaling

* hotfix tiles order and execution duration display as int

* hotfix tiles order display and default llm model

* hotfix display index + default LLM Models list

* hotfix McPrompty name

* hotfix McPrompty name

* hotfix prestartup_script

* hotfix readme on tile prompting

* Hotfix multiratio upscale (#81)

* Update McBoaty Upscale Mechanism + add Per Tile Prompting generation + add new node to generate prompt from image

* hotfix llm vision name calling

* hotfix output size upscaling

* hotfix tiles order and execution duration display as int

* hotfix tiles order display and default llm model

* hotfix display index + default LLM Models list

* hotfix McPrompty name

* hotfix McPrompty name

* hotfix prestartup_script

* hotfix readme on tile prompting

* initiate square tiling + slicing after upscale

* squarify tiles for ksampling

* initiate forced square refining

* hotfix slicing tiles

* hotfix slicing tiles

* hotfix slicing tiles

* Implementing squared tiles upscaling

* hotfix xy coordinate crop if input file too small

* Hotfix llm prompt log (#82)

* hotfix prompt log issue

* hotfix prompt log issue

* Hotfix is divisible by 8 (#84)

* hotfix is_divisible_by_8

* hotfix is_divisible_by_8

* add McBoaty V4 2 node system

* add McBoaty TilePrompter

* ignore models in repo

* ignore models in repo

* add back vision, add florence-2, initiate prompt editor

* add dynamic js inputs

* Update Js for TilePrompter

* introduce the cache system

* add cache and api call

* make work api call

* integrate pickle cache file system

* Improve tile prompting cache management

* prepare next phase

* move params to refiner

* tiled prompts and tile ksampling override added

* some housekeeping

* Add McBoaty v4 and upgrade version

* add wf for McBoaty v4

---------

Co-authored-by: haohaocreates <162922985+haohaocreates@users.noreply.github.com>
2024-07-01 12:21:59 +02:00

5 lines
52 B
Python

#!/usr/bin/env python3
# -*- coding:utf-8 -*-
#
###