## APLIKASI PENDETEKSI TANDA AIR PADA UANG KERTAS DENGAN METODE SEGMENTASI REGION BASED ACTIVE CONTOUR MENGGUNAKAN MATLAB
Muhammad Zain Fadli 1
Cut Maisyarah Karyati 2
1,2 FakultasIlmuKomputerdanTeknologiInformasi, Universitas Gunadarma,
1 zafad@outlook.com
2 csyarah@staff.gunadarma.ac.id

## Abstrak
Pengolahan  citra  digital  saat  ini  telah  berkembang  kegunaannya  untuk  melakukan  sistem pengenalan  terhadap  kemungkinan  gangguan  kriminalitas,  terutama  untuk  pengenalan  objek yang  unik,  seperti  tanda  air  pada  uang  rupiah.  Cukup  banyak  metode  pengolahan  citra  yang dapat  mendeteksi  tanda  air  pada  uang  kertas,  contohnya  segmentasi  citra.  Segmentasi  citra merupakan  tahapan  penting  dalam  proses  pengenalan  pola.  Segmentasi  citra  bertujuan  untuk memisahkan  antara  objek  ( foreground )  dengan background ,  pada  umumnya  keluaran  hasil segmentasi  citra  adalah  berupa  citra  biner.  Dalam  segmentasi  citra  juga  terdapat  beberapa metode,  contohnya  yaitu  region  segmentation  yang  berbasis  active  contour.  Active  contour menggunakan kurva tertutup untuk mendeteksi objek, setelah itu kurva bergerak melebar atau menyempit  terhadap  objek.  Sehingga  dalam  Tugas  Akhir  ini,  penulis  bermaksud  membuat sebuah  aplikasi  untuk  mendeteksi  tanda  air  pada  citra  uang  kertas  dengan  menggunakan metode  segmentasi  citra  region  based  active  contour.  Aplikasi  ini  berhasil  dibuat  dengan menggunakan Matlab versi R2013a.
Kata Kunci : Aplikasi, Tanda Air, Uang Kertas, Active Contour, Matlab

## DESIGNING AN APPLICATION TO IDENTIFY WATERMARK IN BANK PAPER US

## Abstract
Digital  image  processing  has  now  developed  its  usefulness  to  perform  recognition  system against possible interruption of criminality, especially for the introduction of a unique object, such  as  watermarks  on  the  rupiah.  Quite  a  lot  of  image  processing  methods  that  can  detect watermarks on  paper,  for  example,  image segmentation. Image  segmentation  is  an  important step  in  the  process  of  pattern  recognition.  Image  segmentation  aims  to  separate  between objects (foreground) to the background, in general, the output of image segmentation is a form of  binary  image.  In  the  image  segmentation  are  also  several  methods,  examples  are  region- based  active  contour  segmentation.  Active  contour  using  a  closed  curve  to  detect  the  object, then  the  curve  moves  toward  the  object  dilated  or  constricted.  Thus,  in  this  final  project,  the author  intends  to  make  an  application  to  detect  watermarks  in  the  images  of  banknotes  by using  the  method  of  image  segmentation  based  on  active  contour  region.  This  application  is successfully created using Matlab version R2013a.
Keywords: Application, Watermarks, Banknotes, Active Contour, Matlab

## PENDAHULUAN
Pada  zaman  modern  yang canggih  akan  kekayaan  teknologi seperti sekarang ini, penggunaan kom- puter memegang peran besar hampir di seluruh  bidang.  Seiring  dengan  kema- juan  ini,  tak  sedikit  orang  meman- faatkannya  untuk  berbuat  kejahatan. Salah  satu  kejahatan  yang  meman- faatkan  kemajuan  teknologi  adalah pembuatan uang palsu. Peredaran uang palsu  dari  tahun  ke  tahun  terus  me- ngalami  peningkatan.  Peningkatan  ini dikarena mudahnya mendapatkan informasi cara dari internet [1]. Penelitianterdahulu  yang  ber- kaitandenganuangkertasadalahpenerap anmetodedeteksitepi canny untukmembedakanuangaslidanuangpal su  [2].Teknik  yang  digunakan  untuk mengecek uang kertas yang asli adalah adalah dengan mendeteksi ada tidaknya tanda air dari suatu mata uang kertas. Saat ini pengolahan citra digital muncul  sebagai  salah  satu  cara  yang bisa mendeteksi ada tidaknya tanda air pada  suatu  mata  uang  kertas.Cukup banyak  metode  pengolahan  citra  yang dapat  mendeteksi  tanda  air  pada  uang kertas,  contohnya  segmentasi  citra. Segmentasi  citra  merupakan  tahapan penting dalam proses pengenalan pola.Segmentasi  citra  bertujuan  untuk memisahkan antaraobjek( fore- ground ) dengan background . Pada
umumnya  keluaran  hasil  segmentasi citra adalah berupa citra biner di mana objek ( foreground ) yang  dikehendaki berwarna  putih  (bernilai  1),  sedang- kan background yang  ingin  dihilang- kan berwarna hitam (bernilai 0).
Padaproses  segmentasi  citra terdapat  beberapa  metode,  contohnya yaitu region  segmentation yang  ber- basis active  contour. Metode  segmen- tasi  citra  region  yang  berbasis active contour memiliki  kelebihan  yaitu
ketahanannya  terhadap noise .  Bebera- pa  metode  berbasis active  contour yang  telah  diteliti  dan  dikembangkan antara  lain:  metode  Bernard,  metode Caselles,  metode  Chan  &  Vese, metode  Lankton,  Metode  Li  dan metode  Shi.  Metode  Lankton  meru- pakan metode yang melokalisir daerah berbasis kontur aktif.
Beberapapenelitianterdahulutel ahmengimplementasikanmetode active contour .Segmentasicitrajalanrayadilak ukandenganmetode activecontour untuk analisislebihlanjutyaitumengetahuiting katkerusakanjalan [3]. Padabidangpencitraanmedis, metode active contour juga
digunakanuntuksegmentasitulang pelvis berdasarkancitra CT-scan[4].
Padapenelitianiniakandibuat aplikasi pengolahan citra berbasis GUI menggunakan  Matlab  untuk  men- deteksi  tanda  air  pada  uang  kertas berdasarkan metode segmentasi region berbasis acive contour .

## METODE PENELITIAN
Metode  penelitian  yang  dila- kukanterbagikedalamtigatahap, yaitutahap  pengumpulan  data,  tahap perancangan  dan  aplikasi,  dantahap implementasi.tahapan pengumpulan data  terkait  dengan  berbagai  sumber. Sumber bacaan berasal dari buku-buku ilmu  komputer,  jurnal  dan  karya ilmiah.yang terkait tentang pengolahan citra dan pembuatan aplikasinya menggunakan Matlab [5,6].Mem-
bangun  aplikasi  menggunakan  Matlab R2013a,  yang  dijalankan  pada  Sistem
Operasi  Windows  10  Home  meru- pakan tahap perancangan dan aplikasi.Tahap terakhir yaitu implementasi  algoritma  pengolahan citra  dengan  menggunakan  laptop  dan aplikasi Matlab.
Active Contour Model Konsep active  contours  model
pertama  kali  diperkenalkan  oleh  M.
Kass  et  al  (1987). Active  Contour menggunakan prinsip energi minimizing yang  mendeteksi  fitur
tertentu  dalam  suatu  citra.  Sistem  ini terdiri  dari  sekumpulan  titik  yang saling berhubungan dan terkontrol oleh garis  lurus. Active  contour digam- barkan  sebagai  sejumlah  titik  yang berurutan  satu  sama  lain.  Penentuan obyek  dalam  citra  melalui active contour merupakan  proses  interaktif, sehingga contour akan  tertarik  kearah fitur didalam citra atau image. Parameter active contour untuk sekumpulan titik koordinat yang terkontrol pada contour dapat didefinisikan pada persamaan :
𝑣𝑣 ( 𝑠𝑠 ) = 𝑥𝑥 ( 𝑠𝑠 ), 𝑦𝑦 ( 𝑠𝑠 )
Representasi  dan  implementasi active  contour dapat  berupa para- metric atau geometric . Parametric deformable  model direpresentasikan secara  eksplisit  sebagai  kurva  yang terparameterisasi dalam ruang Lagrangian, sedangkan geometric
deformable  model direpresentasikan secara implicit sebagai level  set dari fungsi  dua  dimensi  yang  berevolusi dalam  ruang  Eulerian  (Kass  et  al, 1987).
Region Filling Tujuan  dari Region  Filling adalah mengisikeseluruhan regiondengan nilai 1 (putih). Operasiini menggunakan acuan berdasarkan nilai piksel
tetangganya.Citra masukan adalah citra  biner  yangmemiliki  lubang, kemudian dilakukan pengisiansehingga  diperoleh  segmen obyek yangpejal/solid.

## Objek Image
Image  yang  digunakan  pada percobaan  ini  terdiri  dari  beberapa image uang kertas, antara lain : Image uang  kertas  Rp.  100.000  dan  image uang  kertas  Rp.  50.000.Bagian  dari uang  kertas  yang  akan  dicapture  oleh webcam  adalah  daerah  putih  yang memiliki  tanda  air.  Setelah  bagian tersebut dicapture menggunakan webcam  maka  image  hasil  capture tersebut  akan  disimpan  (save)  sebagai image  dengan  format  bmp  yang  akan digunakan sebagai inputan.PadaGambar 1 berikutinimerupakanilustrasi proses
akuisisiuangkertasuntukdeteksitanda air.
Gambar 1. Proses Akuisisi (Pengambilan Gambar) Uang Kertas

## Perancangan Proses Program
Perancangan  proses  program ini  bertujuan  untuk  menguraikan seluruh  kegiatan  yang  dilaksanakan. Perancangan  ini  akan  digambarkan dengan  diagram  alur  atau  nama lainnya yaitu flowchart yang dapatdilihatpadaGambar 2 berikutini.
Gambar2. Flowchart Program Deteksi Tanda Air
Saat  program  start  proses selanjutnya  yaitu  input  citra.  Setalah itu akan ada kondisi apakah citra yang dibutuhkan ada, jika tidak akan menu- ju  proses  akuisisi  citra  menggunakan webcam.  Jika  citra  sudah  didapatkan maka  akan  melanjutkan  ke  proses selanjutnya  yaitu  konversi  citra  ke grayscale.  Setelah  itu  proses  active contour,  jika  pada  proses  ini  terdapat suatu  region  berupa  lubang  maka proses  region  filling  akan  di  jalankan, jika  tidak  akan  lanjut  ke  proses terakhir  yaitu  penentuan  letak  tanda air.  Setelah  itu  akan  terlihat  letak posisi  tanda  air  pada  citra  yang  telah diinput.

## Analisis Sistem
Untuk  pertama  kali  setelah aplikasi dijalankan ( run ), maka tampilan  yang  akan  muncul  adalah tampilan menu utama yang merupakan program  utama  yaitu  DeteksiUang.fig. Program  ini  digunakan  untuk  men- deteksi keberadaan tanda air pada uang kertas.  Alur  jalannya  proses  pada program  ini  yaitu  pertama  akuisisi
citra > grayscale > active contour > region filling > letak tanda air.

## Akuisisi Citra
Dalam  penelitian  ini,  proses akuisisi  citra  dilakukan  menggunakan webcam  yang  terdapat  pada  perangkat keras  laptop.  Penggunaan  webcam  ini akan  menggunakan  program  yang  di- buat khusus untuk diproses pada pene- litian  ini.  Program  yang  digunakan yaitu  program  yang  akan  diberi  nama webcam.fig.
Sebelum  proses  akuisisi  citra dilakukan,  beberapa  persiapan  yang akan disiapkan yaitu : objek data beru- pa  uang  kertas,  peralatan  untuk  me- ngambil gambar objek yaitu laptop dan webcam,  dan  juga  program  yang dirancang  untuk  mengambil  gam- barnya yaitu program webcam.fig.

## Grayscale
Data  berupa  citra  yang  telah diperoleh  melalui  proses  akuisisi masih  bernilai  24  bit,  karena  citra tersebut  merupakan  citra  RGB.  Citra RGB  memiliki  24  bit  karena  masing- masing  dari  Red,  Green  dan  Blue memiliki  8  bit.  Pada  tahap  ini  citra RGB  yang  bernilai  24  bit  akan  di transformasi  ke  citra grayscale atau citra  dengan  skala  keabuan.  Citra grayscale ini  memiliki  nilai  8  bit, dimana  nilai  minimum  nya  bernilai  0 yaitu  putih  dan  maksimum  bernilai 255 yaitu hitam.
Segmentasi Region  Based  Active Contour
Proses  selanjutnya  yaitu  seg- mentasi  menggunakan  metode  seg- mentasi region  basedactive  contour . Proses  ini  akan  memanggil  file function  yaitu  region_seg_ac.m  untuk proses pendeteksian tanda airnya.

## Region Filling
Setelah  proses  pendeteksian selesai  berlanjut  ke  proses  region filling.  Proses  pendeteksian  tanda  air dengan  active  contour  menghasilkan citra  biner  dengan  bagian  tanda  air berwarna putih dan background hitam. Pada  bagian  tanda  air  hasil  deteksi biasanya  terdapat  daerah  (region) berupa  lubang  (holes)  yang  bernilai sama  dengan  background  yaitu  0 (hitam).  Proses  ini  akan  mendeteksi bagian tersebut lalu mengisinya dengan  nilai  1  (putih)  yang  sama dengan bagian tanda air hasil deteksinya.

## Penentuan Letak Tanda Air
Proses terakhir yaitu penentuan letak  tanda  air  pada  uang  kertas. Bagian  tanda  air  hasil  deteksi  akan diambil  bentuknya  (contour)  pada bagian tepinya. Setelah itu proses akan memanggil  citra  uang  kertas  dalam skala  grayscale,  kemudian  meletakkan bentuk  (contour)  pada  citra  grayscale tersebut. Contour akan ditandai dengan garis  berwarna  merah  tanda  letak  dari tanda airnya.

## HASIL DAN PEMBAHASAN

## Pengujian Aplikasi
Tahap  ini  merupakan  tahap pengujian  aplikasi,  sebelum  dilakukan proses  pengujian  perlu  diperhatikan beberapa  hal  agar  pengujian  yang  di- lakukan  dapat  memberikan  hasil  yang bermanfaat.  Diantaranya  yaitu  me- nyiapkan  objek  untuk  penelitian  yaitu pecahan  uang  kertas  Rp  50.000,  data berupa  image  uang  kertas  yang  akan digunakan  untuk  proses pengujian  dan membuat  skenario  pengujian.  File yang  pertama  kali  dijalankan  ( run )
yaitu file DeteksiUang.fig. Pada Gambar 3
berikutinimerupakantampilanhalamand eteksiuang.
Gambar 3. Tampilan Halaman DeteksiUang.fig

## Akuisisi Citra
Langkah  pertama  yang  dila- kukan  yaitu  input  data  berupa  citra. Dalam  penelitian  ini  citra  didapatkan dengan menggunakan alat yaitu webcam  yang  terdapat  di  laptop  dan juga  melalui  program  Webcam.fig yang  telah  dibuat  sebelumnya.  Untuk mengakses  halaman  Webcam.fig  ada pada  menu  DeteksiUang.fig,  klik  File > Capture Image.
Gambar 4. Akses Menuju Webcam.fig
Pada  Gambar  4  ditunjukkan cara  akses  halaman  Webcam.fig. Setelah  halaman  webcam  muncul  klik button Webcam On untuk koneksi dan menyalakan  webcam.  Hasil  proyeksi dari webcam nanti akan diproyeksikan pada  axes  1  dengan  ukuran  320  x  240 piksel.  Gambar  yang  akan  dijadikan data  yaitu  bagian  putih  dari  tanda  air uang  kertas,  setelah  diarahkan  ke  arah tanda air klik capture untuk menangkap gambar.
Setelah  gambar  didapatkan, selanjutnya  simpan  gambar  dengan klik button Save. Akan muncul jendela simpan gambar, pilih direktori penyimpanannya dan beri nama
‘50_01.bmp’.  Setelah  itu  akan  muncul pemberitahuan  gambar  berhasil  di- simpan,  gambar  tersimpan  dalam format bmp (bitmap).
Selanjutnya  input  data  melalui menu  File  lalu  pilih  Browse  Image. Lalu  akan  muncul  jendela  Open Image,  pilih  direktori  tempat  gambar tersimpan  sebelumnya,  pilih  gambar nya, lalu klik Open.
Setelah  data  di  input  maka pada  halaman  DeteksiUang.fig,  data yang  di  input  tadi  akan  ditampilkan pada  axes  1  pada  panel  citra  awal.
Tahap akuisi citra pun selesai.PadaGambar 5 ditunjukkancitrauang yang digunakansebagaicitra input dalampenel itianini yang merupakancitrahasilakuisisi. Gambar 5. Tampilan Hasil Input
Konversi Citra RGB ke Grayscale Pada tahap ini citra yang sudah diinput  tadi  akan  dikonversikan  ke citra  berskala  keabuan (grayscale). Untuk  konversi  ke  citra  berskala keabuan source code nya adalah
gray = rgb2gray(data1);
Citra yang dimasukan ke dalam matlab  dengan  format  bmp  pada Gambar 5 dikonversi ke mode
grayscale  untuk  mempermudah  proses pengolahan citra pada tahap selanjutnya,  karena  citra  mode  ini terbentuk  dari  sebuah  matrik  yang nilainya  berkisar  antara  0  hingga  255. Hasil konversi tersebut ditunjukkanpadaGambar 6 berikutini.

## Gambar 6. Hasil Konversi Citra RGB ke Grayscale
Segmentasi Active Contour
Masuk  ke  proses  utama  yaitu proses mendeteksi tanda air pada uang kertas.  Dengan  menggunakan  metode segmentasi active  contour tanda  air akan  terdeteksi  menggunakan  mask yang  akan  menyempit  atau  melebar. Untuk  mengerjakan  proses  segmentasi ini  program  akan  memanggil  fungsi region_seg_ac.m  yang  sudah  dibuat, fungsi  ini  berisi  proses  mendeteksi menggunakan segmentasi active contour. Source  code  proses active contour adalah sebagai berikut
I = getimage(handles.axes2); m = zeros(size(I,1),size(I,2)); seg = activecontour(I, m, 200);
Yang  dilakukan  pertama  yaitu membaca  citra  grayscale  pada  axes  2. Setelah itu membuat mask, mask disini berfungsi  sebagai  titik  pertama  untuk mendeteksi bagian tanda air.
Selanjutnya  dilakukan  proses  segmen- tasi active  contour dengan  memanggil fungsi  region_seg_ac.m.  PadaGambar 7 berikutiniditunjukkancitrahasildeteksid
enganmetodesegmentasi active contour.
Gambar 7. Hasil Deteksi Dengan Segmentasi Active Contour

## Region Filling
Pada hasil deteksi di Gambar 7
terdapat  bagian  berupa  lubang  yang bernilai  0  atau  hitam.  Proses  ini bertujuan untuk mengisi bagian
tersebut  agar  hasil  deteksi  merata dengan  nilai  1  (putih).  Untuk  proses region  filling,  source  code  nya  adalah sebagai berikut I = getimage(handles.axes2); Reg_fill = imfill(fill, 'holes' );
Citra  yang  digunakan  adalah citra  hasil  deteksi  tanda  air  yang  ada pada  axes  2.  Setelah  itu  citra  akan dideteksi  apakah  terdapat  bagian berupa  lubang  atau holes ,  jika  dalam citra  terdapat  lubang  maka  lubang tersebut  akan  diisi  dengan  nilai  1  atau putih  dengan  hasil  seperti  yang ditunjukkan  pada  Gambar  8  berikut ini.
Gambar 8. Hasil Region Filling
Penentuan Letak Tanda Air
Hasil  deteksi  tanda  air  pada proses sebelumnya masih dalam bentuk  citra  biner.  Pada  proses  hasil deteksi  tersebut  akan  diubah  kedalam bentuk  garis  pada  bagian  tepinya. Selanjutnya  garis  akan  diproyeksikan pada  citra  grayscale  agar  terlihat dimana  letak  tanda  air  pada  uang kertasnya. Source  code -nya  adalah sebagai berikut C = getimage(handles.axes2);
contour(C, [0 0], 'r' , 'LineWidth' , 2);
Letak tanda air akan
ditunjukkan  dengan  garis  berwarna merahsepertipadaGambar  9  dengan ketebalan  garis  2  piksel.  Proses penentuan  letak  tanda  air  ini  hasilnya ditampilkan pada axes 3.
Gambar 9. Letak Tanda Air pada Uang Kertas

## Tampilan Halaman Tentang Penulis
Untuk mengakses halaman penulis,  klik  pada  menu  Tentang  >
Tentang  Penulis.  Halaman  ini  berisi tentang  informasi  penulis  seperti nama,  NPM,  Kelas,  Fakultas,  Jurusan dan juda nama dari Dosen Pembimbing.  Dan  juga  tertera  foto penulis di bagian kiri halaman.
Gambar 10. Tampilan Halaman Tentang Penulis Tampilan Halaman Tentang Aplikasi
Untuk  mengakses  halaman  aplikasi, klik  pada  menu  Tentang  >  Tentang Aplikasi.  Dalam  halaman  ini  berisi informasi  tentang  bagaimana  aplikasi dibuat,  bahasa  pemrograman  yang digunakan untuk membuat aplikasi dan juga  metode  yang  digunakan  dalam penelitian
Gambar 11. Tampilan Halaman
Tentang Aplikasi

## KESIMPULAN
Metode segmentasi citra dengan  Region  Based  Active  Contour berhasil  mendeteksi  tanda  air  pada uang  kertas.  Dari  hasil  pengujian sistem terhadap 6 citra dengan 2 objek yang berbeda dan juga dengan kualitas objek  berbeda  pula,  tingkat  keber- hasilan  mencapai  100%.  Hasil  kinerja
yang  berbeda  disebabkan  oleh  pe- ngaruh  pencahayaan,  pengaruh  kua- litas  objek,  dan  perbedaan  tekstur kertas  pada  uang  kertas  pecahan  Rp. 50.000 dan Rp. 100.000. Aplikasi pada penelitian ini masih jauh dari sempurna.  penulis  menerima  saran yang membangun agar nantinya penelitian  ini  dapat  dikembangkan dengan  menggunakan  metode  yang lainnya  atau  memperdalam  metode segmentasi active  contour ini  agar hasil  yang  didapatkan  bisa    lebih  baik dan  lebih  bermanfaat  lagi  seiring dengan  meningkatnya  kecanggihan teknologi  dan  kreatifitas  para  peneliti dan pembuat aplikasi.

## DAFTAR PUSTAKA
[1]   Idhamsyah. 2014. Pengolahan Citra Digital untuk Mendeteksi
Tanda Air Uang Kertas. http://eprints.upnjatim.ac.id/6337 /1/file1.pdf, 10 Mei 2016 [2]   Elias Dianta Ginting. 2014. Deteksi Tepi Menggunakan Metode Canny dengan Matlab untuk Membedakan Uang Asli dan Uang Palsu. www.gunadarma.ac.id/Artikel_5 0404934, 1 April 2016 [3]   TutukIndriyani, DwiRatnasari. 2015. Metode Active Contour
Berbasis Level Set
UntukSegmentasi Tingkat KerusakanJalan Raya (StudiKasusJalan Di Surabaya). Seminar Nasional Sains Dan TeknologiTerapan III. ISBN 978-602-98569-1-0, pp. 327 –
336.
[4]   Suprijanto, Farida I. Muchtadi1, danIrwanSetiawan. 2009.
Segmentasi Citra Secara Semi- OtomatisUntukVisualisasiVolum etrik Citra Ct-Scan Pelvis.
MAKARA, TEKNOLOGI , vol.
13, no. 2, pp. 59-66
[5]   Komputer, Wahana. 2013. Ragam Aplikasi Pengolahan
Image dengan Matlab. Jakarta  : Elex Media Komputindo [6]   Prasetyo, Eko. 2011. Pengolahan Citra Digital dan Aplikasinya menggunakan
Matlab . Yogyakarta : Andi