File size: 769 Bytes
4336de4
 
 
 
 
 
acef206
4336de4
acef206
 
4336de4
acef206
 
4336de4
acef206
 
4336de4
acef206
 
4336de4
acef206
 
4336de4
acef206
4336de4
acef206
4336de4
 
acef206
4336de4
acef206
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
import gradio as gr
import cv2
import numpy as np
from PIL import Image

def convert_to_sketch(image):
  img = np.array(image)

  #ubah gambar ke grayscale
  gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

  #inversi warna
  inverted_image = cv2.bitwise_not(gray_image)

  #terapkan gaussian blur
  blurred = cv2.GaussianBlur(inverted_image, (21, 21), sigmaX=0, sigmaY=0)

  #inversi hasil blur
  inverted_blurred = cv2.bitwise_not(blurred)

  #buat sketsa
  sketch = cv2.divide(gray_image, inverted_blurred, scale=256.0)

  return sketch

#interface
gr.Interface(fn=convert_to_sketch,
            inputs="image",
            outputs="image",
            title="Konversi gambar ke sketsa",
            description="Unggah gambar dan dapatkan versi sketsa").launch()