|
import streamlit as st |
|
from diffusers import StableDiffusionPipeline |
|
import torch |
|
from PIL import Image |
|
|
|
|
|
model_id = "CompVis/stable-diffusion-v1-4" |
|
pipe = StableDiffusionPipeline.from_pretrained(model_id) |
|
|
|
|
|
pipe = pipe.to("cuda" if torch.cuda.is_available() else "cpu") |
|
|
|
|
|
st.title("Text-to-Image Generation using Stable Diffusion") |
|
|
|
|
|
prompt = st.text_input("Enter a prompt to generate an image:", value="A futuristic city skyline at sunset") |
|
|
|
|
|
if st.button("Generate Image"): |
|
with st.spinner("Generating image..."): |
|
|
|
image = pipe(prompt).images[0] |
|
|
|
|
|
st.image(image, caption="Generated Image", use_column_width=True) |
|
|
|
|
|
output_path = "generated_image.png" |
|
image.save(output_path) |
|
st.success(f"Image saved as {output_path}") |
|
|
|
|