• Tidak ada hasil yang ditemukan

Analisis Kompresi Citra Digital Dengan Metode Fraktal

N/A
N/A
Protected

Academic year: 2016

Membagikan "Analisis Kompresi Citra Digital Dengan Metode Fraktal"

Copied!
79
0
0

Teks penuh

(1)

ANALISIS KOMPRESI CITRA DIGITAL DENGAN

METODE FRAKTAL

SKRIPSI

DEVI TRIANA 081401012

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

(2)

ANALISIS KOMPRESI CITRA DIGITAL DENGAN METODE FRAKTAL

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer

DEVI TRIANA 081401012

PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : ANALISIS KOMPRESI CITRA DIGITAL DENGAN

METODE FRAKTAL

Kategori : SKRIPSI

Nama : DEVI TRIANA

Nomor Induk Mahasiswa : 081401012

Program Studi : SARJANA (S1) ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI Diluluskan di

Medan, Agustus 2015

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Dr. Syahriol Sitorus, S.Si M.IT Dr. Poltak Sihombing, M.Kom NIP 197103101996021001 NIP 196203171991021001 Diketahui/Disetujui oleh

Departemen Ilmu Komputer FASILKOMTI USU Ketua,

(4)

PERNYATAAN

ANALISIS KOMPRESI CITRA DIGITAL DENGAN METODE FRAKTAL

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Agustus 2015

(5)

PENGHARGAAN

Puji dan syukur penulis panjatkan kehadirat Allah SWT, yang telah melimpahkan rahmat dan karunia-Nya, sehingga skripsi ini berhasil diselesaikan dalam waktu yang telah ditetapkan sebagai syarat untuk mencapai gelar Sarjana Komputer, serta shalawat beriring salam penulis persembahkan kepada Nabi Besar Muhammad SAW.

Skripsi ini berjudul Analisis Kompresi Citra Digital dengan Metode Fraktal. Penulis menyadari banyak hambatan dalam penyelesaian skripsi ini namun senantiasa mendapatkan dukungan, saran, dan nasehat dari berbagai pihak, oleh karena itu penulis mengucapkan terima kasih kepada pihak-pihak yang terkait, yakni:

1. Bapak Dekan Prof. Dr. Muhammad Zarlis yang telah memimpin dan membina Fakultas Ilmu Komputer dan Teknologi Informasi, dalam rangka mencetak generasi muda yang mandiri dan berkualitas.

2. Bapak Dr. Poltak Sihombing, M.Kom. sebagai Ketua Departemen Ilmu Komputer dan selaku dosen pembimbing I, yang telah memberikan bimbingan dan dukungan selama penyusanan skripsi ini.

3. Ibu Maya Silvi Lydia B.Sc., M.Sc. sebagai sekretaris Departemen Ilmu Komputer.

4. Bapak Dr.Syahriol Sitorus, S.Si M.IT selaku Dosen Pembimbing II, yang juga telah memberikan bimbingan dan bersedia meluangkan waktunya dalam menyelesaikan Skripsi ini.

5. Bapak dan Ibu staf pengajar Departemen Ilmu Komputer USU, yang telah memberikan bimbingan dan pengajaran selama perkuliahan.

6. Kedua orang tua yang penulis cintai, Ibunda Sri Irawati dan Ayahanda Sugito. atas pengorbanan mereka baik cinta kasih doa serta semangat maupun materi sehingga penulis dapat merampungkan perjuangan menyelesaikan Skripsi ini. Berkat doa dan motivasi mereka semua berjalan dengan baik dan sesuai harapan. 7. Ibu Saidawati S.Pd yang senantiasa memberi semangat dan motivasi saya beserta

seluruh keluarga besar yang selalu memberikan dukungan agar skripsi ini cepat selesai.

(6)

9. Teman – teman seperjuangan angkatan 2008, yang senantiasa memberikan bantuan.

10. Sahabat terdekat Sufriza Isnaini dan Nurhayati yang selalu hadir disaat suka maupun duka.

Penulis berharap bahwa Tugas Akhir ini bermanfaat terutama kepada penulis maupun para pembaca. Penulis menyadari bahwa Tugas Akhir ini perlu saran dan kritik yang bersifat membangun demi kesempurnaan Tugas Akhir ini sehingga dapat bermanfaat bagi kita semua. Sekali lagi saya ucapkan terima kasih atas segalanya. Semoga segala kebaikan diberikan balasan yang setimpal oleh Allah SWT.

Penulis,

(7)

ABSTRAK

Hampir semua citra digital memerlukan media penyimpanan (storage) yang cukup besar. Sehingga hal ini menimbulkan masalah jika citra disimpan dalam database yang memiliki keterbatasan media penyimpanan. Metode Fractal pada image processing

diharapkan agar mampu mendapat kualitas citra digital yang telah terkompres menjadi lebih maksimal. Dengan menganalisis metode tersebut, maka akan dapat diketahui parameter yang tepat untuk metode yang digunakan. Parameter yang tepat berguna untuk memaksimumkan kinerja metode yang digunakan dalam melakukan perbaikan suatu citra dan apabila semakin besar ukuran citra semakin lama proses kompresi yang dilakukan. Metode kompresi fraktal membagi pixel-pixel citra kedalam dua blok, yaitu blok domain dan blok range. Blok domain diskalakan ukurannya menjadi ½ kali ukuran semula. Untuk setiap blok range dicari kemiripan antara blok range dengan semua blok domain. kemudian hitung transformasi affine untuk antara blok range ke i dengan blok domain yang terpilih. Setelah itu simpan koefisien transformasi affine

dan simpan semua parameter dalam PIFS(Partition Iterated Function System).

Kata Kunci : Citra Digital, Kompresi Fraktal, blok domain, blok range,

(8)

ANALYSIS OF DIGITAL IMAGE COMPRESSION

WITH FRACTAL METHODE

ABSTRACT

Virtually all digital images require storage which is quite large. So this raises a problem if the image is stored in the database that has limited storage media. Fractal methods in image processing is expected to be able to get digital images of better quality that have been compressed. By analyzing these methods, the exact parameters for the method used will be known. Right parameters are useful for maximizing the performance of the method used in the improvement of an image. The bigger the image the longer the compression process is done. Fractal compression method divides the pixels on the image into two blocks, namely the domain blocks and range blocks. Domain block scaled in size to ½ times its original size. Each block range seeks similarities between the range blocks of all domain blocks. Then calculate the affine transformation to the i-th block range in the selected domain block. After that save the affine transformation coefficients and all parameters are stored in PIFs (Partition Iterated Function System).

Keywords : Digital Image , Fractal Compression , domain block , block range ,

(9)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak v

Abstract vi

Daftar Isi vii

Daftar Tabel ix

Daftar Gambar x

Daftar Lampiran xi

Bab 1 Pendahuluan 1

1.1 Latar Belakang Masalah 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 3

1.6 Metode Penelitian 3

1.7 Sistematika Penulisan 4

Bab 2 Tinjauan Teoritis 6

2.1 Citra Digital 6

2.1.1Pengertian Citra Digital 7

2.1.2 Klarifikasi Citra Digital 8

2.2 Kompresi Citra 11

2.2.1 Kompresi Lossless 14

2.2.2 Kompresi Lossy 14

2.3 Format File Citra Digital 15

2.4 Metode Fraktal 16

2.4.1 Transformasi Affine 19

2.4.2 PIFS (Partition Iterated Function System) 19

2.4.3 Rasio Kompresi 20

2.4.4 Kriteria Kompresi Citra 22

Bab 3 Analisis dan Perancangan 24

3.1 Analisis Sistem 24

3.1.1 Analisis Masalah 24

3.1.1 Analisis Persyaratan (Requirement Analysis) 27 3.1.1.1 Analisis Persyaratan Fungsional 27 3.1.1.2 Analisis Persyaratan Non-Fungsional 27 3.1.2 Pemodelan Sistem dengan Use Case 28

3.1.3 Diagram Use Case 29

(10)

3.2 Perancangan Sistem 31

3.2.1 Activity Diagram 32

3.2.2 Flowchart 32

3.2.2.1 Flowchart Kompresi Citra 33

3.2.2.2 Flowchart Metode Fraktal 34

3.2.2.3 Pseudocode Kompresi Citra Fraktal 35

3.3 Perancangan Antarmuka 36

3.3.1 Halaman Metode Fraktal 36

3.3.2 Halaman Hasil 36

Bab 4 Implementasi dan Pengujian 38

4.1 Implementasi Sistem 38

4.1.1 Kompresi Berformat JPEG(.jpg) 38

4.2 Hasil Pengujian Sistem 48

4.2.1 Proses Kompresi Citra 48

4.2.2 Hasil Kompresi Citra 50

Bab 5 Kesimpulan dan Saran 57

5.1 Kesimpulan 57

5.2 Saran 58

(11)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Koordinat Citra Digital 7

Gambar 2.2 Citra Biner Monokrom 9

Gambar 2.3 Contoh Citra Grayscale 9

Gambar 2.4 Contoh Citra Warna 11

Gambar 2.5 Kompresi citra berbasis transformasi 12

Gambar 2.6 Standar Proses Kompresi Fraktal 17

Gambar 3.1 Diagram Ishikawa 26

Gambar 3.2 Use Case Diagram 29

Gambar 3.3 Activity Diagram 32

Gambar 3.4 Flowchart Sistem Kompresi Citra 33

Gambar 3.5 Flowchart Metode Fraktal 34

Gambar 3.6 Rancangan Antarmuka Metode Fraktal 36

Gambar 3.7 Rancangan Antarmuka Hasil 37

Gambar 4.1 Potongan Pixel dari Contoh Citra 39

Gambar 4.2 Blok Range 39

Gambar 4.3 Blok Domain 39

Gambar 4.4 Blok Domain yang sudah diskalakan 41

Gambar 4.5 Blok R1 41

Gambar 4.6 Blok R2 42

Gambar 4.7 Blok R3 43

Gambar 4.8 Blok R4 43

Gambar 4.9 Blok Range Terpilih 45

Gambar 4.10 Kompresi Citra Fraktal 48

Gambar 4.11 pop-up windows pilih citra .jpg 49

Gambar 4.12 Saat Citra sudah di load 49

Gambar 4.13 Proses Kompresi Citra 50

Gambar 4.14 Hasil dari kompresi citra 50

Gambar 4.15 Bunga : (a)Citra asli(67 kb), (b) Citra hasil

kompresi(6.74 kb) 51

Gambar 4.16 Kucing : (a)Citra asli (119 kb), (b)Citra hasil

kompresi (15,8 kb) 52

Gambar 4.17 Gunung : (a)Citra asli (196 kb), (b)Citra hasil

kompresi (60.5 kb) 53

Gambar 4.18 Danau : (a)Citra asli (255 kb), (b)Citra hasil

kompresi (62.3 kb) 54

Gambar 4.19 Taman : (a)Citra asli (113 kb), (b)Citra hasil

(12)

DAFTAR TABEL

Halaman

Tabel 2.1 Simbol-simbol Diagram Alir (Flowchart) 23

Tabel 3.1 Cause and effects Analysis 24

Tabel 3.2 Dokumentasi Naratif Use Case Kompresi 30

Tabel 3.3 Dokumentasi Naratif Use Case Kompresi lanjutan 31

(13)

ABSTRAK

Hampir semua citra digital memerlukan media penyimpanan (storage) yang cukup besar. Sehingga hal ini menimbulkan masalah jika citra disimpan dalam database yang memiliki keterbatasan media penyimpanan. Metode Fractal pada image processing

diharapkan agar mampu mendapat kualitas citra digital yang telah terkompres menjadi lebih maksimal. Dengan menganalisis metode tersebut, maka akan dapat diketahui parameter yang tepat untuk metode yang digunakan. Parameter yang tepat berguna untuk memaksimumkan kinerja metode yang digunakan dalam melakukan perbaikan suatu citra dan apabila semakin besar ukuran citra semakin lama proses kompresi yang dilakukan. Metode kompresi fraktal membagi pixel-pixel citra kedalam dua blok, yaitu blok domain dan blok range. Blok domain diskalakan ukurannya menjadi ½ kali ukuran semula. Untuk setiap blok range dicari kemiripan antara blok range dengan semua blok domain. kemudian hitung transformasi affine untuk antara blok range ke i dengan blok domain yang terpilih. Setelah itu simpan koefisien transformasi affine

dan simpan semua parameter dalam PIFS(Partition Iterated Function System).

Kata Kunci : Citra Digital, Kompresi Fraktal, blok domain, blok range,

(14)

ANALYSIS OF DIGITAL IMAGE COMPRESSION

WITH FRACTAL METHODE

ABSTRACT

Virtually all digital images require storage which is quite large. So this raises a problem if the image is stored in the database that has limited storage media. Fractal methods in image processing is expected to be able to get digital images of better quality that have been compressed. By analyzing these methods, the exact parameters for the method used will be known. Right parameters are useful for maximizing the performance of the method used in the improvement of an image. The bigger the image the longer the compression process is done. Fractal compression method divides the pixels on the image into two blocks, namely the domain blocks and range blocks. Domain block scaled in size to ½ times its original size. Each block range seeks similarities between the range blocks of all domain blocks. Then calculate the affine transformation to the i-th block range in the selected domain block. After that save the affine transformation coefficients and all parameters are stored in PIFs (Partition Iterated Function System).

Keywords : Digital Image , Fractal Compression , domain block , block range ,

(15)

BAB I

PENDAHULUAN

1.1 Latar Belakang

Data dan informasi adalah dua hal yang berbeda. Pada data terkandung suatu informasi. Namun tidak semua bagian data terkait dengan informasi tersebut atau pada suatu data terdapat bagian-bagian data yang berulang untuk mewakili informasi yang sama. Data atau informasi saat ini tidak hanya disajikan dalam bentuk teks semata, tetapi juga dapat disajikan dalam bentuk lain misalnya gambar (images) , suara (audio), maupun video. Situs web (website) yang kita jumpai di internet biasanya dibuat semenarik mungkin dengan menyertakan gambar.

Dapat dilihat bahwa teknologi digital saat ini mengalami perkembangan yang sangat pesat. Banyak peralatan digital yang dapat ditemui dalam kehidupan sehari-hari seperti komputer, kamera digital, dan sebagainya. Sehingga tidaklah mengherankan apabila saat ini banyak produk-produk digital yang dihasilkan. Salah satunya adalah citra digital. Citra digital sebenarnya merupakan sebuah citra yang diperoleh dari proses digitalisasi terhadap data citra analog [Munir, 2004]. Dibandingkan dengan data teks, citra mempunyai karakteristik tersendiri, yaitu citra merupakan data yang kaya dengan informasi.

(16)

besarnya ukuran file citra digital dengan kompresi. Hampir semua teknik kompresi memiliki keuntungan seperti di atas yaitu dapat mereduksi ukuran file citra digital, sehingga dapat meminimalisir semua kendala di atas. Akan tetapi dibalik keuntungan ini ada sisi lain yang merugikan yaitu turunnya kualitas citra.

Berdasarkan hasil pengujian yang pernah dilakukan peneliti terdahulu, menjabarkan metode yaitu kompresi Fraktal secara sequential, waktu untuk proses kompresi yang dilakukan pada setiap citra sangat bervariasi. Untuk citra dengan resolusi besar dan variasi warna yang banyak, waktu proses akan meningkat secara signifikan. Disinilah pemrosesan paralel akan mengurangi waktu pemrosesan citra. Metode Fractal pada image processing diharapkan agar mampu mendapat kualitas citra digital yang telah terkompres menjadi lebih maksimal. Dengan menganalisis metode tersebut, maka akan dapat diketahui parameter yang tepat untuk metode yang digunakan. Parameter yang tepat berguna untuk memaksimumkan kinerja metode yang digunakan dalam melakukan perbaikan suatu citra.

Berdasarkan penelititan terdahulu tentang metode fraktal yang pernah digunakan serta hal yang telah diuraikan diatas maka penulis ingin menganalisis algoritma kompresi citra dengan judul “Analisis Kompresi Citra Digital Dengan

Metode Fractal ”.

1.2 Rumusan Masalah

Rumusan masalah dalam penelitian ini adalah bagaimana menganalisis Metode Fraktal dalam mengkompresi suatu citra digital.

1.3 Batasan Masalah

Batasan masalah yang perlu dibuat adalah sebagai berikut :

(17)

1.4 Tujuan Penelitian

Adapun tujuan penulisan tugas akhir ini adalah untuk menganalisis dan mengetahui hasil kompresi citra digital dengan Metode Fraktal serta membuat perangkat lunak dengan menggunakan VB.net .

1.5 Manfaat Penelitian

Dengan adanya penelitian ini maka penulis dapat mengetahui kinerja metode dalam melakukan perbaikan suatu citra.

1.6 Metodologi Penelitian

Dalam penelitian ini, tahapan-tahapan yang akan dilalui adalah sebagai berikut: a. Studi Literatur

Metode ini dilaksanakan dengan melakukan studi kepustakaan yang relevan serta buku-buku maupun artikel-artikel atau e-book dan juga jurnal international yang didapatkan melalui internet.

b. Analisis

Pada tahap ini digunakan untuk mengolah data yang ada dan kemudian melakukan analisis terhadap hasil studi literatur yang diperoleh sehingga menjadi suatu informasi.

c. Perancangan Perangkat Lunak

Pada tahap ini digunakan seluruh hasil analisa terhadap studi literatur yang

dilakukan untuk merancang perangkat lunak yang akan dihasilkan. Dalam tahapan ini juga dilakukan perancangan model antarmuka serta proses kerja sistem untuk memudahkan dalam proses implementasi.

(18)

Pada tahap ini dilakukan pemasukan data serta memproses data untuk mendapatkan hasil apakah sudah sesuai dengan yang diharapkan. Pengujian adalah dengan melakukan perbandingan hasil sebelum dan sesudah proses kompresi.

e. Penyusunan Laporan Dalam Bentuk Skripsi

1.7 Sistematika Penulisan

Sistematika penulisan tugas akhir ini dibagi menjadi lima bab, yaitu sebagai berikut :

BAB I PENDAHULUAN

Bab ini menjelaskan mengenai latar belakang pemilihan judul skripsi “Analisis Kompresi Citra Digital dengan Metode Fraktal”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian dan sistematika penulisan skripsi.

BAB II TINJAUAN TEORETIS

Bab ini membahas teori-teori yang berkaitan dengan pengertian pengolahan citra, citra digital, dan kompresi citra serta pembahasan mengenai format file citra yang digunakan, proses kompresi citra dengan metode Fraktal secara umum, dan pengertian dari diagram alir

(flowchart).

BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab ini membahas tentang analisis dan perancangan sistem dengan menggunakan metode Fraktal .

(19)

Pada bab ini akan menjelaskan implementasi metode Fraktal yang digunakan, serta pengujian akan keberhasilan terhadap sistem yang telah dibangun.

BAB V KESIMPULAN DAN SARAN

(20)

BAB II

TINJAUAN TEORETIS

2.1 Citra Digital

Citra digital saat ini banyak digunakan dalam berbagai bidang. Mulai dari keperluan sehari hari seperti cetak foto, pemetaan hutan, identifikasi forensik, rekam medis dengan menggunakan citra kedokteran (medical images) sampai pada citra satelit. Hampir semua citra digital memerlukan media penyimpanan (storage) yang cukup besar. Sehingga hal ini menimbulkan masalah jika citra disimpan dalam database yang memiliki keterbatasan media penyimpanan. Masalah lain adalah jika diinginkan untuk mengirimkan citra digital dengan menggunakan jalur komunikasi atau internet. Dengan ukuran yang besar maka citra digital juga memerlukan waktu pengiriman yang lama. Sehingga diupayakan suatu teknik yang dapat mereduksi besarnya ukuran file citra digital dengan kompresi.

2.1.1 Pengertian Citra Digital

Menurut Sachs (1999, hal:1), citra digital merupakan suatu gambar yang tersusun dari

pixel, dimana tiap pixel merepresentasikan warna (tingkat keabuan untuk gambar hitam putih) pada suatu titik di gambar. Sedangkan menurut Fahmi (2007, hal:7), citra digital adalah gambar dua dimensi yang dapat ditampilkan pada layar monitor komputer sebagai himpunan berhingga (diskrit) nilai digital yang disebut dengan pixel

(picture elements).

(21)

Setiap pixel memiliki nilai (value atau number) yang menunjukkan intensitas keabuan pada pixel tersebut. Derajat keabuan dimana merepresentasikan grey level atau kode warna. Kisaran nilai ditentukan oleh bit yang dipakai dan akan menunjukkan resolusi aras abu-abu (grey level resolution).

1 bit –2 warna: [0,1] 4 bit –16 warna: [0,15] 8 bit –256 warna: [0,255]

24 bit –16.777.216 warna (true color) Kanal Merah -Red (R): [0,255] Kanal Hijau - Green (G): [0,255] Kanal Biru - Blue (B): [0,255]

Suatu citra dapat didefenisikan sebagai fungsi f(x,y) berukuran M baris dan N kolom, dengan x dan y adalah koordinat spasial, dan amplitudo f di titik koordinat

(x,y) dinamakan intensitas atau tingkat keabuan dari citra pada titik tersebut. Apabila nilai x,y, dan amplitudo f secara keseluruhan berhingga (finite) dan bernilai diskrit maka dapat dikatakan bahwa citra tersebut adalh citra digital. Gambar 2.2 menunjukkan posisi koordinat digital.

Gambar 2.1 Koordinat citra digital

Nilai Digital dan banyak bit :

M = banyak pixel per baris (panjang) N = banyak pixel per kolom (lebar) b = banyak / besar bit pada suatu citra

(22)

Berdasarkan cara penyimpanan atau pembentukannya, citra digital dibagi menjadi 2 jenis, yaitu :

1. Gambar Bitmap (raster), yaitu gambar yang terbentuk dari sekumpulan titik penyusun gambar (pixel). Gambar bitmap dipengaruhi oleh banyaknya pixel, sehingga semakin banyak jumlah pixel maka kualitas gambar semakin baik dan halus, begitu pula sebaliknya. Gambar bitmap biasanya diperoleh dari scanner, kamera digital, kamera handphone, dan sebagainya.

2. Gambar vektor, yaitu gambar yang terbentuk dari garis, kurva, dan bidang yang masing-masing merupakan suatu formulasi matematik. Jika gambar vektor diperbesar, maka kualitas gambarnya masih tetap baik dan tidak berubah. Gambar vektor biasanya dibuat dengan menggunakan aplikasi – aplikasi gambar vektor seperti Corel Draw, Adobe Illustrator, Macromedia Freehand, dan sebagainya (Alinurdin, 2006).

Berdasarkan nilai pixelnya, citra digital dibagi beberapa jenis, yaitu :

1. Citra Biner

Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai pixel yaitu hitam putih. Citra biner juga disebut sebagai citra B&W (black and white) atau citra monokrom. Hanya dibutuhkan 1 bit untuk mewakili nilai setiap pixel dari citra biner.

(23)

Gambar 2.2 citra biner monokrom

2. Citra grayscale

Citra grayscale merupakan citra digital yang hanya memiliki satu nilai kanal pada setiap pixelnya, dengan kata lain nilai bagian RED = GREEN= BLUE. Nilai tersebut digunakan untuk menunjukkan tingkat intensitas. Warna yang dimiliki adalah warna dari hitam, keabuan, dan putih. Tingkatan keabuan disini merupakan warna abu dengan berbagai tingkatan dari hitam hingga mendekati putih.

Berikut ini adalah contoh citra grayscale :

(24)

3. Citra warna (8 bit)

Setiap ppixel dari citra warna (8 bit) hanya diwakili oleh 8 bit dengan jumlah warna maksimum yang dapat digunakan adalah 256 warna. Ada dua jenis citra warna 8 bit. Pertama, citra warna 8 bit dengan menggunakan palet warna 256 dengan setiap paletnya memiliki pemetaan nilai (colormap) RGB tertentu, yang mana model ini lebih sering digunakan.

Kedua, setiap pixel memiliki format 8 bit, yang dinamakan 8 bit truecolor

sebagai berikut :

Bit-7 Bit-6 Bit-5 Bit-4 Bit-3 Bit-2 Bit-1 Bit-0

R R R G G G B B

4. Citra warna (16 bit)

Citra warna 16 bit biasanya disebut sebagai citra highcolordengan setiap pixelnya diwakili dengan 2 byte memory (16 bit). Warna 16 bit memiliki 65.536 warna. Dalam formasi bitnya, nilai merah dan biru mengambil tempat di bit 5 di kanan dan kiri. Komponen hijau memiliki 5 bit ditambah 1 bit ekstra. Pemilihan komponen hijau dengan deret 6 bit dikarenakan penglihatan manusia lebih sensitif terhadap warna hiijau.

Berikut adalah deret warna yang dihasilkan dari warna 16 bit : Bit

15 Bit 14

Bit 13

Bit 12

Bit 11

Bit 10

Bit 9

Bit 8

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

R R R R R G G G G G G B B B B B

5. Citra warna (24 bit)

(25)

seluruh warna yang dapat dilihat penglihatan manusia. Penglihatan manusia dipercaya hanya dapat membedakan hingga 10 juta warna saja.

Setiap poin informasi pixel (RGB) disimpan kkedalam 1 byte data. 8 bit pertama menyimpan nilai biru, kemudian diikuti dengan nilai hijau pada 8 bit kedua dan pada 8 bit terakhir merupakan warna merah.

Gambar berikut adalah contoh citra warna :

Gambar 2.4 Contoh Citra Warna

2.2 Kompresi Citra

Proses kompresi merupakan proses mereduksi ukuran suatu data untuk menghasilkan representase citra digital yang padat atau mampat namun tetap dapat mewakili kuantitas informasi yang terkandung pada data tersebut. Pada citra, video, dan audio, kompresi mengarah pada minimisasi jumlah bit rate untuk representase digital. Pada beberapa literature, istilah kompresi sering disebut juga source coding, data compression, bandwith compression, dan signal compression.

(26)

Kompresi citra (images compression) mempunyai tujuan meminimalkan kebutuhan memori untuk merepresentasikan sebuah citra digital. Prinsip umum yang digunakan pada proses kompresi citra digital adalah mengurangi duplikasi data di dalam citra sehingga memori yang dibutuhkan untuk merepresentasikan citra menjadi lebih sedikit dari pada citra digital aslinya. Terdapat dua proses utama dalam permasalahan kompresi citra digital.

a. Kompresi citra (images compression)

Pada proses ini citra digital dalam representasinya yang asli (belum dikompres) dikodekan dengan representasi yang meminimumkan kebutuhan memori. Citra dengan format bitmap pada umumnya tidak dalam bentuk kompresan. Citra yang sudah dikompres disimpan ke dalam arsip dengan menggunakan format tertentu. Kompresi berbasis transformasi citra merupakan kompresi yang bersifat lossy. Bagian ini menjelaskan model umum kompresi citra berbasis transformasi. (Putra, 2010).

Citra input citra

ukuran N x N terkompresi

Citra Hasil Citra

terkompresi

(a) (b)

Gambar 2.5 kompresi citra berbasis transformasi (a) proses kompresi

(b)proses dekompresi Bentuk subimage

ukuran n x n

Transformasi maju

kuantisasi

Pengkodean

decode

Transformasi balik

(27)

Seperti ditunjukkan pada gambar 2.6 (a), tahap pertama proses kompresi diawali dengan proses pembagian citra N x N menjadi beberapa subimage berukuran n x n, sehingga diperoleh (N/n)2 larik subimage ukuran n x n. tujuan pembagian ini adalah untuk melakukan dekorelasi pixel pada setiap subimage tau dengan kata lain mengurangi korelasi pixel antar sub-image berurutan. Nilai n merupakan nilai bilangan integer dengan pangkat 2. Tidak ada ketentuan berapa nilai n yang harus digunakan. Akan tetapi ukuran n yang paling sering digunakan adalah 8x8 atau 16x16 pixel. Pemilihan nilai n akan mempengaruhi kompleksitas komputasi proses kompresi. Tentu n juga bias bernilai sama dengan N. dalam kasus ini hanya terdapat 1 subimage yaitu sama dengan citra semula.

Tahap kedua adalah melakukan transformasi pada setiap subimage. Seperti transformasi affine, fourier, cosines, dan lainnya. Hasil tahap ini tentu koefisien-koefisien hasil proses transformasi.

Tahap ketiga adalah kuantisasi. Proses kuantisasi akan menghilangkan koefisien-koefisien yang mengandung informasi yang tidak signifikan. Koefisien-koefisien-koefisien ini tidak memiliki pengaruh yang besar pada hasil citra rekonstruksi.

Tahap terakhir adalah proses pengkodean (decoding).

c. Dekompresi citra (images decompression)

Pada proses dekompresi, citra yang sudah dikompresi harus dapat dikembalikan lagi menjadi representasi citra seperti citra aslinya. Proses ini diperlukan jika citra ingin ditampilkan ke layar atau disimpan ke dalam arsip dengan format yang tidak terkompres.

(28)

2.2.1 Kompresi Lossless

Pada kompresi jenis ini informasi yang terkandung pada citra hasil sama dengan informasi pada citra asli. Citra hasil proses kompresi dapat dikembalikan secara sempurna menjadi citra asli, tidak terjadi kehilangan informasi, dan tidak terjadi kesalahan informasi. Oleh karena itu metode ini disebut juga error free compression. Pada kompresi lossless, karena harus mempertahankan kesempurnaan informasi, sehingga hanya terdapat proses coding dan decoding, tidak terdapat proses kuantisasi. Kompresi lossless cocok diterapkan pada berkas basis data (database), spread sheet,

berkas word processing, citra biomedis, dan lain sebagainya. Misalnya pada citra atau gambar dimana metode ini akan menghasilkan hasil yang tepat sama dengan citra semula, pixel per pixel sehingga tidak ada informasi yang hilang akibat kompresi. Namun ratio kompresi (Rasio kompresi yaitu, ukuran file yang dikompresi dibanding yang tak terkompresi dari file) dengan metode ini sangat rendah.

2.2.2 Kompresi Lossy

(29)

2.3 Tipe File Citra Digital

2.3.1 JPEG(.jpg)

.jpg adalah format yang sangat umum digunakan saat ini khususnya untuk transmisi citra. Format ini digunakan untuk menyimpan citra hasil kompresi dengan metode

JPEG. JPEG biasanya digunakan untuk foto perts Group atau citra di website. JPEG

menggunakan kompresi tipe lossy. Kualitas JPEG 2000 bisa bervariasi tergantung setting kompresi yang digunakan.

2.3.2 Graphics Interchange Format(.gif)

Graphics Interchange Format(GIF) adalah sebuah format yang sering digunakan dalam dunia web maupun dalam dunia citra digital. Format ini sering digunakan karena ukurannya yang relati kecil dan juga banyaknya software editor gambar yang telah mendukung citra ini. GIF berukuran kecil karena membatasi jumlah warnanya sebanyak 256 warna sehingga dapat menghemat ukuran berkas. File ini menggunakan kompresi yang tidak menghilangkan data (lossles compression) tetapi penurunan jumlah warna menjadi 256 sering membuat gambar yang kaya warna seperti pemandangan menjadi tidak realistis.

2.3.3 BMP

BMP merupakan file gambar yang tidak terkompresi. Dan karena itu ukuran file BMP biasanya besar. File berukuran besar tidak tepat untuk transfer di internet karena akan memenuhi bandwidth dan menjadi lambat.

2.3.4 Bitmap

(30)

2.4 Metode Fraktal

Secara harfiah Fraktal (fractal) berasal dari bahasa latin yaitu fractus yang berarti pecah (broken) atau tidak teratur (irregular). Fraktal pertama kali diperkenalkan oleh Benoit B Mandelbrot sekitar tahun 1975 dalam bukunya yang berjudul “ The Fractal Geometri of Nature”. Sebelum Mandelbrot memperkenalkan istilah tersebut, nama umum untuk struktur semacamnya (misalnya bunga salju Koch) adalah kurva monster. Pembahasan fraktal berawal dari topic matematika murni yang berhubungan dengan chaos (seperti segitiga sierpinski, awan von-Koch, debu Cantor, Fournier). Idenya berasal dari seseorang matematikawan Benoit Mandelbrot. Fraktal bisa membantu menjelaskan banyak situasi yang sulit dideskripsikan menggunakan geometri klasik, dan sudah cukup banyak diaplikasikan dalam sains, teknologi, dan seni karya komputer. Dulu ide-ide konseptual fraktal muncul saat definisi-definisi tradisional geometri Euklides dan kalkulus gagal menganalisis objek-objek kurva monster tersebut. Secara umum, fraktal dikenal sebagai suatu bentuk geometri yang dapat dipecah-pecah menjadi beberapa bagian, di mana bagian-bagian tersebut merupakan bentuk yang sebelumnya dengan ukuran yang lebih kecil. Bentuk geometri ini pertama kali dikemukakan oleh Benoit Mandelbrot pada tahun 1975. Barnsley dan Hurd menggunakan konsep fraktal ini untuk mengemukakan suatu pendekatan kompresi baru.

Metode Fraktal merupakan suatu metode lossy untuk mengkompresi citra dengan menggunakan kurva fraktal. Sangat cocok untuk citra natural seperti pepohonan, pakis, pegunungan, danawan. Fractal Compression bersandar pada fakta bahwa dalam sebuah image, terdapat bagian-bagian image yang menyerupai bagian image yang lain. Metode Fraktal berkemampuan untuk membentuk long-range korelasi pada citra digital dan mampu bekerja secara efisien pada representasi frekuensi rendah. Metode fraktal yang digunakan bekerja dengan mecari kemiripan pada piksel-piksel citra, dan mengelompokkannya dalam klaster-klaster. Semakin tinggi tingkat kemiripan pada citra, rasio kompresi akan semakin baik.

(31)

bagian-bagian yang mirip tersebut menjadi data metematis yang disebut “kode fraktal”, yang akan digunakan untuk membentuk ulang citra yang dikompresi. Citra yang dikompresi dengan metode fraktal akan kehilangan resolusinya, sehingga memungkinkan untuk membentuk kembali citra tersebut dalam resolusi yang berbeda.

Metode yang digunakan dalam kompresi fraktal adalah tahapan proses kompresi, yaitu :

Blok Range 8x8

Blok Domain 8x8

[image:31.595.104.530.250.618.2]

Gambar 2.6 Standar Proses Kompresi Fraktal

Penskalaan

Uji Kemiripan

Parameter PIFS

(32)

Adapun algoritma untuk kompresi citra digital dengan fraktal adalah : a. Baca citra asli

b. Menentukan ukuran matriks citra asli c. Menentukan ukuran blok range

d. Menentukan ukuran blok domain

e. Blok domain diskalakan ukurannya menjadi ½ kali ukuran semula. f. Untuk setiap blok range :

1. Dicari kemiripan antara blok range ke i dengan semua blok domain.

2. Hitung transformasi affine untuk antara blok range ke i dengan blok domain yang terpilih.

3. Simpan koefisien transformasi affine ke i. g. Simpan semua parameter dalam PIFS.

Pengolahan domain blocks :

1. Buat “citra domain” yang merupakan rata-rata kelompok empat pixel dari citra asli. Ukuran citra domain adalah setengah dari ukuran citra asli.

2. Partisi “citra domain” menjadi blok-blok tumpang tindih dengan ukuran (16x16 atau 8x8 pixel).

3. Partisi setiap blok domain ke dalam 4 kuadrandan hitung nilai varian setiap kuadran.

4. Kelompokkan blok domain ke dalam 24 kelas, menurut urutan nilai varian dari kuadran di dalam blok range.

5. Setelah mengolah blok domain 16x16 pixel, prosedur diulang sampai mencapai ukuran blok terkecil seperti yang dinyatakan pada parameter partisi maksimum.

Pengolahan range blocks :

1. Partisi citra asli ke dalam blok-blok range.

(33)

3. Cari rantai kelas blok domain (pada 24 kelompok blok domain) untuk menemukan blok domain yang paling mirip dengan blok range menggunakan RMSE.

2.4.1 Transformasi Affine

Jenis transformasi objek yang paling banyak digunakan di dalam grafika komputer adalah transformasi affine. Pada dasarnya, transformasi merupakan suatu operasi modifikasi bentuk objek tanpa merusak bentuk dasar dari objek. Transformasi affine

merupakan transformasi yang mempertahankan garis-garis paralel. Metode transformasi affine ini menggabungkan proses dasar seperti translasi, rotasi, dan penskalaan ke dalam satu proses untuk mendapatkan citra output yang diinginkan. Transformasi affine sering digunakan untuk mewakili transformasi kontraktif untuk metode fraktal.

Rumus perhitungan transformasi affine dapat menggambarkan hubungan antara ketiga proses tersebut.

Secara matematis rumus transformasi affine adalah sebagai berikut.

B y x A y x    1 1 2 2 ……….………... (2.1)

Rumus berikut menggabungkan proses translasi sebesar (ti,tj), rotasi sebesar θ derajat, penskalaan sebesar (λi,λj) , dan pencukuran (shearing) (ρi,ρj).

(34)

Pada rumus diatas penyusutan dapat dilakukan dengan 0<|λ|<1, pembesaran dengan |λ| > 1, pencerminan dengan λ < 0, dan isotropik dapat dilakukan dengan λi = λj .

2.4.2 PIFS (Partition Iterated Function System)

Pada kenyataannya sangat sulit menemukan suatu sembarang citra yang self-similarity

dengan keseluruhan citra. IFS tidak mungkin diterapkan pada sembarang citra. Dengan kata lain IFS hanya dapat berlaku untuk objek-objek Fraktal (objek-objek yang memiliki kemiripan dengan diri sendiri secara sempurna) saja. Self-similarity

pada sembarang citra dapat diperoleh dengan mencari kemiripan lokal, yaitu mencari bagian-bagian tertentu pada citra yang mirip dengan bagian-bagian lain pada citra tersebut. Metode untuk mencari self-similarity lokal ini disebut dengan metode PIFS. Metode diterapkan untuk kompresi citra dan kini telah menjadi algoritma standar dalam pengkodean Fraktal (Fractal Coding) .

Dalam mencari kemiripan lokal suatu citra, PIFS membagi (partisi) citra ke dalam blok-blok besar yang disebut blok ranah (domain blok) dan blok-blok yang lebih kecil yang disebut blok jelajah (range blok). Blok ranah boleh saling tumpang tindih sedangkan blok jelajah tidak.

Transformasi wi dinyatakan dengan perluasan transformasi Affine berikut.

          ' ' ' z y x =wi                                                 i i i i o f e z y x s z y x 0 0 0 2 1 0 0 0 2 1 ………(2.3)

Jadi, titik (x,y) adalah sebuah pixel domain dengan nilai z, dan (x’,y’) adalah sebuah

pixel range dengan nilai baru z’. Koefisien ei dan fi mentranslasikan blok domain

kedalam posisi blok range ketika ukurannya mengecil dalam skala 2 kali.

(35)

2.4.3 Rasio Kompresi

Proses kompresi tentunya akan berdampak kepada banyak hal. Yang pertama adalah ukuran citra hasil kompresi. Ukuran citra diharapkan lebih kecil dari citra asal. Kedua adalah kualitas citra untuk input terhadap proses berikutnya. Sampai berapa persenkah citra asli bisa dikompresi ?

Rasio kompresi dapat dihitung dengan formula sebagai berikut:

Rasio kompresi= 

  

 

 100%

%

100 x

asemula ukurancitr

resi ahasilkomp ukurancitr

2.4.4 Kriteria Kompresi Citra

Ada dua jenis kriteria yang digunakan untuk mengukur kebenaran hasil proses kompresi, yaitu :

a. Kriteria kebenaran subjektif

Kriteria kebenaran subjektif dapat dilakukan dengan melakukan suatu penilaian terhadap citra secara langsung kepada orang-orang tentang kualitas hasil kompresi.

b. Kriteria kebenaran objektif

Kriteria kebenaran objektif ini dilakukan dengan menggunakan rumus yang merupakan fungsi dari citra asli dan citra hasil. Beberapa metode yang dapat digunakan diantaranya PSNR (Peak Signal to Noise Rasio) dan rasio kompresi citra (Darma,2010).

Menurut Sutoyo, 2009 terdapat empat hal yang digunakanuntuk mengukur kompresi citra digital, yaitu :

1. Waktu kompresi dan dekompresi

(36)

mampat. Algoritma pemampatan yang baik adalah algoritma yang membutuhkan waktu untuk kompresi dan dekompresi paling cepat.

2. Kebutuhan memori

Biasanya semakin besar presentase pemampatan, semakin kecil kebutuhan memori yang diperlukan sehingga kualitas citra makin berkurang. Dan

sebaliknya, semakin kecil presentase citra yang dimampatkan, semakin bagus kualitas hasil kompresi citra.

3. Kualitas pemampatan

Metode kompresi yang baik adalah metode kompresi yang mampu

mengembalikan citra hasil kompresi menjadi citra seperti semula tanpa merusak kualitas citra atau kehilangan informasi apapun. Baiasanya semakin berkualitas hasil kompresi, smakin besar pula memori yang dibutuhkan. Sebaliknya, semakin jelek kualitas hasil citra kompresi, semakin kecil pula kebutuhan memori yang dibutuhkan.

4. Format keluaran

(37)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Sistem

Dalam perancangan sebuah sistem diperlukan analisis untuk menentukan kebutuhan sistem. Dengan adanya analisis sistem, sistem yang dirancang diharapkan akan lebih baik dan memudahkan dalam pengembangan sistem selanjutnya. Tujuan dari analisis sistem ini sendiri adalah agar sistem yang dirancang menjadi tepat guna dan ketahanan dari sistem tersebut akan lebih terjaga.

3.1.1 Analisis Masalah

Analisis masalah sebuah sistem bisa dirancang dengan menggunakan cause-and-effect

analisis.

3.1.1.1 Cause-and-Effect analisis

[image:37.595.109.543.639.770.2]

Cause-and-Effect analisis merupakan teknik di mana masalah yang dipelajari untuk menentukan sebab dan efek. Dalam prakteknya, efek bisa menjadi gejala dari masalah yang lebih berakar yang pada gilirannya harus dianalisis sebab dan akibat sampai tidak menghasilkan gejala masalah lain. Seperti yang terlihat pada table 3.1.

Tabel 3.1 Cause-and-Effect Analysis

Cause-and-Effect Analysis System Improvement Objective Problem or

Opportunit

Cause and Effects System Objective System Constraint

Pada umumnya citra digital berformat JPG

1. Dibutuhkan media penyimpanan yang besar untuk

Diperlukan perangkat lunak yang dapat

(38)

memiliki ukuran yang besar

menyimpan citra berformat JPG. 2. Pengiriman file

citra melalui saluran komunikasi menjadi lambat.

menganalisis sebuah sistem metode fraktal yang mana parameter yg diukur berupa rasio kompresi dan waktu terbaik yg

dihasilkan.

menganalisis metode fractal

Diagram Ishikawa (disebut juga diagram ulang ikan atau diagram sebab-akibat) adalah diagram yang menunjukkan penyebab peristiwa tertentu. Umumnya diagram Ishikawa digunakan untuk desain produk, kontrol kualitas dan untuk mengidentifikasi faktor-faktor potensial yang menyebabkan efek keseluruhan. Diagram Ishikawa (fishbone diagram) biasanya digunakan untuk mengidentifikasi masalah yang ada pada sistem yang akan dirancang. Dengan diagram ini kita dapat mengidentifikasi, mengeksplorasi dan menggambarkan suatu masalah dengan mengikutsertakan sebab dan akibat dari permasalahan dalam visual grafis. Dengan demikian proses pencapaian sistem akan sangat dibantu dengan adanya Diagram Ishikawa ini.

Setiap penyebab atau alasan ketidaksempurnaan merupakan sumber dari permasalahan. Penyebab umumnya dikelompokkan ke dalam kategori utama untuk mengidentifikasi sumber-sumber masalahnya. Kategori biasanya meliputi:

 Manusia : Siapa saja yang terlibat dengan proses

 Metode : Bagaimana proses yang dilakukan dan persyaratan khusus untuk melakukannya, seperti kebijakan, prosedur, aturan, peraturan dan hukum  Mesin: Peralatan, komputer, peralatan dan lain-lain yang diperlukan untuk

menyelesaikan pekerjaan

 Material : bahan baku, suku cadang, pena, kertas, dll yang digunakan untuk menghasilkan produk akhir

(39)

 Lingkungan: Kondisi, seperti lokasi, waktu, suhu, dan budaya di mana proses tersebut beroperasi.

Permasalahan utama dari sistem yang akan dikembangkan pada skripsi ini adalah bagaimana menganalisis kompresi citra digital dengan metode fraktal. Selanjutnya masalah ini diuraikan ke beberapa kategori, antara lain : pengguna sistem, mesin, material dan metode. Berikut diagram Ishikawa untuk analisis permasalahan sistem:

butuh penyimpanan Umumnya file media yang besar citra JPG berukuran

besar

Lamanya waktu pengiriman

Penyimpanan Media

belum adanya yang terbatas Analisis kompresi citra

metode Fraktal

[image:39.595.98.572.285.555.2]

Proses pertukaran informasi lama

Gambar 3.1 Diagram Ishikawa untuk Analisis Permasalahan Sistem

Masalah utama ditunjukkan pada segi empat pada posisi paling kanan (bagian kepala) diagram ishikawa. Kategori ditunjukkan pada empat persegi panjang yang masing – masing terhubung ke garis utama, sedangkan sebab – akibat ditunjukkan pada dalam bentuk tanda panah horizontal pada masing – masing kategori masalah.

Mesin

Analisis Metode Fraktal untuk Kompresi citra

JPG

(40)

3.1.2 Analisis Persyaratan

Analisis Persyaratan sebuah sistem dikelompokkan ke dalam 2 bagian yaitu, analisis fungsional dan analisis non-fungsional.

3.1.2.1 Fungsional Sistem

Fungsional Sistem adalah aktivitas dan pelayanan yang harus dimiliki oleh sebuah sistem yang dapat berupa input, output, proses maupun data yang tersimpan.

Dalam penelitian ini sistem harus dapat:

1. Memanggil file citra dan menampilkan pada halaman form. 2. Melakukan koding nilai piksel citra yang dikompresi. 3. Melakukan kompresi file dengan metode yang diinput. 4. Menghitung rasio kompresi.

5. Menghitung waktu terbaik yang dihasilkan. 6. Menampilkan citra hasil kompresi.

3.1.2.2 Non Fungsional Sistem

Non Fungsional Sistem adalah karakteristik atau batasan yang menentukan kepuasan sebuah sistem seperti performa, kemudahan penggunaan, efisien serta dokumentasi yang mampu bekerja tanpa mengganggu fungsionalitas perangkat lunak lainnya.

(41)

nama file serta ukuran citra setelah kompresi dan setiap saat hasil rekaman dapat ditampilkan.

3.1.3 Pemodelan Sistem dengan Use Case

Pemodelan sistem dilakukan untuk memperoleh gambaran yang lebih jelas tentang objek apa saja yang akan berinteraksi dengan sistem serta hal-hal apa saja yang harus dilakukan oleh sebuah sistem sehingga sistem dapat berfungsi dengan baik sesuai dengan fungsionalitasnya. Pada penelitian ini dilakukan analisis dan merancang perangkat lunak pengkompresian file citra yang bertipe JPG dengan metode Fraktal.

Metode Fraktal merupakan metode yang digunakan bekerja dengan mecari kemiripan pada piksel-piksel citra, dan mengelompokkannya dalam klaster-klaster. Semakin tinggi tingkat kemiripan pada citra, rasio kompresi akan semakin baik.

Langkah-langkah pengkodean citra dengan Fraktal adalah :

1. Tentukan parameter untuk pemanpatan, yang terdiri atas nama file, ukuran file, partisi eksponen minimum, dan eksponen maksimum yang akan menentukan ukuran blok ranah dan jelajah serta nilai toleran.

2. Baca file yang akan dimampatkan (yang dinyatakan dengan parameter nama file). 3. Pengolahan domain blocks :

1. Buat “citra domain” yang merupakan rata-rata kelompok empat pixel dari citra asli. Ukuran citra domain adalah setengah dari ukuran citra asli.

6. Partisi “citra domain” menjadi blok-blok tumpang tindih dengan ukuran (16x16 atau 8x8 pixel).

7. Partisi setiap blok domain ke dalam 4 kuadrandan hitung nilai varian setiap kuadran.

8. Kelompokkan blok domain ke dalam 24 kelas, menurut urutan nilai varian dari kuadran di dalam blok ranah.

(42)

4. Simpan parameter-parameter yang terdiri atas ukuran citra, partisi maksimum, partisi minimum, nilai maksimum dan nilai minimum ke suatu file.

5. Pengolahan range blocks :

4. Partisi citra asli ke dalam blok-blok range dengan metode quadtree. Jika partisi eksponen maksimum belum tercapai, maka partisi ulang sampai partisi eksponen minimum tercapai.

5. Kelompokkan blok-blok range ke dalam 24 kelas berdasarkan urutan nilai varian dari kuadran dalam setiap blok, seperti yang dilakukan pada blok domain.

6. Cari rantai kelas blok domain (pada 24 kelompok blok domain) untuk menemukan blok domain yang paling mirip dengan blok range menggunakan RMSE.

Berdasarkan informasi kebutuhan sistem dan aktor yang berperan, diagram use case berikut dirancang sebagai pemodelan persyaratan sistem.

3.1.3.1 Diagram Use Case

Pada sistem ini pemodelan kebutuhan fungsional dimodelkan menggunakan use case diagram. Diagram use case merupakan diagram yang memodelkan aspek perilaku sistem. Masing- masing diagram use case memiliki actor, use case dan Squence

Diagram. Pada sistem ini actor hanya sebagai pengguna (user) yang memiliki beberapa aktivitas yang terdapat dalam sistem, yaitu melakukan kompresi dan dekompresi file citra seperti pada Gambar 3.2

System <<extends>>

<<extends>> User

<<extends>> Kompresi

Input citra

Kompres

(43)

Gbr. 3.2 Use Case Diagram

Diagram use case yang ditunjukkan pada Gambar 3.2 terdapat satu aktor yaitu

user. Pertama, user melakukan kompresi file citra dengan menginputkan file yang belum terkompresi berupa file citra asli yang mempunyai tipe *.jpg dan juga berisikan materi tentang metode fraktal yang digunakan. Kedua, user dapat melakukan proses kompresi.

[image:43.595.129.534.307.588.2]

Dokumentasi naratif untuk setiap use case pada proses kompresi yang terdapat dalam diagram use case di atas dapat di lihat pada Tabel 3.2.

Tabel 3.2 Dokumentasi Naratif Use Case Kompresi

Nama use case Kontrol Proses Kompresi

Aktor User

Deskripsi Use case yang mendeskripsikan fungsi pengendalian proses yang berlangsung selama

proses kompresi. Pengendalian proses dilakukan

berdasarkan informasi pada bagian awal pesan

yang menunjuk pada urutan proses yang telah

dilakukan sebelumnya.

Dengan mengetahui urutan yang telah dilakukan

sebelumnya nantinya akan diputuskan apa saja

proses yang akan dikerjakan selanjutnya.

Pre-condition Kompresi metode yang digunakan terdapat pada

tampilan awal dan dapat dipilih sesuai dengan

[image:43.595.130.534.624.762.2]

kebutuhan.

Tabel 3.3 Dokumentasi Naratif Use Case Kompresi lanjutan

Typical course of

event

Aksi actor Respon system

Langkah 1: User

memanggil file citra yang

berformat JPG.

Langkah 3: User memilih

salah satu file citra dan

Langkah 2: Sistem merespon

dengan menampilkan kotak dialog

yang berisi daftar file citra yang

berformat JPG.

(44)

memilih tombol Open.

Langkah 5: User memilih

salah satu tombol proses

kompresi metode yang

akan digunakan.

Langkah 6: User memilih

tombol Save untuk

menyimpan hasil

kompresi.

citra pada halaman program.

Langkah 7: Sistem melakukan

kompresi dan menyimpan file citra

hasil kompresi serta menampilkan

hasil berupa rasio kompresi ,

ukuran dan waktu terbaik yang

dihasilkan.

Alternate course Aksi actor Respon system

- -

Post condition Citra telah dikompresi sesuai dengan metode

3.1.4 Bahasa Pemrograman

Sistem ini akan dibangun menggunakan bahasa pemograman Microsoft Visual Studio 2008 dan akan menampilkan hasil pengujian dengan menggunakan Crystal Report 2008.

3.2 Perancangan Sistem

Perancangan sistem dilakukan agar memudahkan implementasi dalam pengembangan sistem.Berikut ini dijelaskan perancangan sistem dengan menggunakan flowchart dan perancangan antarmuka sistem (interface).

3.2.1 Activity Diagram

Activity Diagram adalah diagram aktivitas dari sistem kompresi yang dilakukan user

(45)

User: User Kompresi: ActionEvent

Gbr. 3.3 Activity Diagram

3.2.2 Flowchart

Flowchart merupakan gambaran dari langkah-langkah dan urutan-urutan prosedur dari suatu program. Tujuan utama dari penggunaan flowchart adalah untuk menggambarkan suatu tahapan penyelesaian masalah secara sederhana, terurai, rapi dan jelas dengan menggunakan simbol-simbol yang standar. Dalam perancangan aplikasi ini digunakan diagram alir (flowchart) yang menjelaskan cara kerja dari metode fraktal.

Input File

Baca Image

Kompresi File Kompresi

(46)

3.2.2.1 Flowchart Kompresi Citra

[image:46.595.233.373.158.535.2]

Gambar 3.4 Flowchart Sistem Kompresi Citra

Start

Citra Asli

Pengkodean RGB

Kompresi Citra

Hitung rasio dan waktu yang dihasilkan

Selesai

(47)

3.2.2.2 Flowchart Metode Fraktal

Flow chart proses kompresi citra digital menggunakan metode fraktal dapat dilihat pada gambar dibawah ini.

T

Y

Gbr 3.5 Flowchart Metode Fraktal

Start

Menentuan blok range dan blok domain

Uji kemiripan blok range terhadap blok domain

Transformasi Affine

PIFS

End Input Citra

Penskalaan blok domain

Mencari kemiripan antara blok domain

dan blok range

Hitung Rasio kompresi

(48)

3.2.2.3Pseudocode Kompresi Citra Fraktal

Berikut adalah algoritma kompresi citra fraktal: Algoritma Kompresi Citra Fraktal {input: citra I(NxN pixel), n(ukuran blok jelajah); output: PIFS}

Partisi citra menjadi blok jelajah(R) dengan ukuran n Partisi citra menjadi blok ranah(D) dengan ukuran 2n For i = 1 to (N/n)2 do

w = -1, dom = -1 counter = infinity for j = 1 to(N-2n+1)2 do

for k = 0 to do A = Wk(Dj) s = d(A, Ri) If s < counter then counter = s

w = Wk, dom = j end if

end for end for

simpan transformasi w dan dom end for

(49)

3.3 Perancangan Antar Muka (Interface)

Setelah melakukan analisa terhadap proses kerja dari kompresi citra digital, kemudian dilakukan suatu perancangan antar muka yang akan digunakan sebagai media interaksi antara pengguna dan sistem yang dirancang. Antarmuka dirancang sedemikian mungkin agar memudahkan user dalam menggunakan suatu perangkat lunak. Dalam pengembangan suatu perangkat lunak perancangan antarmuka sistem dilakukan sebelum tahap implementasi agar memudahkan pengembangan sistem. Perancangan antar muka perangkat lunak ini terdiri dari:

6.3.1 Halaman Metode Fraktal

[image:49.595.106.513.551.754.2]

Halaman ini berisi tentang tampilan awal sistem yang telah dibuat pada saat dijalankan. Yang mana pada halaman ini akan menampilkan fraktal, informasi, dan about. Dimana dalam setiap menu akan menampilkan isi dari menu yang mempunyai fungsi yang tidak sama satu dengan yang lainnya. Pada menu fractal terdapat menu kompresi, yang mana menampilkan halaman kompresi dimana dalam halaman ini dilakukan proses kompresi yang bagiannya terdapat browser image,kompres, dan save. Pada menu informasi terdapat suatu materi yang berhubungan dengan kompresi citra digital dengan metode fraktal. Dan pada menu about menampilkan informasi tentang user. Rancangan halaman yang menampilkan metode fraktal dapat dilihat pada gambar berikut ini :

Gambar 3.6 Rancangan Antarmuka Halaman Metode Fraktal

Kompresi Citra Fraktal ─ □ X

Fraktal

Informasi

About

(50)
[image:50.595.110.549.131.439.2]

3.3.1 Halaman Hasil

Gambar 3.7 Rancangan Antarmuka Halaman Hasil

Halaman ini berisi tentang tampilan proses dan hasil. Yang mana pada halaman Kompresi Fraktal, akan dilakukan proses browser image yang mana kita mengambil image yang akan dikompresi. Setelah muncul gambar yang akan dikompresi, kemudian lakukan kompresi image. Kemudian akan muncul hasil kompresi citra, yang mana pada halaman tersebut akan muncul waktu terbaik yang dihasilkan dan rasio kompresi. Dan save file yang telah dikompresi.

Kompresi Citra Fraktal ─ □ X

Fraktal

Informasi

About

KompresiFraktal ─ □ X

Browser image

Kompres

(51)

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1 Implementasi Sistem

Penentuan berbagai kriteria yang dibutuhkan untuk membangun sistem telah dilakukan pada tahap analisis dan perancangan sistem. Selanjutnya, berdasarkan hasil analisis dan perancangan sistem tersebut, dilakukan implementasi pembangunan sistem. Implementasi dilakukan sesuai dengan perancangan yang telah didesain sebelumnya. Implementasi sistem dibangun dengan menggunakan Microsoft Visual Studio 2008. Perancangan yang baik akan memudahkan pengembangan sistem dalam tahap implementasi.

4.1.1 Kompresi Berformat JPEG(.jpg)

Perancangan aplikasi kompresi fraktal terdiri atas perancangan kompresi dan waktu terbaik yang dihasilkan. Kompresi fraktal akan mengkompresi file berformat JPEG(.jpg) menggunakan metode fraktal sehingga meminimalkan kebutuhan memori untuk merepresentasikan sebuah citra digital dari beberapa tipe file. Proses dimulai dengan membagi pixel-pixel pada image tersebut menjadi dua blok, yaitu blok domain

(52)

Misalkan terdapat sebuah citra dengan nilai pixel sebagai berikut :

Berikut ini adalah langkah-langkah kompresi citra yang dilakukan terhadap pixel-pixel

di atas menggunakan metode fraktal :

1. Menentukan ukuran blok range dan ukuran blok domain dan mempartisi citranya

R1 R2

52 55 61 66 70 61 64 73 63 59 55 90 109 85 69 72 62 59 68 113 144 104 66 73 63 58 71 122 154 106 70 69 67 61 68 104 126 88 68 70 79 65 60 70 77 68 58 75 85 71 64 59 55 61 65 83 87 79 69 68 65 76 78 94

R3 R4

Gambar 4.2 Blok range

[image:52.595.103.532.87.315.2]

52 55 61 66 70 61 64 73 63 59 55 90 109 85 69 72 62 59 68 113 144 104 66 73 63 58 71 122 154 106 70 69 67 61 68 104 126 88 68 70 79 65 60 70 77 68 58 75 85 71 64 59 55 61 65 83 87 79 69 68 65 76 78 94

Gambar 4.3 Blok domain

Gambar 4.1 Potongan pixel dari contoh citra

[image:52.595.213.421.426.737.2]
(53)

2. Blok domain diskalakan ukurannya menjadi ½ kali ukuran semula, yaitu :

1. Nilai domain pada range pertama :

57.25

4 229 4 59 63 55 52      68 4 272 4 90 55 66 61      5 . 60 4 242 4 58 63 59 62      5 . 93 4 374 4 122 71 113 68     

2. Nilai domain pada range kedua :

25 . 81 4 325 4 85 109 61 70      127 4 508 4 106 154 104

144  

5 . 69 4 278 4 72 69 73

64  

5 . 69 4 278 4 69 70 73

66  

3. Nilai domain pada range ketiga :

68 4 272 4 65 79 61

67  

(54)

4. Nilai domain pada range keempat : 75 . 89 4 359 4 68 77 88 126      25 . 64 4 257 4 76 65 61 55      75 . 67 4 271 4 75 58 70 68      80 4 320 4 94 78 83 65     

Maka didapatkan blok domain yang diskalakan menjadi :

57.25 68 81.25 69.5

60.5 93.5 127 69.5

68 75.5 89.75 67.75

80.5 65 64.25 80

D

Gambar 4.4 Blok Domain yang diskalakan

Dengan menggunakan RMS, akan dicari kemiripan antara blok range dan blok

domain yang sudah diskalakan menjadi 1/2 ukuran blok domain semula. Rumus yang digunakan untuk mencari RMS yaitu :

drms=  ni

ridi

n 1

2 1

……… (4.1)

Keterangan :

ri = nilai intensitas blok range di = nilai intensitas blok domain n = jumlah pixel pada citra

1. Mencari Nilai RMS pada Blok Range Pertama(R1)

52 55 61 66

18 59 55 90

62 59 68 113

[image:54.595.124.306.79.250.2]

63 58 71 122

(55)

drms=  ni

ridi

n 1

2 1

(drms)1=  161

2

16 1

i ri di

=

 

2

16 16 2 3 3 2 2 2 2 1 1 16 1 d r ... d r d r d

r        

=

52 57.25

 

2 55 68

 

2 61 81.25

2 ...

122 80

2 16 1        

=

-5.25

   

2 -13 2 20.25

2 ...

 

42 2 16 1    

= 12413.3

16 1

= 6.96

16 111.41

[image:55.595.145.455.103.367.2]

2. Mencari Nilai RMS pada Blok Range Kedua(R2)

Gambar 4.6 Blok R2

(drms)2=  in

ridi

n 1

2 1

=

 

2

16 16 2 3 3 2 2 2 2 1 1 16 1 d r ... d r d r d

r        

=

70 57.25

 

2 61 68

 

2 64 81.25

2 ...

69 80

2 16 1        

=

12.75

   

2 -72 -17.25

2 ...

 

-112 16 1    

= 20733.3 16

1

70 61 64 73

109 85 69 72

144 104 66 73

(56)

= 16 99 . 143 = 8.99

3. Mencari Nilai RMS pada Blok Range Ketiga(R3)

67 61 68 104

79 65 60 70

85 71 64 59

87 79 69 58

Gambar 4.7 Gambar Blok R3

(drms)3=  161

2

16 1

i ri di

=

 

2

16 16 2 3 3 2 2 2 2 1 1 16 1 d r ... d r d r d

r        

=

67-57.25

 

2 61-68

 

2 68-81.25

2 ...

68-80

2 16 1    

=

    

9.752 7 2 -13.25

2 ...

 

-12 2 16 1    

= 8607.3

16 1 = 16 92.77 = 5.79

4. Mencari Nilai RMS pada Blok Range Keempat(R4)

126 88 68 70

77 68 58 75

55 61 65 83

[image:56.595.221.410.613.693.2]

65 76 78 94

(57)

(drms)4=  161

2

16 1

i ri di

=

 

2

16 16 2 3 3 2 2 2 2 1 1 16 1 d r ... d r d r d

r        

=

126-57.25

 

2 88-68

 

2 68-81.25

2 ...

94-80

2 16 1    

=

68.75

   

2 20 2 -13.25

2 ...

 

14 2 16 1    

= 12986.8

1 16 = 16 113.95 = 7.12

Setelah diperoleh drms dari masing-masik blok domain terhadap blok range, tentukan drms manakah yang memiliki nilai paling kecil. Nilai drms paling kecil menandakan persentase kemiripan paling besar. Berdasarkan perhitungan di atas, yang memiliki drms paling kecil adalah (drms)3 dan (drms)4 .

Blok yang terpilih akan diproses menggunakan Transformasi Affine antara blok range ke I dengan blok domain yang terpilih untuk memperoleh nilai yang akan disimpan dalam koefisien PIFS(s, o, ei dan fi ).

           ' ' ' z y x

=wi

                                                i i i i o f e z y x s z y x 0 0 0 2 1 0 0 0 2 1 '

……… (4.2)

Koefisien ei dan fi menyatakan pergeseran sudut kiri blok domain yang telah

diskalakan menjadi ke sudut kiri blok range yang bersesuaian. Sedangkan koefisien si

dan oi dihitung dengan menggunakan rumus berikut :

Mencari nilai s :

70 61 64 73

109 85 69 72

144 104 66 73

154 106 70 69

(58)

s=

          

n

i di ni di n

n

i diri in di ni ri n 1 2 1 2 2

1 1 1

2

... .. (4.3)

dan

o =

2 1 1 n n i n i di s i r

    

………. (4.4)

Sumber : Darma, 2010

Di bawah ini pencarian nilai si dan oi dengan menggunakan rumus di atas :

Mencari nilai s :

s =

    

     

n

i di ni di n

n

i diri ni di ni ri n 1 2 1 2 2

1 1 1

2

s =

              16 1 2 16 1 2 2 16 16

1 161 161

2 16

i di i di i diri i di i ri

s=

   

 

 

 

                             2 16 d ... 3 d 2 d 1 d 2 16 d ... 2 3 d 2 2 d 2 1 d 2 16 16 r ... 3 r 2 r 1 r 16 d ... 3 d 2 d 1 d 16 r 16 d ... 3 r 3 d 2 r 2 d 1 r 1 d 2 16

s=

 

 

 

 

                             2 80 ... 81.25 68 57.25 2 80 ... 2 81.25 2 68 2 57.25 2 16 69 ... 64 61 70 80 ... 81.25 68 57.25 80x69 ... 81.25x64 68x61 57.25x70 2 16 =

 

2
(59)

Mencari nilai o:

o =

2

1 1

n n

i ri s in di     

=

2 16 16

1 161

 i ris i di

=

256 ... 075 . 1 <

Gambar

Gambar 2.1 Koordinat citra digital
Gambar 2.2 citra biner monokrom
Gambar 2.4 Contoh Citra Warna
Gambar 2.5 kompresi citra berbasis transformasi (a) proses kompresi
+7

Referensi

Dokumen terkait

Hasil penyusunan vector disusun kembali melalui proses perulangan untuk mengembalikan setiap bit pikselnya program kompresi ini dapat digunakan untuk mengurangi ukuran file

Nelson dan Gailly (1999) juga menyatakan bahwa kompresi citra dengan fraktal memiliki waktu dekompresi yang cepat serta bersifat resolution independence, yang artinya

Kompresi JPEG 2000 merupakan sebuah kompresi citra digital yang berbasis transformasi wavelet diskrit (DWT) dan termasuk metode kompresi yang simetris, yaitu

Serta faktor kuantisasi yang digunakan dalam kompresi citra menggunakan metode Transformasi Walsh mempengaruhi ukuran file hasil kompresi dan persentase dari rasio

Secara umum kompresi menggunakan fraktal dilakukan dengan membagi citra asli menjadi beberapa blok yang tidak saling beririsan (non overlapping) yang dinamakan dengan

Resampling adalah sebuah proses untuk mengubah dimensi dari suatu citra digital. Ada dua jenis dari resampling, yaitu down-sampling untuk mengurangi ukuran, dan

Kompresi Citra adalah aplikasi kompresi data yang dilakukan terhadap citra digital dengan tujuan untuk mengurangi redundansi dari data-data yang terdapat dalam citra

KOMPRESI CITRA Kompresi Citra adalah aplikasi kompresi data yang dilakukan terhadap citra digital dengan tujuan untuk mengurangi redundansi dari data-data yang