Coder Social home page Coder Social logo

comfyui-bjornulfnodes's Introduction

πŸ”— Comfyui : Bjornulf_custom_nodes v0.12 πŸ”—

Dependencies

  • pip install ollama (you can also install ollama if you want : https://ollama.com/download) - You don't need to really install it if you don't want to use my ollama node. (BUT you need to run pip install ollama)

πŸ“ Changelog

  • v0.2: Improve ollama node with system prompt + model selection.
  • v0.3: Add a new node : Save image to a chosen folder.
  • v0.3: Add comfyui Metadata / workflow to all my image-related nodes.
  • v0.4: Support transparency option with webm format, options encoders. As well as input for audio stream.
  • v0.5: New node : Remove image transparency (alpha) - Fill alpha channel with solid color.
  • v0.5: New node : Image to grayscale (black & white) - Convert an image to grayscale.
  • v0.6: New node : Combine images (Background + Overlay) - Combine two images into a single image.
  • v0.7: Replace Save API node with Save Bjornulf Lobechat node. (For my custom lobe-chat)
  • v0.8: Combine images : add an option to put image top, bottom or center.
  • v0.8: Combine texts : add option for slashes /
  • v0.8: Add basic node to transform greenscreen in to transparency.
  • v0.9: Add a new node : Return one random line from input.
  • v0.10: Add a new node : Loop (All Lines from input) - Iterate over all lines from an input text.
  • v0.11: Add a new node : Text with random Seed - Generate a random seed, along with text.
  • v0.12: Combine images : Add option to move vertically and horizontally. (from -50% to 150%)

πŸ“ Nodes descriptions

1/2 - πŸ‘ + βœ’ Show/Write Text

Show Text

Description:
Two simple nodes to write and show text. Write node is a textarea where you can write your text.
The show text node will only display the text. (That's why I made it a different color : green, uneditable, display only.)

3 - πŸ”— Combine Texts

Combine Texts

Description:
Combine multiple text inputs into a single output. (can have separation with : comma, space, new line.)

4 - 🎲 Random Text

Random Text

Description:
Generate and display random text from a predefined list. Great for creating random prompts.

5 - β™» Loop

Loop

Description:
General-purpose loop node.

6 - β™» Loop Texts

Loop Texts

Description:
Cycle through a list of text inputs. Great for creating dynamic text-based presentations.

7 - β™» Loop Integer

Loop Integer Loop Int + Show Text

Description:
Iterate through a range of integer values, good for steps in ksampler, etc...

❗ Don't forget that you can convert ksampler widgets to input by right-clicking the ksampler node : Widget to Input

8 - β™» Loop Float

Loop Float Loop Float + Show Text

Description:
Loop through a range of floating-point numbers, good for cfg, denoise, etc...

10 - β™» Loop All Samplers

Loop All Samplers

Description:
Iterate over all available samplers to apply them sequentially. Ideal for testing.

11 - β™» Loop All Schedulers

Loop All Schedulers

Description:
Iterate over all available schedulers to apply them sequentially. Ideal for testing.

12 - β™» Loop Combos

Loop Combos

Description:
Generate a loop from a list of my own custom combinations (scheduler+sampler), or select one combo manually.
Good for testing.

13/14 - πŸ“ + πŸ–Ό Resize and Save Exact name βš οΈπŸ’£

Resize and Save Exact

Description:
Resize an image to exact dimensions. The other node will save the image to the exact path.
βš οΈπŸ’£ Warning : The image will be overwritten if it already exists.

15 - πŸ’Ύ Save Text

Save Text

Description:
Save the given text input to a file. Useful for logging and storing text data.

16 - πŸ–ΌπŸ’¬ Save image for Bjornulf LobeChat (❗For my custom lobe-chat❗)

Save Bjornulf Lobechat

Description:
❓ I made that node for my custom lobe-chat to send+receive images from Comfyui API : lobe-chat
It will save the image in the folder output/BJORNULF_LOBECHAT/. The name will start at api_00001.png, then api_00002.png, etc...
It will also create a link to the last generated image at the location output/BJORNULF_API_LAST_IMAGE.png.
This link will be used by my custom lobe-chat to copy the image inside the lobe-chat project.

17 - πŸ–Ό Save image as tmp_api.png Temporary API βš οΈπŸ’£

Save Temporary API

Description:
Save image for short-term use : ./output/tmp_api.png βš οΈπŸ’£

18 - πŸ–ΌπŸ“ Save image to a chosen folder name

Save Temporary API

Description:
Save image in a specific folder : my_folder/00001.png, my_folder/00002.png, etc...
Also allow multiple nested folders, like for example : animal/dog/small.

19 - πŸ¦™ Ollama

Show Text

Description:
Will generate detailed text based of what you give it.
I recommend using mistral-nemo if you can run it, but it's up to you. (Might have to tweak the system prompt a bit)
⚠️ Warning : Having an ollama node that will run for each generation might be a bit heavy on your VRAM. Think about if you really need it or not.

Description:
Straight forward node to write and show text.

20 - πŸ“Ή Video Ping Pong

Video Ping Pong

Description:
Create a ping-pong effect from a list of images (from a video) by reversing the playback direction when reaching the last frame. Good for an "infinity loop" effect.

21 - πŸ“Ή Images to Video

Images to Video

Description:
Combine a sequence of images into a video file.
❓ I made this node because it supports transparency with webm format. (Needed for rembg)
Temporary images are stored in the folder ComfyUI/temp_images_imgs2video/ as well as the wav audio file.

22 - πŸ”² Remove image Transparency (alpha)

Remove Alpha

Description:
Remove transparency from an image by filling the alpha channel with a solid color. (black, white or greenscreen)
Of course it takes in an image with transparency, like from rembg nodes.
Necessary for some nodes that don't support transparency.

23 - πŸ”² Image to grayscale (black & white)

Image to Grayscale

Description:
Convert an image to grayscale (black & white)
Example : I sometimes use it with Ipadapter to disable color influence.
But you can sometimes also want a black and white image...

24 - πŸ–Ό+πŸ–Ό Combine images (Background + Overlay)

Combine Images

Description:
Combine two images into a single image : a background and one (or several) transparent overlay. (allow to have a video there, just send all the frames and recombine them after.)
Update 0.11 : Add option to move vertically and horizontally. (from -50% to 150%)
❗ Warning : For now, background is a static image. (I will allow video there later too.)

25 - πŸŸ©βžœβ–’ Green Screen to Transparency

Greenscreen to Transparency

Description:
Transform greenscreen into transparency.
Need clean greenscreen ofc. (Can adjust threshold but very basic node.)

26 - 🎲 Random line from input

Random line from input

Description:
Take a random line from an input text. (When using multiple "Write Text" nodes is annoying for example, you can use that and just copy/paste a list from outside.)

27 - β™» Loop (All Lines from input)

Loop input

Description:
Iterate over all lines from an input text. (Good for testing multiple lines of text.)

28 - πŸ”’ Text with random Seed

Description:

❗ This node is used to force to generate a random seed, along with text.
But what does that mean ???
When you use a loop (β™»), the loop will use the same seed for each iteration. (That is the point, it will keep the same seed to compare results.)
Even with randomize for control_after_generate, it is still using the same seed for every loop, it will change it only when the workflow is done.
Simple example without using random seed node : (Both images have different prompt, but same seed)

Text with random Seed 1

So if you want to force using another seed for each iteration, you can use this node in the middle. For example, if you want to generate a different image every time. (aka : You use loop nodes not to compare or test results but to generate multiple images.)
Use it like that for example : (Both images have different prompt AND different seed)

Text with random Seed 2

Here is an example of the similarities that you want to avoid with FLUX with different prompt (hood/helmet) but same seed :

Text with random Seed 3

Here is an example of the similarities that you want to avoid with SDXL with different prompt (blue/red) but same seed :

Text with random Seed 4

FLUX : Here is an example of 4 images without Random Seed node on the left, and on the right 4 images with Random Seed node :

Text with random Seed 5

comfyui-bjornulfnodes's People

Contributors

justumen avatar

Stargazers

 avatar  avatar  avatar  avatar ZRGX avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.