## ALGORITMA NON-PHOTOREALISTIC RENDERING UNTUK KARTUN MENGGUNAKAN K-MEANS DAN CANNY

## Non-Photorealistic Rendering Algorithm for Cartoons Using K-Means and Canny
Budiman Baso 1) Irit Maulana Sapta 2) Saniyatul Mawaddah 3)
1) Program Studi Teknologi Informasi, Fakultas Pertanian, Universitas Timor Jl. Km. 09, Kelurahan Sasi, Kecamantan Kota Kefamemanu, TTU, NTT, 85613
2) Semesta Bilingual Boarding School Semarang Jl. Setia Budi No.116, Srondol Kulon, Kec. Banyumanik, Kota Semarang, Jawa Tengah 50269
3) Program Studi D3 Teknik Informatika PSDKU Lamongan, Departemen Informatika, PENS Jl. Panglima Sudirman, No.125 Lamongan, Jawa Timur 62212
Copyright  ©2021, JITU,  Submitted: 29 Desember  2020; Revised: 06 Januari  2021; Accepted: 03 Februari 2021;

## Published: 01 Maret 2021
Abstract - Cartoons are one type of illustration usually in a non-realistic or semi-realistic style. To make a cartoon drawing manually requires good drawing ability. So, not everyone can make cartoons. This research proposes a non-photorealistic rendering algorithm to create cartoon drawings automatically. The algorithm consists of four phases. First, create an image abstraction using bilateral filtering. Second, using kmeans clustering for abstract image quantization. Third, get the contour lines of the drawing using the canny algorithm. Fourth, contour lines and quantized images are combined. The results show that this algorithm can produce good visualization of cartoon images.
Keywords - non photorealistic rendering, cartoon, quantization, canny.
Abstrak - Kartun adalah salah satu tipe dari ilustrasi biasanya dalam gaya non-realistis atau semi-realistis. Untuk membuat gambar kartun secara manual dibutuhkan kemampuan menggambar yang baik. Jadi, tidak semua orang dapat membuat gambar kartun. Penelitian ini mengajukan suatu algoritma Non-Photorealistic Rendering untuk membuat gambar kartun secara otomatis. Algoritma ini terdiri dari empat fase. Pertama, membuat abstraksi gambar menggunakan bilateral filtering. Kedua, menggunakan kmeans clustering untuk kuantisasi gambar abstrak. Ketiga, mendapatkan garis kontur dari gambar menggunakan algoritma canny. Keempat, garis kontur dan gambar terkuantisasi digabungkan. Hasilnya menunjukkan bahwa algoritma ini dapat menghasilkan visualisasi gambar kartun yang  baik.
Kata kunci - non photorealistic rendering, gambar kartun, kuantisasi warna, deteksi tepi canny.

## I. P ENDAHULUAN
Non  Photorealistic  Rendering (NPR)  adalah  teknik dalam  memanipulasi  sebuah  citra  atau  gambar  realis menjadi  tidak  realis,  dapat  menciptakan  sebuah  citra yang  berbeda  dari  aslinya.  Render non-fotorealistik mengacu pada penggunaan komputer yang menghasilkan gambar non-fotorealistis dengan teknologi grafis (Lu et al.,  2013). Non-Photorealistic  Rendering (NPR) merupakan  bidang computer graphic yang fokus pada berbagai  kemungkinan  gaya  ekspresif  untuk  digital  art yang  terinspirasi  oleh  gaya  artistik  seperti  melukis, menggambar  dan  animasi  kartun. Non  Photorealistic Rendering (NPR)  juga  di  terapkan  dalam  film,  video game,  ilustrasi  arsitektur,  dan  animasi  eksperimental dalam  bentuk  toon  shading  atau  arsiran  kartun  (Kang, Lee  and  Chui,  2007). Non  Photorealistic  Rendering (NPR)  adalah  teknik  untuk  memanipulasi  sebuah  citra atau  gambar  realis  menjadi  tidak  realis,  dapat
menciptakan  sebuah  citra  yang  berbeda  dari  aslinya (Rosyidi et al., 2013).
Dalam  menghasilkan  efek  kartun  pada  citra  dengan menggunakan  teknik Non-Photorealistic Rendering (NPR),  algoritma  yang  di  gunakan  merupakan  aspek penting  dalam  mendapatkan  hasil  dengan  karakter estetika seni dan visualisasi yang lebih baik. Pada penelitian rendering kartun yang telah ada misalnya, (Lu  et  al.,  2013)  mengabstraksi  gambar  melalui  filter bilateral,  selanjutnya  mentransfer  ruang  warna  dari gambar  yang  diabstraksikan  dari  RGB  ke  Lαβ, mengekstraksi informasi pencahayaan dari saluran L dan melakukan pemrosesan terkuantisasi, dan menggabungkan saluran luminance terkuantisasi dengan saluran  α  dan  saluran  β,  sehingga  memperoleh  gambar terkuantisasi.  Terakhir,  filter  FDOG  digunakan  untuk mengekstrak  kontur  gambar  yang  kontinyu  dan  halus, gambar  yang  telah  dikuantifikasi  dan  gambar  kontur disatukan untuk menghasilkan gambar kartun.
(Kang,  Lee  and  Chui,  2007)  menyajikan  teknik rendering  non  fotorealistik  yang  secara  otomatis memberikan  abstraksi  bergaya  dari  sebuah  citra.
*) Penulis Korespondensi ( Budiman Baso)
Email: budimanbaso@gmail.com
Pendekatannya  didasarkan  pada  bentuk  /  filter  warna yang dipandu oleh bidang vektor yang menggambarkan aliran  fitur  yang  menonjol  dalam  gambar.  Aliran  ini berbasis  filter  secara  signifikan  meningkatkan  kinerja abstraksi  dalam  hal  peningkatan  fitur  dan  stilisasi. Metode  ini  sederhana  dan  mudah  diimplementasikan. Hasil  eksperimen  menunjukkan  efektivitas  metode  ini dalam menghasilkan gaya dan peningkatan fitur ilustrasi dari foto.
(Guastella  and  Valenti,  2016)  menjelaskan  filter kartun melalui adaptive abstraction, metodologi abstraksi sederhana  namun  efektif  yang  dibuat  oleh  pipeline. Gagasan  yang  mendasari  algoritma  yang  diusulkan terdiri  dalam  mengidentifikasi  tepi,  dengan  redundant wavelet  transform,  dan  dalam  mengaburkan  bagian- bagian  dalam  komponen  digunakan  adaptive  cir-cular median  filter.  Hasil  filter  kartun  melalui  adaptive abstraction  yang  didapatkan  dari  eksperimen  ini  cukup baik.
Berdasarkan  karakteristik  gambar  kartun,  pada penelitian ini gambar input diabstraksikan melalui filter bilateral  terlebih  dahulu  untuk  mendapatkan  kenaikan kontras.  Langkah  kedua  gambar  yang  telah diabstraksikan  lalu  distilisasi  (proses  pengolahan  yang mengarah  pada  bentuk  yang  indah)  dengan  kuantisasi warna yang lebih halus dengan menggunakan Kmeans. Ketiga,  mengekstraksi  garis  batas  gambar  yang diabstraksikan oleh canny dilanjutkan dengan filter rata- rata  untuk  lebih  meningkatkan  visual  lukisan  kartun. Langkah  terakhir,  gambar  yang  telah  terkuantisasi disatukan dengan gambar tepi untuk mendapatkan efek kartun  dengan  warna  yang  lebih  halus,  visibilitas  yang lebih tinggi, dan kurang mendetail.

## II. M ETODE PENELITIAN
Penelitian ini terdiri dari empat fase yakni abstraksi gambar,  kuantisasi  warna  gambar,  mendapatkan  garis kontur  dari  gambar,  serta  menggabungkan  hasil kuantisasi  gambar  dengan  garis  kontur.  Tahapan  alur algoritma ini dapat dilihat dalam gambar 1.
Gambar 1. Flowchart Algoritma

## A. Abstraksi  Gambar  Menggunakan  Bilateral Filtering
Tahap  awal  dalam  penelitian  ini  adalah  proses abstraksi  gambar.  Abstraksi  gambar  merupakan  teknik meningkatkan  kontras  gambar  dan  mengabaikan  detail gambar  yang  tidak  penting.  Ini  digunakan  untuk mengirimkan  informasi  visual  dapat  menarik  lebih banyak  perhatian  orang  dan  mempromosikan  efek transfer  informasi  (Lu  et  al.,  2013).  Abstraksi  gambar dilakukan menggunakan bilateral filtering.
Bilateral  filtering  adalah  teknik  filtering  yang pertama  kali  diajukan  oleh  Tomasi  dan  Mandhuci (Tomasi  and  Manduchi,  1998).  Filter  bilateral  adalah filter  difusi  nonlinier  yang  dapat  mengaburkan  sinyal kecil dan non-kontinu dan dapat mempertajam informasi tepi. Tidak hanya mempertimbangkan jarak ruang tetapi juga  perbedaan  intensitas  sinyal  (Lu  et  al.,  2013). Langkah  yang  dilakukan  untuk  menghasilkan  gambar abstrak  dengan  filter  bilateral,  pertama  inisialisasi gambar  input  dengan  f  (.)  dan  H  (.)  adalah  filter  yang digunakan untuk memproses gambar input agar menjadi gambar   abstrak, seperti ditunjukkan pada persamaan (1)
𝐻(𝑥, % 𝜎 ! , 𝜎 " ) = ∫ 𝑒 # ! " $ ‖$%&$‖ '( % " 𝑤(𝑥, 𝑥, % 𝜎 " )𝑓(𝑥)𝑑𝑥 ∫ 𝑒 # ! " $ ‖$%&$‖ '( % " 𝑤(𝑥, 𝑥, % 𝜎 " )𝑑𝑥 (1)
Dalam formulasi ini,
𝑤(𝑥, 𝑥, % 𝜎 " ) = 𝑒 # ! " $ ‖$ %&$‖ '( % " (2)
𝑥. adalah lokasi piksel, 𝑥 adalah piksel tetangga, dan 𝜎 ! adalah radius buram. Jika 𝜎 ! terlalu besar, filter akan menjadi tidak berpengaruh pada gambar dan apabila nilai 𝜎 " terlalu kecil, 𝜎 " menentukan tingkatan menjaga atau mengaburkan gambar. Hasil dari abstraksi gambar dapat dilihat dalam gambar 2.
(a) (b) Gambar 2. (a) Gambar asli dan (b) Efek abstrak Input Image Bilateral Filtering Color Quantity K-Means Edge Extraction Canny
Fusion Average Method Image Cartoon Style

## B. Kuantisasi Warna Menggunakan K-Means
Kuantisasi  warna  merupakan  proses  mengurangi jumlah  warna  berbeda  yang  digunakan  dalam  sebuah citra dengan harapan secara kasat mata citra baru secara visual  mirip  dengan  gambar  asli.  Setelah  proses abstraksi,  banyak  informasi  detail  dalam  gambar  asli dihilangkan, dan warna pada wilayah yang luas menjadi dekat  satu  sama  lain  atau  ditransisikan.  Untuk mendapatkan  efek  pewarnaan  kartun,  dilakukan  proses kuantisasi  pada  gambar  yang  telah  diabstraksi  dengan menggunakan algoritma kmeans.
Gambar hasil abstraksi, kemudian digunakan sebagai data input untuk menjalani algoritma kuantisasi warna K- Means  untuk  mengkuantisasi  citra  ke  dalam  beberapa warna  (Palus,  2004).  Algoritma  K-Means  mencoba memisahkan  sampel  dalam  kelompok  n-warna  dengan varians  yang  sama.  Diagram  alur  untuk  algoritma disajikan pada Gambar 3.
Gambar 3. Flow chart algoritma Kmeans
Secara  umum,  algoritma  ini  menerima  beberapa parameter  awal  untuk  menentukan  jumlah  kluster  awal dan  kemudian  secara  otomatis  menempatkan  pusat kluster di ruang fitur multidimensi. karena penelitian ini menggunakan  data  gambar,  maka  titik  datanya  berupa pixel. masing-masing pixel dalam gambar didistribusikan ke kluster yang memiliki vektor rata-rata terdekat. Jika semua  piksel  sudah  diklasifikasi,  dihitung  vektor  rata- rata  untuk  setiap  kluster.  vektor  ini  digunakan  secara iteratif  untuk  klasifikasi  pixel  menggunakan  kriteria vektor  rata-rata  terdekat.  langkah  ini  berulang  sampai tidak  ada  perubahan  yang  signifikan. Tabel  1  adalah contoh ketika sebuah gambar dikuantisasi menggunakan KMeans.  Hasil  menunjukkan  bahwa  jumlah  kelompok yang ditetapkan adalah jumlah warna yang dikuantifikasi oleh algoritma.
Tabel 1 Hasil Kuantisasi menggunakan K-Means
Gambar Hasil Kuantisasi Nilai K 4 8 10 16 20 25

## C. Ekstraksi Tepi
Garis  kontur  yang  jelas  adalah  fitur  penting  pada gambar  kartun.  Pada  penelitian  ini,  filter  Canny  (Yuan and Xu, 2015) digunakan untuk mengekstrak garis kontur dari  gambar  yang  sudah  dilakukan  abstraksi.  Langkah-
Inisialisasi Pusat Centroid Menandai Setiap Pixel Pada Centroid Terdekat Start Menghitung Rata-Rata Centroid Cluster baru Apakah Hasil Cluster Bagus? Menghitung Statistik dan Pemisahan Informasi Mensetting Pusat Centroid Sebagai Rata-Rata Baru No End
langkah  mengekstraksi  kontur  gambar  dengan  filter Canny adalah sebagai berikut:
Untuk mencegah noise salah dideteksi sebagai tepian, maka noise harus dikurangi terlebih dahulu, oleh karena itu  pada  langkah  pertama  gambar  harus  diperhalus dengan mengggunakan Gaussian filter, ditunjukkan pada persamaan (3).
(3)
Setelah  noise  dihilangkan  pada  proses  smoothing, dilakukan  proses  untuk  mendapatkan  kekuatan  tepi. Tepian  harus  ditandai  pada  gambar  yang  memiliki gradien  yang  besar.  Digunakan  operator  gradien  dan dilakukan pencarian secara horizontal dan vertikal. Hal tersebut ditunjukkan dalam Persamaan (4).
(4)
Magnitudo  gradien  atau  juga  dikenal  sebagai kekuatan tepi dapat ditentukan sebagai jarak euclidean, seperti yang ditunjukkan dalam Persamaan (5). Hasil dari kedua operator digabungkan dengan rumus:
𝐺 = 𝑆𝑄𝑅𝑇(𝐺 & ' + 𝐺 ( ' ) (5)
Dimana;  Gx  dan  Gy  adalah  gradien  pada  masing- masing  arah  x  dan  y.  Untuk  menentukan  tepian  yang sebenarnya  ini,  arah  tepian  harus  ditentukan  dan disimpan  seperti  ditunjukkan  dalam  Persamaan  (6). Setelah arah tepi diperoleh, perlu menghubungkan antara arah  tepi  dengan  sebuah  arah  yang  dapat  dilacak  dari citra.
θ  =  arctan  < G ) G * > (6)
Selanjutnya  penghilangan  non-maximum  dilakukan di sepanjang tepi dan menghilangkan piksel – piksel yang tidak dianggap sebagai tepi. Hanya nilai maksimum yang ditandai  sebagai  tepi.  Sehingga  didapatkan  garis  tepi yang lebih ramping.
Untuk membuat gambar biner, diterapkan dua buah thresholding  yaitu  low  thresholding  (T1)  dan  high thresholding (T2). Nilai yang kurang dari T1 akan diubah menjadi  hitam  (nilai  0)  dan  nilai  yang  lebih  dari  T2 diubah menjadi putih nilai 255). Dan yang terakhir adalah Edge  Trancking  dimana  tepian  final  ditentukan  dengan menekan semua sisi yang tidak terhubung dengan tepian yang kuat. Semua piksel yang terhubung dengan piksel putih  yang  memiliki  nilai  lebih  besar  dari  T1  juga dianggap sebagai tepi.
Gambar 3. Ekstraksi tepi dengan canny

## E. Fusion
Setelah  proses  ekstraksi  kuantitatif  menggunakan Kmeans  dan  ekstraksi  tepi  dengan  canny  dan  proses penghalusan  tepi  denga  mean  filter,  gambar  yang terkuantisasi digabungkan dengan tepi yang diekstraksi dengan  menggunakan  fusion  average  method  (Mule, 2015), (Malviya and Bhirud, 2009). Metode ini (Rani and Sharma,  2013)  menghasilkan  gambar  yang  fokus  pada semua  wilayahnya.  Karena  rata-rata  nilai  piksel  dari kedua  gambar  input  dihitung,  nilai  piksel  dari  setiap gambar  diambil  dan  ditambahkan.  Kemudian  nilai  ini dibagi dengan jumlah gambar input untuk mendapatkan nilai rata-rata. Nilai rata-rata yg diperoleh ini kemudian digunakan  untuk  menentukan  piksel  yg  sesuai  dengan gambar output/gambar hasil. Pada Gambar X (a) adalah gambar  tepi  dari  gambar  asli  yang  disaring  secara bilateral dan diekstraksi oleh Canny, (b) adalah gambar efek yang menggabungkan efek tepi gambar dan gambar efek dengan filter bilateral dan gambar yang terkuantisasi lembut  oleh  tingkat  kuantisasi  dengan  Kmeans  (Palus, 2004).  Gambar  yang  diperoleh  ditunjukkan  sebagai Gambar 4.
(a) (b)
Gambar 4. (a) Gambar Input dan (b) Hasil Gambar Cartoon rendering

## III. H ASIL DAN PEMBAHASAN
Pada penelitian ini, di bangun dengan menggunakan Matlab.  Dengan  tampilan  user  interface  yang  interaktif berbasis  Graphic  User  Interface,  user  dimungkinkan dapat  memilih  parameter  initial  centroid  K-Means, Dimensi  Mean  Filter  serta  metode.    Uji  coba  pada penelitian ini dilakukan pada beberapa citra asli. Gambar 8 adalah hasil percobaan dari dua gambar lainnya yang terdiri  dari  gambar  asli,  gambar  hasil  bilateral  filter, gambar hasil kuantisasi dengan K-Means, gambar hasil edge extraction dengan Canny dan gambar hasil akhir.

## IV. K ESIMPULAN
Penelitian  ini  mempelajari  tentang  teknologi Non- Photorealistic  Rendering untuk  menciptakan  gambar kartun.  Algoritma  ini  dapat  secara  otomatis menghasilkan  gambar  kartun  tanpa  partisipasi  user  dan keterampilan menggambar. Pertama, dilakukan abstraksi gambar  menggunakan  bilateral  filtering.  Kedua, dilakukan kuantisasi pada gambar yang telah diabstraksi dengan  menggunakan  algoritma  kmeans.  Ketiga, menggunakan  filter  Canny  untuk  mengekstraki  garis kontur gambar secara halus dan bersambung. Algoritma ini  menghasilkan  visualisasi  gambar  kartun  yang  lebih baik.

## D AFTAR PUSTAKA
[1] GUASTELLA,  D.  AND  VALENTI,  C.,  2016. Cartoon  filter  via  adaptive  abstraction.  Journal  of Visual  Communication  and  Image  Representation, [online] 36, pp.149–158. Available at: <http://dx.doi.org/10.1016/j.jvcir.2016.01.012>.
[2] Rosyidi,  M.  Suyanto,  Amir  F.S.,  2014 .  Penerapan Teknik Non-Photorealistic Rendering (NPR) Dalam Pembuatan Efek Warna Goresan Pensil Pada Citra.
[3] KANG,  H.,  LEE,  S.  AND  CHUI,  C.K.,  2007.  Coherent line  drawing.  Proc.  NPAR,  [online]  1(212),  pp.43–50.
Available at: <http://doi.acm.org/10.1145/1274871.1274878>.
[4] LU, L., PU, Y., ZHANG, H. AND XU, D., 2013. A Non- photorealistic  Rendering  Algorithm  For  Cartoons. 2(Cisp), pp.680–685.
[5] MALVIYA, A. AND BHIRUD, S.G., 2009. Multi- Focus  Image  Fusion  of  Digital  Images.  2009 International  Conference  on  Advances  in  Recent Technologies  in  Communication  and  Computing,
[online] pp.887–889. Available at: <http://ieeexplore.ieee.org/document/5328453/>.
[6] MULE,  M.B.,  2015.  Basic  Medical  Image  Fusion Methods. International Journal of Advanced Research in Computer  Engineering  &  Technology  (IJARCET),  4(3), pp.1046–1049.
[7] PALUS, H., 2004. On Color Image Quantization by the K- Means Algorithm.
[8] RANI, K. AND SHARMA, R., 2013. Study of Different Image  fusion  Algorithm.  International  Journal  of Emerging Technology and Advanced Engineering (ISSN 2250-2459, ISO 9001:2008 Certified Journal, Volume 3, Issue 5, May 2013, 3(5), pp.288–291.
[9] TOMASI,  C.  AND  MANDUCHI,  R.,  1998.  Bilateral filtering  for  gray  and  color  images.  Sixth  International Conference  on  Computer  Vision  (IEEE  Cat. No.98CH36271),  [online]  pp.839–846.  Available  at: <http://ieeexplore.ieee.org/document/710815/>.
[10] YUAN,  L.  AND  XU,  X.,  2015.  Adaptive  Image  Edge Detection Algorithm Based on Canny Operator. 2015 4th International  Conference  on  Advanced  Information Technology and Sensor Application (AITS), [online] (2), pp.28–31. Available a t: <http://ieeexplore.ieee.org/document/