sketchimage / app.py
gilrmdhn's picture
Update app.py
b9edeeb verified
raw
history blame contribute delete
922 Bytes
import gradio as gr
import cv2
import numpy as np
from PIL import Image
import os
def convert_to_sketch(image):
img = np.array(image)
gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
inverted_image = cv2.bitwise_not(gray_image)
blurred = cv2.GaussianBlur(inverted_image, (21, 21), sigmaX=0, sigmaY=0)
inverted_blurred = cv2.bitwise_not(blurred)
sketch = cv2.divide(gray_image, inverted_blurred, scale=256.0)
sketch_image = Image.fromarray(sketch)
output_path = "sketch_result.png"
sketch_image.save(output_path)
return sketch_image, output_path
# Interface
gr.Interface(
fn=convert_to_sketch,
inputs="image",
outputs=[
gr.Image(label="Pratinjau Sketsa"),
gr.File(label="Unduh Gambar Sketsa")
],
title="Konversi gambar ke sketsa",
description="Unggah gambar dan dapatkan versi sketsa sebagai pratinjau dan file unduhan"
).launch()