GithubHelp home page GithubHelp logo

yuanzhongqiao / opendream Goto Github PK

View Code? Open in Web Editor NEW

This project forked from varunshenoy/opendream

0.0 0.0 0.0 33.5 MB

可扩展、易于使用且可移植的扩散 Web UI

License: MIT License

Shell 0.35% JavaScript 58.29% Python 37.11% CSS 1.55% HTML 2.69%

opendream's Introduction

Opendream:适合我们其他人的 Web UI 💭 🎨

Opendream 为您的 Stable Diffusion 工作流程带来了急需且熟悉的功能,例如分层、非破坏性编辑、可移植性和易于编写的扩展。观看我们的演示视频

英雄

入门

  1. 先决条件:确保已安装 Node。你可以在这里下载。
  2. 克隆这个存储库。
  3. 在终端中导航到该项目并运行sh ./run_opendream.sh.大约 30 秒后,Opendream 系统的前端和后端都应该启动并运行。

特征

扩散模型已成为图像生成和操作领域的强大工具。虽然它们提供了显着的好处,但由于其固有的复杂性,这些模型通常被视为黑匣子。当前的扩散图像生成生态系统是由允许一次性图像处理任务来控制这些模型的工具定义的 - text2img、in-painting、pix2pix 等。

例如,Automatic1111MidjourneyStability.AI 的 DreamStudio等流行界面仅支持破坏性编辑:每次编辑都会“消耗”前一个图像。这意味着用户无法轻松地利用以前的图像或在同一张图像上运行多个实验,从而限制了他们的创造性探索的选择。

分层和无损编辑

非破坏性编辑是一种图像处理方法,它保留原始图像数据,同时允许用户进行调整和修改,而不会覆盖以前的工作。这种方法有助于实验,并通过使用图层和蒙版提供对编辑过程的更多控制。删除图层时,该图层之后的所有图层也会被删除。这保证了画布上当前的所有图层都是其他现有图层的产物。这还允许人们确定性地“重放”工作流程。

与 Photoshop 一样,Opendream 支持开箱即用的非破坏性编辑。在此处了解有关 Photoshop 中无损编辑原理的更多信息。

层数

保存和共享工作流程

用户还可以将当前的工作流程保存为便携式文件格式,以便稍后打开或与协作者共享。在这种情况下,“状态”只是一个描述所有当前层及其创建方式的 JSON 文件。

工作流程

支持简单编写、易于安装的扩展

随着开源生态系统围绕这些模型和工具蓬勃发展,可扩展性也成为一个主要问题。虽然Automatic1111确实提供了扩展,但它们通常难以编程、使用和安装。它远没有像 Adob​​e Photoshop 这样的应用程序功能齐全。

随着 ControlNet 等稳定扩散的新功能的发布,用户应该能够以最少的过载和时间将它们无缝集成到他们的艺术工作流程中。

Opendream 使编写和使用新的扩散功能就像编写 Python 函数一样简单。继续阅读以了解如何操作。

扩展

从一开始,Opendream 支持核心系统中的两个关键原始操作:dreammask_and_inpaint。在此存储库中,提供了instruct_pix2pixcontrolnet_cannycontrolnet_openposesam(Segment Anything)的扩展。

任何图像处理逻辑都可以轻松地编写为扩展。通过扩展,您还可以决定某些操作的工作方式。例如,您可以覆盖该dream操作以改用 OpenAI 的 DALL-E,或者调用 AWS 或 Replicate 等服务上的无服务器端点。这是使用 Baseten 的示例

加载现有扩展

有两种加载扩展的方法。

  1. 通过 Web UI 安装预先编写的版本。
  2. (手动)下载有效的扩展文件(或自己编写一个!)并将其添加到opendream/extensions文件夹中。下面是编写您自己的扩展的说明。

以下是当前支持的扩展的示例。您可以使用这些链接通过 Web UI 安装任何给定的扩展。

扩大 关联
OpenAI 的 DALL-E 文件
无服务器稳定扩散 文件
指导 Pix2Pix 文件
控制网 Canny 文件
ControlNet Openpose 文件
分割任何东西 文件
PhotoshopGPT 要旨

请注意,扩展可能有自己的要求,您需要将其包含在requirements.txt文件中。例如,openai如果您想使用 DALL-E 扩展,则需要添加。

如果您创建了一个有用的扩展,请随意制作 PR!

编写您自己的扩展

用户可以编写自己的扩展,如下所示:

  1. 在文件夹中创建一个新的 Python 文件opendream/extensions
  2. 编写一个带有类型提示和装饰器的方法@opendream.define_op。该装饰器向 Opendream 后端注册该方法。

该方法有几个要求:

  • 参数必须有类型提示。这些使后端能够为输入生成模式,该模式被解析为前端的表单组件。有效类型包括:strintfloatLayerMaskLayerImageLayer
  • 唯一有效的返回类型是对象Layer或对象列表Layer

贡献和许可

Opendream 由 Varun Shenoy、Eric Lou、Shashank Rammoorthy 和 Rahul Shiv 构建,作为斯坦福大学CS 348K的一部分。

请随意提供您认为必要或有用的任何贡献。该项目已获得 MIT 许可证的许可。

opendream's People

Contributors

varunshenoy avatar ericzlou avatar shashank2000 avatar yuanzhongqiao avatar eltociear avatar nazihkalo avatar rshiv2 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.