Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Image Editor / Paint Tool #199

Open
ikmalsaid opened this issue Dec 24, 2024 · 6 comments
Open

[Feature Request] Image Editor / Paint Tool #199

ikmalsaid opened this issue Dec 24, 2024 · 6 comments
Labels
needs discussion It's unclear how this issue should be handled new component Adds a new Rio Component

Comments

@ikmalsaid
Copy link

ikmalsaid commented Dec 24, 2024

Description

It would be a great addition to have a built-in image editor and/or paint tool for Stable Diffusion inpainting, etc.

Suggested Solution

Example:
Gradio Image Editor component

Alternatives

No response

Additional Context

No response

Related Issues/Pull Requests

No response

@ikmalsaid ikmalsaid added the enhancement Improves on existing functionality - NOT a new feature label Dec 24, 2024
@mad-moo
Copy link
Contributor

mad-moo commented Dec 24, 2024

Relevant discussion: #168

TLDR: Given how specific this component is, and that requirements in this field change rapidly, I believe this should be a third-party component and published on PyPI separately rather than be added to Rio directly.

@mad-moo mad-moo added new component Adds a new Rio Component needs discussion It's unclear how this issue should be handled and removed enhancement Improves on existing functionality - NOT a new feature labels Dec 24, 2024
@iwr-redmond
Copy link

iwr-redmond commented Dec 27, 2024

Given [...] that requirements in this field change rapidly

Is that assumption correct? The edit functionality from the abandoned DreamStudio, as captured in May 2023 and with reference to the December 2022 FAQ, shows two basic features:

  • Inpainting (mask creation)
  • Outpainting (crop / canvas area selection)

My summary of recent developments in #168 include a note about Black Forest Labs focusing on these two features in their November 2024 feature releases. That's a fair way down the road, and while the underlying technologies have improved, the targeted feature set, and therefore the frontend requirement!, has remained static. The main "change" has been the switch from 512x512 resolution to 1024x1024.

See also Flow issue 12 for an example of real-world end user expectations. The OP does not request a fully-featured Invoke-style canvas, but rather basic inpainting mask capabilities very similar to DreamStudio's functionality a full two years earlier.

@iwr-redmond
Copy link

Given how specific this component is...

Would this be better stated as Rio being primarily focused on displaying or rendering generated content rather than facilitating user input? For example, the MultiLineTextInput component does not have a Markdown style rich text editor.

@iwr-redmond
Copy link

Apologies for multi-posting.

Another approach would be to create an interactive image component similar to NiceGUI that can then be operationalized as an image editor, ideally with an example that shows how this code can be used to create a basic image editor.

@mad-moo
Copy link
Contributor

mad-moo commented Dec 27, 2024

Wouldn't that just be a rio.Image inside of a rio.PointerEventListener?

@iwr-redmond
Copy link

Only if there is drawing functionality. The blank canvas example shows that objects can be created on top of the underlying canvas (or image).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs discussion It's unclear how this issue should be handled new component Adds a new Rio Component
Projects
None yet
Development

No branches or pull requests

3 participants