Spaces:
Build error
Build error
| import streamlit as st | |
| from PIL import Image, ImageFilter | |
| st.title("Simple Image Editor") | |
| st.write("Upload an image to enhance it with filters.") | |
| uploaded_file = st.file_uploader("Choose an image:", type=["jpg", "jpeg", "png"]) | |
| if uploaded_file is not None: | |
| # Read the uploaded image | |
| image = Image.open(uploaded_file) | |
| # Create a sidebar for filter selection | |
| selected_filter = st.sidebar.selectbox("Select a Filter:", ("Original", "Grayscale", "Brightness Adjustment")) | |
| if selected_filter == "Grayscale": | |
| # Apply grayscale filter | |
| filtered_image = image.convert("L") | |
| elif selected_filter == "Brightness Adjustment": | |
| # Add a slider for brightness adjustment | |
| brightness_value = st.sidebar.slider("Brightness", min_value=-100, max_value=100, value=0) | |
| # Apply brightness adjustment (consider using a more robust method) | |
| filtered_image = image.filter(ImageEnhance.Brightness(image).enhance(1.0 + brightness_value / 100.0)) | |
| else: | |
| # Display the original image | |
| filtered_image = image | |
| # Display the original and filtered images | |
| col1, col2 = st.columns(2) | |
| with col1: | |
| st.subheader("Original Image") | |
| st.image(image, width=256) | |
| with col2: | |
| st.subheader(f"{selected_filter} Image") | |
| st.image(filtered_image, width=256) | |
| # Download button for the edited image | |
| if st.button("Download Edited Image"): | |
| with open("edited_image.jpg", "wb") as f: | |
| filtered_image.save(f, "JPEG") | |
| st.success("Image downloaded successfully!") |