File size: 1,534 Bytes
71188a4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
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()
            )