shashank1024's picture
Update app.py
40df648 verified
from PIL import Image, ImageFilter, ImageOps
import gradio as gr
def apply_blur(image):
return image.filter(ImageFilter.BLUR)
def apply_invert(image):
return ImageOps.invert(image.convert("RGB"))
def apply_sharpen(image):
return image.filter(ImageFilter.SHARPEN)
def apply_black_white(image):
return image.convert("L") # Convert to grayscale (black & white)
def apply_filter(image, filter_type):
if filter_type == 'blur':
return apply_blur(image)
elif filter_type == 'invert':
return apply_invert(image)
elif filter_type == 'sharpen':
return apply_sharpen(image)
elif filter_type == 'black & white':
return apply_black_white(image)
else:
return image
def run_interface():
filter_choices = ['blur', 'invert', 'sharpen', 'black & white']
interface = gr.Interface(
fn=apply_filter,
inputs=[gr.Image(type='pil'),
gr.Dropdown(filter_choices, label='Select Filter')],
outputs=gr.Image(type='pil')
)
return interface
iface = run_interface()
iface.launch()