image_enhancer / app.py
ai-lover's picture
Update app.py
4d8b67b verified
import streamlit as st
from PIL import Image, ImageEnhance
# Set up the Streamlit app
st.title("Simple Image Editor")
st.write("Upload an image, apply filters, and download your edited image.")
# Image upload
uploaded_file = st.file_uploader("Upload an image", type=["jpg", "jpeg", "png"])
if uploaded_file is not None:
# Open the uploaded image
image = Image.open(uploaded_file)
st.image(image, caption="Original Image", use_column_width=True)
# Filters and adjustments
st.write("### Apply Filters")
# Grayscale
if st.checkbox("Convert to Grayscale"):
image = image.convert("L")
st.image(image, caption="Grayscale Image", use_column_width=True)
# Brightness adjustment
brightness = st.slider("Adjust Brightness", 0.5, 2.0, 1.0)
enhancer = ImageEnhance.Brightness(image)
image = enhancer.enhance(brightness)
st.image(image, caption="Brightness Adjusted Image", use_column_width=True)
# Download edited image
st.write("### Download Edited Image")
edited_image = image
edited_image_format = "JPEG" if uploaded_file.name.endswith(".jpg") or uploaded_file.name.endswith(".jpeg") else "PNG"
edited_image_bytes = edited_image.tobytes()
st.download_button(
label="Download Image",
data=edited_image_bytes,
file_name=f"edited_image.{edited_image_format.lower()}",
mime=f"image/{edited_image_format.lower()}",
)