import streamlit as st from PIL import Image, ImageEnhance # Set app title st.title("Simple Image Editor") # Sidebar for navigation st.sidebar.header("Upload and Edit Your Image") # File uploader uploaded_image = st.sidebar.file_uploader("Upload an image", type=["png", "jpg", "jpeg"]) if uploaded_image: # Display the uploaded image image = Image.open(uploaded_image) st.image(image, caption="Uploaded Image", use_column_width=True) st.write("### Adjust Filters") # Grayscale filter if st.checkbox("Apply Grayscale"): image = image.convert("L") st.image(image, caption="Grayscale Image", use_column_width=True) # Brightness adjustment brightness = st.slider("Adjust Brightness", 0.1, 3.0, 1.0) enhancer = ImageEnhance.Brightness(image) image = enhancer.enhance(brightness) st.image(image, caption="Brightness Adjusted Image", use_column_width=True) # Download the edited image st.write("### Download Edited Image") edited_image = st.sidebar.button("Download") if edited_image: img_format = "PNG" if uploaded_image.name.endswith(".png") else "JPEG" image.save("edited_image." + img_format.lower(), format=img_format) with open("edited_image." + img_format.lower(), "rb") as file: btn = st.download_button( label="Download Edited Image", data=file, file_name="edited_image." + img_format.lower(), mime="image/" + img_format.lower() )