gilrmdhn commited on
Commit
8bc65c5
·
verified ·
1 Parent(s): 4336de4

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -12
app.py CHANGED
@@ -7,34 +7,34 @@ import io
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()
 
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
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.seek(0) # Kembali ke awal stream
32
+
33
+ return img_byte_arr # Gradio akan menangani ini sebagai file gambar
34
 
35
+ # Interface
36
  gr.Interface(fn=convert_to_sketch,
37
  inputs="image",
38
+ outputs=gr.Image(type="pil"),
39
  title="Konversi gambar ke sketsa",
40
  description="Unggah gambar dan dapatkan versi sketsa dalam format JPG").launch()