gilrmdhn commited on
Commit
4336de4
·
verified ·
1 Parent(s): 13d1868

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +40 -31
app.py CHANGED
@@ -1,31 +1,40 @@
1
- import gradio as gr
2
- import cv2
3
- import numpy as np
4
- from PIL import Image
5
-
6
- def convert_to_sketch(image):
7
- img = np.array(image)
8
-
9
- #ubah gambar ke grayscale
10
- gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
11
-
12
- #inversi warna
13
- inverted_image = cv2.bitwise_not(gray_image)
14
-
15
- #terapkan gaussian blur
16
- blurred = cv2.GaussianBlur(inverted_image, (21, 21), sigmaX=0, sigmaY=0)
17
-
18
- #inversi hasil blur
19
- inverted_blurred = cv2.bitwise_not(blurred)
20
-
21
- #buat sketsa
22
- sketch = cv2.divide(gray_image, inverted_blurred, scale=256.0)
23
-
24
- return sketch
25
-
26
- #interface
27
- gr.Interface(fn=convert_to_sketch,
28
- inputs="image",
29
- outputs="image",
30
- title="Konversi gambar ke sketsa",
31
- description="Unggah gambar dan dapatkan versi sketsa").launch()
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import cv2
3
+ import numpy as np
4
+ from PIL import Image
5
+ import io
6
+
7
+ def convert_to_sketch(image):
8
+ img = np.array(image)
9
+
10
+ #ubah gambar ke grayscale
11
+ gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
12
+
13
+ #inversi warna
14
+ inverted_image = cv2.bitwise_not(gray_image)
15
+
16
+ #terapkan gaussian blur
17
+ blurred = cv2.GaussianBlur(inverted_image, (21, 21), sigmaX=0, sigmaY=0)
18
+
19
+ #inversi hasil blur
20
+ inverted_blurred = cv2.bitwise_not(blurred)
21
+
22
+ #buat sketsa
23
+ sketch = cv2.divide(gray_image, inverted_blurred, scale=256.0)
24
+
25
+ # Konversi sketsa menjadi gambar PIL dan simpan sebagai JPG
26
+ pil_image = Image.fromarray(sketch)
27
+
28
+ # Menyimpan gambar dalam format jpg
29
+ img_byte_arr = io.BytesIO()
30
+ pil_image.save(img_byte_arr, format="JPEG")
31
+ img_byte_arr = img_byte_arr.getvalue()
32
+
33
+ return img_byte_arr
34
+
35
+ #interface
36
+ gr.Interface(fn=convert_to_sketch,
37
+ inputs="image",
38
+ outputs="image",
39
+ title="Konversi gambar ke sketsa",
40
+ description="Unggah gambar dan dapatkan versi sketsa dalam format JPG").launch()