Spaces:
Sleeping
Sleeping
| 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()}", | |
| ) |