• Tidak ada hasil yang ditemukan

SKRIPSI Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains Program Studi Ilmu Komputer

N/A
N/A
Protected

Academic year: 2019

Membagikan "SKRIPSI Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains Program Studi Ilmu Komputer"

Copied!
111
0
0

Teks penuh

(1)

PENGGUNAAN MATRIK KONVOLUSI

UNTUK EFEK EMBOSS PADA SUATU CITRA

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Sains

Program Studi Ilmu Komputer

Oleh:

LENY SUSILAWATI ANGGRAINI

NIM 023124040

PROGRAM STUDI ILMU KOMPUTER

JURUSAN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(2)
(3)
(4)

Mereka yang memulai aktivitas dengan

penuh keyakinan boleh jadi ditengah

jalan akan gagal tersandung keraguan.

Sebaliknya, mereka yang memulai dengan

keraguan bukan tidak mungkin di tengah

jalan bakal mendapat pencerahan.(

Sir Francis)

Kupersembahkan Skripsiku ini untuk:

Allah Bapa di Surga

Kedua Orang Tuaku dan Pakde Parman

Saudara-saudaraku ( Mbak Gesti, Mas Win, Mas Indra,

Mas Joko, Novan, Wine,Wikri, Wildan, Winata, Lina).

(5)

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian dari orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta, 27 Maret 2007 Penulis

(6)

ABSTRAK

PENGGUNAAN MATRIK KONVOLUSI

UNTUK EFEK EMBOSS PADA SUATU CITRA

Oleh :

Leny Susilawati Anggraini

(7)

ABSTRACT

THE USE OF CONVOLUTION MATRIK TO MAKE AN EMBOSS EFFECT ON AN IMAGE

By :

Leny Susilawati Anggraini

(8)

KATA PENGANTAR

Puji syukur kami panjatkan kepada Tuhan dan Bunda Maria atas segala kasih dan berkat yang telah dilimpahkan kepada kami sehingga kami dapat menyelesaikan skripsi yang berjudul “Penggunaan Matrik Konvolusi Untuk Efek Emboss Pada Suatu Citra”. Skripsi ini kami susun untuk memenuhi salah satu syarat memperoleh gelar sarjana sains dari Universitas Sanata Dharma.

Pada kesempatan ini, penulis ingin menyampaikan ucapan terima kasih kepada :

1. Bpk. Ir. Ign. Aris Dwiatmoko, M.Sc. selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam.

2. Ibu. Paulina Heruningsih Prima Rosa, S.Si., M.Sc. selaku Kepala Program Studi Ilmu Komputer.

3. Bpk. Iwan Binanto S.Kom. selaku dosen pembimbing akademik yang telah memberikan bimbingan dan pengarahan sejak awal kuliah sampai terselesaikannya Tugas Akhir ini.

4. Bpk. Joko Nugroho, S.Si., selaku dosen pembimbing skripsi yang telah membantu, memberi semangat dan pengarahan kepada kami sehingga skripsi ini dapat selesai.

5. Ibu. A. Rita Widiarti, S.Si., M.Kom. selaku dosen pembimbing akademik dan dosen penguji.

(9)

7. Staf pengajar, Staf sekretariat (Mas Tukijo dan Mbak Linda) dan staf LAB (Mas Widodo dan Mas Susilo) Fakultas MIPA yang telah banyak membantu kami selama perkuliahan sampai selesai.

8. Kedua Orang tuaku, Pakde Parman, saudara-saudaraku (Mbak Gesti, Mas Win, Mas Indra, Mas Joko, Novan, Lina, Wine, Wikri, Wildan, Winata dan Mugex) teimakasih atas dukungan dan doanya.

9. Mas Heru, thanks atas doa, dukungan, perhatian dan waktunya untuk menemaniku dalam mengerjakan Skripsi ini.

10.Sahabatku Ari, Risma, Mayonx, Agnes, Nita, Hastin, Shinta, T2k dan Paul terimakasih atas kebersamaannya selama ini.

11.Teman-teman kuliahku Rini, Tiwix, Eksi, Ika, Fenny, Bon2, Marto, Koming dan semuanya, terimakasih atas doa, dan dukungannya.

12.Almamaterku Ikom 2002. Terima kasih atas kebersamaan kita selama menempuh kuliah.

Penulis menyadari bahwa skripsi ini masih memiliki banyak kekurangan. Oleh karena itu, penulis menerima masukan dan saran agar bisa berkembang dan semakin baik lagi. Semoga Skripsi ini berguna bagi para pembaca.

(10)

DAFTAR ISI

HALAMAN JUDUL... i

HALAMAN PERSETUJUAN PEMBIMBING... ii

HALAMAN PENGESAHAN... iii

HALAMAN PERSEMBAHAN... iv

PERNYATAAN KEASLIAN KARYA... v

ABSTRAK... vi

ABSTRACT... vii

KATA PENGANTAR... viii

DAFTAR ISI... x

DAFTAR GAMBAR... xii

BAB I PENDAHULUAN... 1

1.1 Latar Belakang Masalah... 1

1.2 Rumusan Masalah ... 2

1.3 Batasan Masalah ... 2

1.4 Tujuan Penelitian ... 3

1.5 Manfaat Penelitian ... 3

1.6 Sistematika Penulisan ... 3

1.7 Metodologi Penelitian ... 4

BAB II DASAR TEORI... 6

2.1 Citra... 6

(11)

a. Citra Biner ... 7

b. Warna ... 8

c. Greyscale... 9

2.3 Pengolahan Citra Digital... 11

1. Aras Titik ... 14

2. Aras Lokal... 16

3. Aras Global ... 17

4. Aras Objek ... 17

2.4 Operasi Konvolusi ... 17

2.5 Efek Emboss ... 24

2.6 Pemrograman Delphi ... 26

2.7 Adope Photoshop ... 27

2.8 Macromedia Flash Mx ... 28

BAB III ANALISIS DAN PERANCANGAN SISTEM... 29

3.1 Analisis Sistem... 29

3.1.1 Gambaran Umum Sistem ... 29

3.1.2 Analisis Kebutuhan ... 29

3.2 Perancangan Proses... 31

3.3 Perancangan Menu... 36

3.4 Perancangan Interface... 37

BAB IV IMPLEMENTASI... 41

(12)

4.1.1 Halaman Pembuka ... 41

4.1.2 Form Emboss ... 42

4.1.3 Form Matrik Warna ... 45

4.1.4 Form About ... 46

4.1.5 Form Help ... 46

4.2 Pembahasan... 47

4.2.1 Mengubah Citra Berwarna Menjadi Greyscale... 47

4.2.2 Hasil Emboss Greyscale... 48

4.2.3 Hasil Emboss Warna... 56

BAB V KESIMPULAN DAN SARAN... 66

5.1. Kesimpulan ... 66

5.2 Saran ... 67

DAFTAR PUSTAKA... 68

(13)

DAFTAR GAMBAR

Gambar 2.1 Vektor warna dalam ruang tiga dimensi ... 9

Gambar 2.2 Kubus warna RGB ... 9

Gambar 2.3 Blok diagram pengolahan citra ... 11

Gambar 2.4 Operasi aras titik pada citra digital... 15

Gambar 2.5 Operasi aras lokal pada citra digital ... 16

Gambar 2.6 Operasi aras global pada citra digital ... 17

Gambar 2.7 Ilustrasi Konvolusi ... 19

Gambar2.8 Pixel-pixel pinggir (yang tidak terarsir) tidak dikonvolusikan ... 23

Gambar 2.9 Matrik bertetangga dengan pixel (i,j) dengan matrik filter 3 x 3 .. 23

Gambar 2.10 Matrik bertetangga dengan pixel (i,j) dengan matrik filter 3 x 3 23 Gambar 2.11 Matrik bertetangga dengan pixel (i,j) dengan matrik filter 7 x 7 24 Gambar 2.12 hasil konvolusi setelah ditambah 128 ... 26

Gambar 3.1 flowchart program keseluruhan ... 32

Gambar 3.2 flowchart pilih emboss ... 33

Gambar 3.3 Flowchart Greyscale... 34

Gambar 3.4 Flowchart Proses Emboss ... 35

Gambar 4.1 Halaman pembuka... 41

Gambar 4.2 Form Emboss ... 42

Gambar 4.3 Open Picture Dialog... 43

Gambar 4.4 menampilkan gambar pada TImage foto awal ... 43

Gambar 4.5 menampilkan hasil emboss pada TImage foto hasil ... 44

(14)

Gambar 4.7 Form Matrik Warna ... 45

Gambar 4.8 Form About ... 46

Gambar 4.9 Form Help ... 46

Gambar 4.10 Citra asli dan Citra Greyscale... 48

Gambar 4.11 Hasil emboss Grey dengan jumlah elemen matrik filter < 0... 49

Gambar 4.12 Hasil emboss Grey dengan jumlah elemen matrik filter > 0... 50

Gambar 4.13 Hasil emboss Grey dengan jumlah elemen matrik filter = 0... 51

Gambar 4.14 perbandingan gambar dengan letak elemen yang berbeda... 53

Gambar 4.15 perbandingan gambar dengan nilai absolute yang berbeda ... 55

Gambar 4.16 Hasil emboss greycale... 56

Gambar 4.17 Hasil emboss warna dengan jumlah elemen matrik filter < 0... 58

Gambar 4.18 Hasil emboss warna dengan jumlah elemen matrik filter = 0... 59

Gambar 4.19 Hasil emboss warna dengan jumlah elemen matrik filter > 0... 60

Gambar 4.20 Perbandingan gambar dengan letak elemen yang berbeda ... 61

Gambar 4.21 Perbandingan gambar dengan nilai absolute yang berbeda ... 64

(15)

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Pada akhir abad ke 20 ilmu dan teknologi berkembang semakin pesat, termasuk di dalamnya teknik komputer. Komputer pada awalnya digunakan sebagai alat bantu untuk mempercepat proses menghitung. Dalam perkembangan selanjutnya, komputer dapat digunakan sebagai pengolah informasi yang datanya tidak hanya berupa angka saja, tapi dapat berupa teks, gambar, audio (bunyi, suara, musik), dan video. Salah satu perangkat lunak yang berkembang saat ini adalah perangkat lunak untuk pengolahan citra, yang juga didukung dengan kemajuan teknologi optik dan digital. Aplikasi yang tersedia untuk membantu proses pengolahan citra antara lain seperti : paint, photoshop, coreldraw, dan masih banyak lagi.

(16)

Salah satu efek penajaman fitur yang dapat diberikan pada suatu citra adalah dengan memberikan efek emboss. Pemberian efek emboss pada sebuah citra ini akan mengakibatkan sebagian obyek citra terlihat lebih dekat atau jauh dari citra latarnya, sehingga dapat bermanfat bagi pemahat atau pelukis. Selain itu emboss yang dihasilkan juga dapat mempunyai nilai estetika, yaitu dengan menampilkan sisi lain dari citra awal.

1.2. Rumusan Masalah

Berangkat dari pemikiran tersebut di atas maka rumusan masalah yang diangkat dalam tugas akhir ini adalah “Bagaimana memberikan atau menambahkan efek emboss pada sebuah citra“.

1.3 Batasan Masalah

Untuk menghindari pembahasan yang terlalu luas maka perlu batasan-batasan masalah antara lain :

• Program ini menerima input berupa file citra berwarna dengan format BMP

• Ukuran gambar yang digunakan sebagai input dan output :

• Matrik konvolusi berukuran 3 x 3, 5 x 5 dan 7 x 7

• Hasil disimpan dalam format BMP

(17)

1.4 Tujuan Penelitian

Adapun tujuan penelitian antara lain:

1. Dapat memahami konsep matrik konvolusi pada suatu citra.

2. Memperluas pengetahuan bahwa sebuah citra (image) digital dapat diolah menjadi beragam bentuk dengan berbagai metode salah satunya metode emboss.

1.5 Manfaat Penelitian

1. Citra yang dihasilkan dari pemberian efek emboss dapat menghasilkan nilai estetika.

2. Dapat memudahkan para pemahat dalam membuat seketsa ukiran yang ingin dihasilkan.

1.6 Sistematika Penulisan

Bahasan secara keseluruhan dari tugas akhir ini dibagi menjadi lima bab, yaitu :

BAB I PENDAHULUAN

Bab ini merupakan pendahuluan yang berisi latar belakang, rumusan masalah, batasan masalah, manfaat dan tujuan dan sistematika penulisan, serta metodologi penelitian.

BAB II DASAR TEORI

(18)

BAB III ANALISA DAN PERANCANGAN

Bab ini berisi analisa pembahasan dan perancangan mengenai penggunaan matrik konvolusi yang dapat digunakan untuk efek emboss.

BAB IV IMLEMENTASI PROGRAM

Bab ini berisi implementasi dan hasil yang didapat dari penulisan dan juga pembahasan penulisan tersebut.

BAB V PENUTUP

Bab ini berisi kesimpulan dan saran yang berguna dari hasil pembahasan.

1.7 Metodologi Penelitian

Dalam membangun sistem ini penulis menggunakan metode SDLC (Software Development Life Cycle) yang meliputi tahap-tahap anatara lain: 1. Analisis (Analysis)

Tahap ini mengidentifikasikan suatu kebutuhan dan mengumpulkan data yang diperlukan sesuai dengan kebutuhan sistem yang akan dibangun.

Menganalisa data dengan menggunakan metode yaitu :

•Mengidentifikasikan masalah yang ada.

•Gambaran dari sistem yang akan dibangun.

(19)

2. Perancangan sistem

Perancangan sistem ini dibuat berdasarkan analisa yang telah dibuat yaitu,meliputi:

• Perancangan proses

Menentukan matrik yang akan digunakan dalam proses emboss, menghitung matrik suatu citra dengan cara menentukan matrik konvolusinya.

• Perancangan antar muka pemakai (user interface). – Perancangan struktur menu

– Perancangan halaman utama

– Perancangan tampilan menu setiap data masing-masing 3. Coding

Hasil dari rancangan diterjemahkan dalam bahasa pemrograman yang bisa dibaca oleh mesin dan hasil pemrograman tersebut dapat memperoleh output dan digunakan oleh pengguna.

4. Testing

Dalam tahap ini fokus pada pengujian program. Uji coba ini dilakukan untuk mencari kesalahan dengan jalan mengeksekusi program, selain itu juga untuk menjamin kualitas dari sistem tersebut. 5. Perbaikan/Revisi

(20)

BAB II

DASAR TEORI

2.1 CITRA

Secara harafiah, citra (image) adalah gambar pada bidang dwimatra (dua dimensi). Ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra (Munir,R. 2004). Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh alat-alat optik, misalnya mata pada manusia, kamera, pemindai (scanner), dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam.

Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat: 1. Optik berupa foto.

2. Analog berupa sinyal video seperti gambar pada monitor televisi. 3. Digital yang dapat langsung disimpan pada suatu pita magnetik. Citra dibagi menjadi dua jenis yaitu:

1. Citra diam (still images)

Adalah citra tunggal yang tidak bergerak. Untuk selanjutnya, citra diam kita sebut citra saja.

2. Citra bergerak (moving images)

(21)

Gambar-gambar yang tampak pada film layar lebar atau televisi pada hakikatnya terdiri atas ratusan sampai ribuan frame.

Citra yang dimaksud penulis dalam tulisan skripsi ini adalah “citra diam” (still images).

Meskipun sebuah citra kaya informasi, namun seringkali citra yang kita miliki mengalami penurunan mutu (degradasi), misalnya mengandung cacat atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring), dan sebagainya. Tentu saja semacam ini menjadi lebih sulit diintepretasikan karena informasi yang disampaikan oleh citra tersebut menjadi berkurang.

Agar citra yang mengalami gangguan mudah diinterpretasikan (baik oleh manusia maupun mesin), maka citra tersebut perlu dimanipulasi menjadi citra lain yang kualitasnya lebih baik. Bidang studi yang menyangkut hal ini adalah pengolahan citra (image processing).

2.2 Format Citra

Format citra terdiri dari 3 yaitu citra biner, warna dan greyscale:

a. Citra Biner

(22)

label barang, citra hasil pemindaian dokumen teks, dan sebagainya. Karena hanya mempunyai dua nilai derajat keabuan: hitam dan putih, pixel-pixel objek bernilai 1 dan pixel-pixel latar belakang bernilai 0. Pada waktu menampilkan gambar, 0 adalah putih dan 1 adalah hitam. Jadi, pada citra biner, latar belakang berwarna putih sedangkan objek berwarna hitam.

b. Warna

Persepsi visual citra berwarna (color image) umumnya lebih kaya dibandingkan dengan citra hitam putih, karena itu citra berwarna lebih disenangi daripada citra hitam putih. Warna-warna yang diterima oleh mata manusia merupakan hasil kombinasi cahaya dengan panjang gelombang berbeda. Penelitian memperlihatkan bahwa kombinasi warna yang memberikan rentang warna paling lebar adalah red (R), green (G), dan blue (B). Ketiga warna tersebut dinamakan warna pokok (primaries), dan sering disingkat sebagai warna dasar RGB. Warna-warna lain dapat diperoleh dengan mencampurkan ketiga warna pokok tersebut dengan perbandingan tertentu (meskipun tidak sepenuhnya benar, karena tidak semua kemungkinan warna dapat dihasilkan dengan kombinasi RGB saja).

(23)

warna dasar yaitu Red, Green, dan Blue (RGB) ini memungkinkan sebuah citra mempunyai total 256 * 256 * 256 = 16,8 juta warna berbeda.

Gambar 2.1 Vektor warna dalam ruang tiga dimensi

c. Greyscale

Citra greyscale dengan mudah dapat dihasilkan dari citra warna RGB dengan mengambil nilai rata-rata dari ketiga komponen warna pokok merah, hijau, dan biru, seperti terlihat pada gambar 2.2 berikut:

(24)

Pada gambar tersebut terlihat bahwa warna hitam diwakili oleh koordinat ruang (0,0,0) yang berarti intensitas semua warna pokok adalah nol persen dan warna putih oleh koordinat (1,1,1) yang berarti semua warna pokok berintensitas 100% karena nilai satu adalah maksimum untuk skala yang dinormalkan pada kubus tersebut. Bila semua warna pokok mempunyai intensitas yang sama dan berada diantara 0 dan 1, maka yang tampak adalah warna abu-abu.

Karena ketiga warna pokok tersebut dianggap tidak seragam dalam hal kemampuan kontribusi pada kecerahan, ada yang berpendapat bahwa cara konversi yang lebih tepat adalah menggunakan persamaan berikut (Ahmad, 2005).:

Y = 0.299R + 0.587G + 0.114B ………..persamaan 2.1

dimana Y = Nilai kecerahan pada citra abu-abu.

R = Nilai merah dari sebuah gambar berwarna (satuan = pixel) G = Nilai hijau dari sebuah gambar berwarna (satuan = pixel) B = Nilai biru dari sebuah gambar berwarna (satuan = pixel)

2.3 Pengolahan Citra Digital

(25)

menggambarkannya seperti blok diagram pada gambar berikut (Rianto Sigit, dkk. 2005) :

Gambar 2.3 Blok diagram pengolahan citra

Teknik-teknik pengolahan citra mentransformasikan citra menjadi citra lain. Jadi, masukannya adalah citra dan keluarannya juga citra, namun citra keluaran mempunyai kualitas yang lebih baik daripada citra masukan.

Umumnya, operasi-operasi pada pengolahan citra diterapkan pada citra bila:

1. Perbaikan atau modifikasi citra perlu dilakukan untuk meningkatkan kualitas penampakan atau untuk menonjolkan beberapa aspek informasi yang terkandung di dalam citra.

2. Elemen di dalam citra perlu dikelompokkan, dicocokkan atau diukur. 3. Sebagian citra perlu digabung dengan bagian citra yang lain.

Operasi-operasi yang dilakukan di dalam pengolahan citra banyak ragamnya. Namun secara umum, operasi pengolahan citra dapat diklasifikasikan dalam beberapa jenis sebagai berikut;

1. Perbaikan kualitas citra (image enchancement).

Jenis operasi ini bertujuan untuk memperbaiki kualitas citra dengan cara memanipulasi parameter-parameter citra. Dengan operasi ini, ciri-ciri khusus yang terdapat di dalam citra lebih ditonjolkan.

Gambar

Asli

Proses

Filter

(26)

Contoh-contoh operasi perbaikan citra: a. Perbaikan kontras gelap/terang

b. Perbaikan tepian objek (edge enhancement) c. Penajaman (sharpening)

d. Pemberian warna semu (pseudocoloring) e. Penapisan derau (noise filtering)

2. Pemugaran citra (image restoration).

Operasi ini bertujuan menghilangkan/meminimalkan cacat pada citra. Tujuan pemugaran citra hampir sama dengan operasi perbaikan citra. Bedanya, pada pemugaran citra penyebab degradasi gambar diketahui.

Contoh-contoh operasi pemugaran citra: a. Penghilangan kesamaran (debluring) b. Penghilangan derau (noise)

3. Pemampatan citra (image compression)

Jenis operasi ini dilakukan agar citra dapat direpresentasikan dalam bentuk yang lebih kompak sehingga memerlukan memori yang lebih sedikit. Hal penting yang harus diperhatikan dalam pemampatan citra adalah citra yang telah dimampatkan harus tetap mempunyai kualitas gambar yang bagus.

4. Segmentasi citra (image segmentation)

(27)

berkaitan erat dengan pengenalan pola. 5. Pengorakan citra (image analysis)

Jenis operasi ini bertujuan menghitung besaran kuantitatif dari citra untuk menghasilkan deskripsinya. Teknik pengorakan citra mengekstraksi ciri-ciri tertentu yang membantu dalam identifikasi objek. Proses segmentasi kadangkala diperlukan untuk melokalisasi objek yang diinginkan dari sekelilingnya.

Contoh-contoh operasi pengorakan citra: a. Pendeteksian tepi (edge detection) b. Ekstraksi batas (boundary)

c. Representasi daerah (region) d. Pemberian efekemboss

6. Rekonstruksi citra (image reconstruction)

Jenis operasi ini bertujuan untuk membentuk ulang objek dari beberapa citra hasil proyeksi. Operasi rekonstruksi citra banyak digunakan dalam bidang medis. Misalnya beberapa foto rontgen dengan sinar X digunakan untuk membentuk ulang gambar organ tubuh.

(28)

dimensi ukurannya dinyatakan sebagai tinggi x lebar (atau lebar x panjang). Citra digital yang tingginya N, lebarnya M, dan memiliki L derajat keabuan dapat dianggap sebagai fungsi:

0 ≤χ≤M

ƒ(χ,y) 0 ≤χ≤N 0 ≤χ≤L

Citra digital yang berukuran N x M lazim dinyatakan dengan matrik yang berukuran N baris dan M kolom sebagai berikut:

ƒ(0,0) ƒ(0,1) ... ƒ(0,M) ƒ(x,y) ≈ ƒ(1,0) ƒ(1,1) ... ƒ(1,M)

: : : :

ƒ(N – 1,0) ƒ(N – 1,1) ... ƒ(N – 1,M -1)

Indeks baris (x) dan indeks kolom (y) menyatakan suatu koordinat titik pada citra, sedangkan ƒ(x, y) merupakan intensitas (derajat keabuan) pada titik (x, y).

Operasi pada citra digital pada dasarnya adalah memanipulasi elemen-elemen matrik. Elemen matrik yang dimanipulasi dapat berupa elemen tunggal (sebuah pixel), sekumpulan elemen yang berdekatan, atau keseluruhan elemen matrik. Operasi-operasi yang dilakukan pada pengolahan citra dapat dikelompokkan kedalam empat aras (level) komputasi yaitu:

1. Aras Titik

(29)

ini terdiri dari pengaksesean pixel pada lokasi yang diberikan, memodifikasinya dengan operasi-operasi lanjar (linear) atau nirlanjar (nonlinear), dan menempatkan nilai pixel baru pada lokasi yang bersesuaian di dalam citra yang baru. Operasi ini diulang untuk keseluruhan pixel di dalam citra. Secara matematis, operasi pada aras titik dinyatakan sebagai:

ƒB(x, y) = Otitik{ƒA(x, y)}

yang dalam hal ini ƒA dan ƒB masing-masing adalah citra masukan dan

citra keluaran. Otitik dapat berupa operasi lanjar (linear) atau nirlanjar (nonlinear). Yang dimaksud dengan operasi lanjar adalah operasi yang dapat dinyatakan secara matematis sebagai persamaan lanjar, kebalikannya adalah persamaan nirlanjar.

Gambar 2.4 Operasi aras titik pada citra digital

Operasi pada aras titik dapat dibagi menjadi tiga macam: berdasarkan intensitas, berdasarkan geometri, atau gabungan keduanya.

a. Berdasarkan intensitas.

Nilai intensitas u suatu pixel diubah dengan transformasi h menjadi nilai intensitas baru v:

v = h(u), u, vЄ [0, L]

(30)

b. Beradasarkan geometri.

Posisi pixel diubah ke posisi yang baru, sedangkan intensitasnya tidak berubah. Contoh operasi titik berdasarkan geometri misalnya pemutaran (rotasi), pergeseran (translasi), penskalaan (dilatasi).

c. Gabungan intensitas dan geometri.

Operasi ini tidak hanya mengubah nilai intensitas pixel, tapi juga mengubah posisinya. Misalnya image morphing, yaitu perubahan bentuk objek beserta nilai intensitasnya.

2. Aras Lokal

Operasi pada aras lokal menghasilkan citra keluaran dimana intensitas suatu pixel bergantung pada intensitas pixel-pixel tetangganya.

ƒB(x, y)’ = Olokal{ƒA(xi, yj); (xi, yj) ЄN (x, y) }

(keterangan: N = neighborhood, yaitu pixel-pixel yang berada di sekitar (x , y) ).

Gambar 2.5 Operasi aras lokal pada citra digital

Olokal{f(x,y),(xi, yi) pixel di

(31)

3. Aras Global

Operasi pada aras global menghasilkan citra keluaran yang intensitas suatu pixel bergabung pada intensitas keseluruhan pixel.

ƒB(x, y)’ = Oglobal{ƒA(x, y)}

Gambar 2.6 Operasi aras global pada citra digital

4. Aras Objek

Operasi jenis ini hanya dilakukan pada objek tertentu di dalam citra. Tujuan dari operasi pada aras objek adalah untuk mengenali objek tersebut, misalnya dengan menghitung rata-rata intensitas, ukuran, bentuk, dan karakteristik lain dari objek.

2.4 Operasi Konvolusi

Operasi konvolusi merupakan operasi matematika yang mengalikan secara bersama-sama dua array yang berbeda ukuran namun memiliki dimensi yang sama. Untuk mendapatkan efek emboss ktia dapat mengunakan operasi konvolusi. Konvolusi digunakan untuk mencari nilai pixel dengan cara menghitung nilai pixel tetangganya. Dalam proses

(32)

konvolusi dikenal juga nantinya istilah matrik filter, misalnya seperti matrik filter yang berukuran 3x3 dibawah ini :

a b c h ( i , j ) e f g h i j

Operasi konvolusi dinyatakan dengan rumus sebagai berikut (http://www.gamedev.net/reference/programing/features/imagepror/page2 asp).

Persamaan 2.2

Y [ r,c] = nilai pixel setelah dilakukan proses konvolusi

i = posisi di elemen-elemen matrik filter pada sumbu x (baris) j = posisi dari elemen-elemen matrik filter pada sumbu y (kolom) h (i,j) = matrik filter

M = lebar atau panjang matrik filter r = row (baris)

c = colom (kolom)

(33)

Operasi konvolusi dapat diilustrasikan sebagai berikut:

P1 P2 P3 P4 P5 P6

P7 P8 P9

Filter

Citra

Gambar 2.7 Ilustrasi Konvolusi

Dari hasil ilustrasi konvolusi tersebut maka didapatkan :

Ap1 + B p2 + C p3 + D p4 + E p5 + F p6 + G p7 + H p8 + I p9 y(r,c) =

A + B + C + D + E + F + G + H + I

Contoh penggunaan operasi konvolusi

Misalkan citra f (x,y) yang berukuran 5 x 5 dan sebuah filter yang berukuran 3 x 3 masing- masing adalah sebagai berikut:

40 45 30 15 45

60 20 25 15 20 0 0 1 F(x,y) = 35 45 30 25 20 filter = 0 -2 0 25 15 50 45 30 0 0 2 35 25 20 55 60

Dapat diilustrasikan sebagai berikut:

1. Tempatkan filter pada sudut kiri atas, kemudian hitung nilai pixel pada posisi (0,0) dari filter.

A B C D E F G H I

(34)

Hasil konvolusi = 20. nilai ini dihitung dengan cara sebagai berikut: (40.0+45.0+30.1+60.0+20.(-2)+25.0+35.0+45.0+30.2)

((0+0+30+0+(-40)+0+0+0+60)/1) = 50

2. Geser filter satu pixel ke kanan, kemudian hitung nilai pixel pada posisi (0,0) dari filter.

Hasil konvolusi = 0. nilai ini dihitung dengan cara sebagai berikut: ((0+0+15+0+(-50)+0+0+0+50)/1) =15

3. Geser filter satu pixel ke kanan, kemudian hitung nilai pixel pada posisi (0,0) dari filter.

Hasil konvolusi = 10. nilai ini dihitung dengan cara sebagai berikut: ((0+0+45+0+(-30)+0+0+0+40)/1) = 55

(35)

4. Selanjutnya, geser filter satu pixel ke bawah, lalu mulai lagi melakukan konvolusi dari sisi kiri citra. Setiap konvolusi, geser filter satu pixel kekanan.

Hasil konvolusi = 10. nilai ini dihitung dengan cara sebagai berikut: ((0+0+25+0+(-90)+0+0+0+100)/1) =35

5. Geser filter satu pixel ke kanan, kemudian hitung nilai pixel pada posisi (0,0) dari filter.

Hasil konvolusi =30 nilai ini dihitung dengan cara sebagai berikut: ((0+0+15+0+(-60)+0+0+0+90)/1) =45

(36)

Hasil konvolusi = 138.nilai ini dihitung dengan cara sebagai berikut: ((0+0+20+0+(-50)+0+0+0+60)/1) =30

Dengan cara yang sama seperti di atas, maka pixel-pixel pada baris ketiga dikonvolusikan sehingga menghasilkan:

Masalah timbul ketika bila pixel yang dikonvolusikan adalah pixel pinggir (border), karena beberapa koefisien konvolusi tidak dapat diposisikan pada pixel-pixel citra, seperti contoh:

Masalah seperti ini selalu terjadi pada pixel-pixel pinggir kiri, kanan, atas dan bawah. Penyelesaian untuk masalah ini adalah :

1. Pixel-pixel pinggir diabaikan, tidak di-konvolusi

2. Duplikasi elemen citra. Diisikan sesuai dengan nilai yang ada pada elemen tersebut.

3. Elemen yang ditandai dengan “?” diasumsikan bernilai 0 atau konstanta lain, sehingga konvolusi pixel-pixel pinggir dapat dilakukan.

(37)

Gambar 2.8 Pixel-pixel pinggir (yang tidak terarsir) tidak dikonvolusikan

Algoritma konvolusi citra N x M dengan filter yang berukuran 3x3, 5x 5 dan 7x7. Pixel yang dikonvolusikan adalah elemen (i,j). delapan buah pixel yang bertetangga dengan pixel (i,j) adalah sbb:

i-1,j-1 i-1,j i-1,j+1 i,j-1 i,j i,j+1 i+1,j+1 i+1,j i+1,j+1

Gambar 2.9 Matrik bertetangga dengan pixel (i,j) dengan matrik filter 3 x 3

i-2,j-2 i-2,j-1 i-2,j i-2,j+1 i-2,j+2

i-1,j-2 i-1,j-1 i-1,j i-1,j+1 i-1,j+2

i,j-2 i,j-1 i,j i,j+1 i,j+2

i+1,j-2 i+1,j-1 i+1,j i+1,j+1 i+1,j+2

i+2,j-2 i+2,j-1 i+2,j i+2,j+1 i+2,j+2

(38)

i-3,j-3 i-3,j-2 i-3,j-1 i-3,j i-3,j+1 i-3,j+2 i-3,j+3

i-2,j-3 i-2,j-2 i-2,j-1 i-2,j i-2,j+1 i-2,j+2 i-2,j+3

i-1,j-3 i-1,j-2 i-1,j-1 i-1,j i-1,j+1 i-1,j+2 i-1,j+3

i,j-3 i,j-2 i,j-1 i,j i,j+1 i,j+2 i,j+3

i+1,j-3 i+1,j-2 i+1,j-1 i+1,j i+1,j+1 i+1,j+2 i+1,j+3

i+2,j-3 i+2,j-2 i+2,j-1 i+2,j i+2,j+1 i+2,j+2 i+2,j+3

i+3,j-3 i+3,j-2 i+3,j-1 i+3,j i+3,j+1 i+3,j+2 i+3,j+3

Gambar 2.11 Matrik bertetangga dengan pixel (i,j) dengan matrik filter 7 x 7

2.5 Efek Emboss

(39)

dikalikan juga dengan matrik yang mengelilingi nilai tengah dari matrik pengkonvolusi (filter) tersebut. Setelah proses konvolusi selesai maka hasil dari konvolusi tersebut akan dijumlah sehingga menghasilkan angka citra warna yang baru. Untuk tepi citra tidak dimungkinkan adanya proses emboss, hal ini dikarenakan tidak adanya atau tidak lengkapnya nilai warna yang mengelilingi warna dari tepi citra tersebut. Walaupun nantinya akan didapat juga hasil yang baru pada tepi citra, namun secara teori konvolusi/ emboss hal tersebut tidaklah dimungkinkan, hal ini disebabkan warna-warna yang berada ditepi citra akan digunakan sebagai border saja karena ukurannya yang kecil.

Aturan-aturan untuk mendapatkan hasil emboss yaitu:

• Apabila elemen-elemen matrik filter dijumlahkan dan hasilnya adalah 0 (nol), maka nilai 0 tersebut akan diubah menjadi 1

0

Penggambaran rumus tersebut didapat dengan alasan apabila jumlah

h atau hasil penjumlahan seluruh elemen matrik filter

sama dengan 0 tidak diganti maka nilai warna yang dicari tidak akan ditemukan (1/0 = not define)

(40)

• Setelah nilai tersebut ditambah dengan 128, maka apabila diperoleh nilai baru yang kurang dari 0 maka dianggap sebagai 0, sedangkan nilai yang melebihi 255 akan dibulatkan menjadi 255.

X<0 maka X=0,

X>= 255 maka X=255.

Gambar 2.12 hasil konvolusi setelah ditambah 128

2.6 Pemrograman Delphi

Borland Delphi atau yang biasa disebut Delphi saja, merupakan sarana pemrograman aplikasi visual. Delphi merupakan generasi penerus dari Turbo Pascal. Turbo Pascal yang diluncurkan pada tahun 1983 dirancang untuk dijalankan pada sistem operasi DOS (yang merupakan sistem operasi yang paling banyak digunakan pada saat itu). Sedangkan Delphi yang diluncurkan pertama kali tahun 1995 dirancang untuk beroperasi di bawah sistem operasi Windows.

Delphi memiliki sarana yang tangguh untuk membuat aplikasi mulai dari sarana untuk membuat form, menu, toolbar, hingga kemampuan untuk menangani pengelolaan basis data yang besar. Kelebihan–kelebihan yang dimiliki Delphi antara lain karena pada Delphi, form dan komponen-komponenya dapat dipakai ulang dan dikembangkan, mampu mengakses

(41)

VBX, tersedia template aplikasi dan templete form, memiliki lingkungan pengembangan visual yang diatur sesuai kebutuhan, menghasilkan file terkompilasi yang berjalan lebih cepat, serta kemampuan mengakses data dari bermacam-macam format.

Untuk pengembangan aplikasi pengolahan citra, Delphi menyediakan fasilitas-fasilitas yang dapat memudahkan pembuat program. Misalnya: open picture dialog (membuka gambar), image (untuk menampilkan gambar), dan perintah-perintah lain yang mudah dikenali oleh bahasa pemrograman Borland Delphi. Selain itu, hasil program yang jelas akan langsung menghasilkan sebuah EXE file sehingga dapat memudahkan dalam pemakaian program.

2.7 Adobe Photoshop

Adobe Photoshop adalah sebuah aplikasi yang di desain khusus untuk memperoleh data bitmap dengan mendukung 32 format bitmap yang ada seperti *.BMP, *.GIF dan masih banyak lainnya yang semua dapat kita manipulasi dengan menggunakan software ini. Penggunaan metode layer pada software ini menjadi kekuatan tersendiri dengan pesaing-pesaing software sejenis seperti Corel Draw, Image Lopuser, sehingga para grapichs design banyak menggunakan software ini sebagai alat bantu kerja mereka.

(42)

2.8 Macromedia Flash Mx

(43)

BAB III

ANALISIS DAN PERANCANGAN SISTEM

Pada bab ini akan menjelaskan tentang analisis serta konsep perancangan umum program penggunaan matrik konvolusi untuk efekemboss pada suatu citra.

3.1 Analisis Sistem

3.1.1 Gambaran Umum Sistem

Sistem yang akan dibangun ini adalah suatu program untuk mengubah citra asli, menjadi suatu citra hasil dimana citra hasil sudah ditambah dengan efek emboss. Efek emboss yang dihasilkan didapatkan dengan cara mengalikan matrik filter dengan matrik dari citra asli (proses ini dikenal dengan proses konvolusi). Operasi konvolusi dapat dilakukan dengan pilihan ukuran matrik filter yaitu 3x3, 5x5 dan7x7, dimana setiap elemen dari matrik filter dapat diubah sesuai dengan keinginan. Selain itu dalam program ini dapat menampilkan perbandingan matrik dari citra sebelum dilakukan emboss dan matrik citra setelah dilakukan proses emboss.

3.1.2 Analisis Kebutuhan

(44)

Kebutuhan tersebut dapat diidentifikasi dari beberapa sisi, yaitu:

1. Hardware yang digunakan untuk membangun sistem antara lain : a. Seperangkat komputer:

• AMD Athlon

• RAM 512 MB

• Hard Disk 80GB

• VGA 64 MB

• Monitor SVGA

• Keyboard

• Mouse b. Alat bantu:

• Scanner

• Kamera digital

Hardware dan software minimum yang dibutuhkan untuk menjalankan sistem adalah :

• Prosesor Pentium II

• RAM 32MB

• Hard Disk 20GB

• VGA 4MB

• Monitor SVGA

• Keyboard

(45)

2. Software yang dibutuhkan untuk membangun sistem antara lain :

• Sistem operasi Windows

• Program Delphi 7.0

• Program Maceomedia Flash Mx

Adobe Photoshop 7.0

3. Kebutuhan akan data yaitu berupa file citra berwarna.

3.2 Perancangan Proses

Sebelum memasuki tahap pembuatan program, terlebih dahulu harus dilakukan perancangan proses. Perancangan proses ini dapat berupa pembuatan algoritma dan flowchart program.

Algoritma adalah suatu langkah-langkah untuk menyelesaikan suatu masalah (Budi Sutejo, S.Kom, 2003). Berikut adalah beberapa algoritma untuk menyelesaikan program ::

1. Masukkan citra asli dimana citra yang digunakan adalah citra yang berformat .bmp

2. Pilih ukuran matrik filter. Terdapat 3 pilihan ukuran matrik filter yaitu 3 x 3, 5 x 5 dan 7 x 7

3. Masukkan nilai elemen matrik filter

(46)

5. Lakukan proses emboss 6. Tampilkan citra hasil emboss

Dari tahapan algoritma di atas dapat digambarkan flowchart program, seperti dibawah ini :

Gambar 3.1 flowchart program keseluruhan

Pada flowchart di atas terdapat proses pilih emboss, dimana dalam proses tersebut terdapat tahapan-tahapan proses yang dapat dituliskan dengan algoritma dibawah ini :

1. Baca proses emboss yang akan dilakukan.

2. Ada 2 pilihan proses emboss yaitu emboss greyscale dan emboss warna. Apabila memilih emboss greyscale, program akan langsung

Pilih proses emboss yang akan dilakukan

Lakukan proses emboss

Selesai Masukkan citra asli

Masukkan nilai elemen matrik filter

Tampilkan citra hasil emboss

(47)

mengubah citra masukkan menjadi greyscale. Sedangkan apabila memilih emboss warna citra akan langsung diproses menjadi emboss.

Gambar 3.2 flowchart pilih proses emboss

Berikut adalah algoritma yang digunakan untuk mendapatkan nilai greyscale dari citra yang akan diproses :

1. Baca citra masukan (berupa citra yang berwarna). 2. Definisikan ukuran citra

3. Baca nilai RGB dari citra, untuk mengetahui nilai Red, Green dan Blue dari tiap pixel citra masukan

4. Hitung greyscale dengan rumus

Y = 0.299R + 0.587G + 0.114B

5. Citra hasil greyscale

If pilih = gray

proses grayscale

selesai

tidak

ya

emboss = warna

proses emboss baca masukan pilihan

(48)

Berikut ini merupakan flowchart program untuk proses greyscale :

Gambar 3.3 Flowchart Greyscale

Setelah memilih proses emboss, maka akan dilanjutkan dengan perhitungan untuk mendapatkan hasil emboss. Tahapan-tahapannya sebagai berikut.

1. Lakukan proses konvolusi:

– Hitung jumlah elemen matrik filter, jika jumlah matrik filter = 0, maka akan diubah menjadi 1

– Menjumlahkan perkalian tiap pixel matrik citra awal dengan elemen matrk filter

Mulai

Selesai

Y = 0.299R + 0.587G + 0.114B

Citra hasil Baca citra masukan

Baca ukuran citra

(49)

– Hasil konvolusi didapat dengan membagi penjumlahan matrik tersebut dengan jumlah matrik filter.

2. Hitung nilai embossdengan menambahkan tiap pixel matrik citra hasil konvolusi dengan 128 untuk mendapatkan hasil yang lebih cerah. – Jika hasil emboss pada tiap pixel ada yang kurang dari 0, maka

hasil emboss tiap pixel tersebut diubah menjadi 0

– Jika hasil emboss pada tiap pixel ada yang lebih dari 0, maka hasil emboss tiap pixel tersebut diubah menjadi 255

Dari tahapan algoritma diatas dapat digambarkan flowchart program untuk proses emboss, seperti dibawah ini :

(50)

3.3 Perancangan Menu

Dalam perancangan menu yang akan dibuat, terdapat beberapa pilihan menu yang tersedia di Form Utama. Rancangan bagan struktur menu yang tersedia di Form Utama antara lain :

File Emboss View About Help Open Emboss Grayscale Matrik Warna About Me Help Save Emboss Warna

Exit

• Pada menu File terdiri dari :

1. Open, untuk membuka atau menampilkan gambar (image) yang akan diproses selanjutnya

2. Save, untuk menyimpan gambar (image) setelah proses 3. Exit, keluar dari program utama

• Pada menu Emboss terdapat 2 Proses emboss yang berfungsi untuk menambahkan efek embosspada gambar (image)sebelumnya.

1. Emboss Greyscale.

Dalam proses ini citra awal (yang berupa citra warna) diubah terlebih dahulu ke bentuk greyscale dan kemudian dilakukan proses emboss.

2. Emboss warna

(51)

• Pada menu View –> Matrik Warna, memanggil Form View

• Pada menu About –> About Me, memanggil Form About

• Pada menu Help –> Help, memanggil Form Help

3.4 Perancangan Interface

Terdapat beberapa perancangan interface yang akan dibuat antara lain:

Halaman pembuka

Halaman pembuka merupakan tampillan awal sebelum memasuki program utama. Dalam halaman pembuka ini terdapat judul, logo Sanata Dharma dan nama pembuat.

Perancangan Form Utama

LOGO

(52)

Dalam form utama ini terdapat 3 pilihan ukuran matrik (matrik filter) yaitu : 3x3, 5x5 dan 7x7. Komponen atau elemen dari matrik filter tersebut dapat diisi sesuai dengan keinginan, tetapi harus menggunakan aturan emboss yang ada.

Perancangan Form View

(53)

dasar Red, Green dan Blue. Tombol CLOSE digunakan untuk menutup form View dan kembali ke form utama

Perancangan Form About

Dalam Form About berisi tentang profil pembuat program. Tombol CLOSE digunakan untuk menutup form About dan kembali ke form utama.

Perancangan Form Help

TEXT

Xxxxxxxxxxxxxxxxxxxxxxxx xxxxx

xxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxx

(54)
(55)

BAB IV

IMPLEMENTASI

Pada bab ini akan dijelaskan tentang bagaimana pengimplementasian sistem penggunaan matrik konvolusi untuk efek embosspada suatu citra.

4.1 Implementasi Hasil Program

4.1.1 Halaman Pembuka

Halaman pembuka merupakan halaman pertama saat kita masuk ke aplikasi program emboss. Untuk menuju ke Form Emboss dilakukan dengan cara mengklik halaman pembuka.

Gambar 4.1 Halaman pembuka Perintah untuk memanggil FormEmboss:

procedure TfrmDepan.FormClick(Sender: TObject); begin

(56)

4.1.2 Form Emboss

Form emboss ini merupakan form utama dimana terdapat menu pilihan yaitu File, Emboss, Matrik, About dan Help.

Gambar 4.2 Form Emboss

Dalam form emboss ini, terdapat dua animasi. Yang pertama, animasi menggunakan timer. Dalam hal ini animasi yang dibuat adalah teks berkedip (pada tulisan ‘Embossing menggunakan proses konvolusi’) dengan nilai default interval adalah 1000 (1 detik) pada method timer milik timer kode program yang diberikan:

if label1.Visible then label1.Visible:=false else label1.Visible:= true;

Animasi yang kedua, yaitu animasi menggunakan animate. Animasi ini telah disediakan oleh Delphi, dimana animasi tersebut harus berformat

(57)

Untuk memulai pengolahan citra, hendaknya file citra harus dibuka terlebih dahulu. Untuk membuka file citra, pilih menu, file → Open, sehingga keluar form Open Picture Dialog.

Gambar 4.3 Open Picture Dialog

Jika file citra telah dipilih, maka citra tersebut masuk ke dalam TImage foto awal. Hal ini dapat dilihat pada gambar 4.4

(58)

Sebelum memproses menjadi emboss, dalam form ini terdapat tiga ukuran filter matrik yaitu: 3x3, 5x5, dan 7x7. Setelah memilih salah satu dari pilihan tersebut, masukkan nilai elemen matrik yang akan diproses, sesuai dengan yang diinginkan. Terdapat dua pilihan untuk merubah citra menjadi emboss, yaitu emboss greyscale dan emboss warna. Kemudian untuk memproses menjadi emboss pilih menu Run → Emboss Grayscale atau Run → Emboss Warna .

Gambar 4.5 menampilkan hasil emboss pada TImage foto hasil

(59)

Gambar 4.6 Save Picture Dialog

4.1.3 Form Matrik Warna

Pada Form Matrik Warna berisi perbandingan matrik sebelum dan sesudah dilakukan proses emboss. Sebelum dilakukan proses emboss, terdapat pilihan matrik warna yang diinginkan sesuai dengan pilihan jenis warna yaitu : Berwarna, Grey (abu-abu) dimana masing – masing mempunyai nilai Red, Green dan Blue.

Untuk menampilkan form ini yaitu dengan memilih View→Matrik, pada form utama.

(60)

4.1.4 Form About

Pada form About berisi tentang profil pembuat program (nama, alamat serta keterangan prodi), selain itu juga terdapat profil dosen pembimbing. Cara menampilkan form ini yaitu dengan memilih menu About→About Me pada menu Utama.

Gambar 4.8 Form About

4.1.5 Form Help

Apabila user mengalami kesulitan dalam menjalankan program ini atau ingin melihat definisi dari efek emboss, user dapat melihat jendela help yang dapat ditampilkan dengan cara memilih menu Help→ Help pada menu utama.

(61)

4.2 Pembahasan

4.2.1 Mengubah Citra Berwarna Menjadi Greyscale

Sebelum melakukan proses emboss, citra masukan (citra berwarna) diubah menjadi greyscale. Hal ini bertujuan untuk memperkecil nilai matrik sehingga akan mempermudah proses perhitungan.

Berikut adalah function Grey yang digunakan untuk mengubah citra berwarna menjadi greyscale

function Grey (): TBitmap; var

x1,y1,x,y,R,G,B,Pixel:Integer; Xgambar : TBitmap;

begin

Xgambar := TBitmap.Create; Xgambar.Assign(gbr1); x1 := gbr1.Width; y1 := gbr1.Height; for x := 0 to x1-1 do for y := 0 to y1-1 do begin

R := GetRvalue(gbr1.Canvas.Pixels[x,y]); G := GetGvalue(gbr1.Canvas.Pixels[x,y]); B := GetBvalue(gbr1.Canvas.Pixels[x,y]);

Pixel := Round ((0.299*R)+(0.587*G)+(0.114*B)); Xgambar.Canvas.Pixels[x,y]:=RGB(Pixel,Pixel,Pixel); end ;

(62)

(a) Citra asli (b) Citra Greyscale Gambar 4.10 Citra asli dan Citra Greyscale

4.2.2 Hasil Emboss Greyscale

Setelah dilakukan proses konvolusi akan didapatkan hasil emboss, tetapi hasil emboss tersebut harus ditambahkan dengan 128, hal ini dimaksudkan untuk mencegah warna hasil emboss tidak terlalu gelap (hitam) karena banyaknya nilai yang berada di bawah 0 (nol)

Program untuk menghitung emboss greyscale :

if (rbMatrik1.Checked) then with sgMatrik do

for x := 1 to x1-1 do for y := 1 to y1-1 do begin

R :=(GetRValue(gbr2.Canvas.Pixels[x-1,y-1])* StrtoInt(Cells[0,0]) + GetRValue(gbr2.Canvas.Pixels[x-1,y])* StrtoInt(Cells[0,1]) + GetRValue(gbr2.Canvas.Pixels[x-1,y+1])* StrtoInt(Cells[0,2]) + GetRValue(gbr2.Canvas.Pixels[x,y-1])* StrtoInt(Cells[1,0]) + GetRValue(gbr2.Canvas.Pixels[x,y])* StrtoInt(Cells[1,1]) + GetRValue(gbr2.Canvas.Pixels[x,y+1])* StrtoInt(Cells[1,2]) + GetRValue(gbr2.Canvas.Pixels[x+1,y-1])* StrtoInt(Cells[2,0]) + GetRValue(gbr2.Canvas.Pixels[x+1,y])* StrtoInt(Cells[2,1]) + GetRValue(gbr2.Canvas.Pixels[x+1,y+1])* StrtoInt(Cells[2,2])) ; R:=round(R / jml + 128);

(63)

R:=0;

if R>255 then R:=255;

hslEmbs.Canvas.Pixels[x,y]:= RGB(R,R,R);

Contoh diatas untuk menghitung emboss greyscale dengan ukuran matrik filter 3 x 3, demikian halnya untuk ukuran matrik filter 5 x 5 dan 7 x 7 dapat dihasilkan dengan mengalikan tiap pixel matrik citra awal (sebelum diemboss) dengan elemen pada matrik filter.

Contoh hasil emboss Greyscale

(c) matrik filter 7x7

Gambar 4.11 Hasil emboss Grey dengan jumlah elemen matrik filter < 0

(64)

Gambar di atas merupakan perbandingan gambar hasil emboss dengan ukuran matrik filter 3x3, 5x5, dan 7x7 dimana jumlah elemen matrik filter kurang dari 0 (nol). Dari hasil tersebut dapat dilihat bahwa citra yang dihasilkan didominasi oleh warna hitam.

(a) matrik filter 3x3 (b) matrik filter 5x5

(c) matrik filter 7x7

Gambar 4.12 Hasil emboss Grey dengan jumlah elemen matrik filter > 0 Gambar di atas merupakan perbandingan gambar hasil emboss dengan ukuran matrik filter 3x3, 5x5, dan 7x7 dimana jumlah elemen matrik filter lebih dari 0 (nol).

1 0 0 0 0

0 0 0 2 0

0 0 -2 0 0

0 -1 0 0 0

-1 0 0 0 2

-1 0 -2 0 1 1 1 1 0

1 0 0 0 0 0 2

0 0 0 0 0 0 0

0 0 1 0 0 0 0

0 2 0 0 0 -1 0

0 0 0 0 0 0 0

-2 0 0 0 0 0 -1

(65)

Dari gambar di atas dapat dilihat bahwa apabila jumlah elemen matrik filter lebih dari 0 (nol) atau bernilai positif akan menghasilkan hasil emboss yang didominasi oleh warna putih.

(a) matrik filter 3x3 (b) matrik filter 5x5

(c) matrik filter 7x7

Gambar 4.13 Hasil emboss Grey dengan jumlah elemen matrik filter = 0 Gambar di atas merupakan perbandingan gambar hasil emboss dengan ukuran matrik filter 3x3, 5x5, dan 7x7 dimana jumlah elemen

2 0 1 0 1

0 0 0 0 0

-3 -2 0 -2 0

0 0 1 0 0

0 1 0 0 1

-1 0 -2

0 1 0

1 1 0

1 0 0 0 3 0 0

0 -1 0 1 0 0 -2

1 0 -1 0 0 0 0

0 0 0 0 -2 0 -2

0 3 0 1 0 0 0

-1 0 1 0 0 -2 0

(66)

matrik filter sama dengan 0 (nol). Dari gambar tersebut dapat dilihat bahwa hasil emboss yang jumlah filternya sama dengan 0 (nol) terlihat lebih baik dan jelas.

Dari perbandingan gambar di atas (4.11, 4.12 dan 4.13) dapat diketahui bahwa efek emboss juga dipengaruhi oleh besar ukuran matrik filter dan jumlah elemen pada matrik filter. Pada matrik filter berukuran 3x3 terlihat bahwa objek gambar lebih menonjol dibanding dengan gambar pada matrik filter yang berukuran 5x5 dan 7x7.

Faktor lain yang mempengaruhi hasil emboss adalah sebaran nilai matrik filter yang digunakan. Meskipun nilai elemen yang diberikan sama, tetapi dengan sebaran nilai yang berbeda maka hasil yang didapat akan berbeda. Hal ini disebabkan karena nilai pixel baru yang didapat merupakan hasil proses penjumlahan dari nilai pixel-pixel tetangga yang telah dikalikan dengan matrik filter. Dalam hal ini saya akan menguji sebaran nilai matrik filter berdasarkan letak nilai positif(+) dan negatif(-).

Perbandingan keempat sebaran nilai tersebut dapat dilihat pada gambar di bawah ini:

- +

+ - + -

(67)

(a) Matrik filter ukuran 3 x 3

-1 -1 -1 -1 -1 -3 -3 -3 -3 -3

0 0 0 0 0

3 3 3 3 3

1 1 1 1 1

1 1 1 1 1

3 3 3 3 3

0 0 0 0 0

(68)

(b) Matrik filter ukuran 5 x 5

(69)

(c) Matrik filter ukuran 7 x 7

Gambar 4.14 Perbandingan gambar dengan letak elemen yang berbeda. Selain itu hasil emboss juga dipengaruhi oleh besar nilai absolute (mengabaikan tanda negatif (-) atau positif (+)) pada setiap elemen matrik filter.Semakin besar nilai absolute maka efek emboss akan terlihat lebih tebal. Dapat dilihat pada gambar dibawah ini :

Gambar 4.15 Perbandingan gambar dengan nilai absolute yang berbeda -1 -2 -3 -4 -5 -6 0

-2 -1 -2 -3 -4 0 6

-3 -2 -1 -4 0 4 5

-4 -3 -4 0 4 3 4

-5 -4 0 4 1 2 3

-6 0 4 3 2 1 2

0 6 5 4 3 2 1

1 2 3 4 5 6 0

2 1 2 3 4 0 -6

3 2 1 4 0 -4 -5

4 3 4 0 -4 -3 -4

5 4 0 -4 -1 -2 -3

6 0 -4 -3 -2 -1 -2

(70)

Gambar 4.16 Hasil emboss greycale

4.2.3 Hasil Emboss warna

Selain emboss greyscale, program ini juga menyediakan fasilitas untuk emboss citra yang berwarna. Citra masukan (berupa citra berwarna) akan diproses langsung menjadi citra yang mempunyai efek emboss tanpa harus mengubahnya dalam bentuk greyscale.

Program untuk menghitung emboss warna:

if (rbMatrik1.Checked) then with sgMatrik do

for x := 1 to x1-1 do for y := 1 to y1-1 do begin

(71)

GetRValue(gbr1.Canvas.Pixels[x,y+1])* StrtoInt(Cells[1,2]) + GetRValue(gbr1.Canvas.Pixels[x+1,y-1])* StrtoInt(Cells[2,0]) + GetRValue(gbr1.Canvas.Pixels[x+1,y])* StrtoInt(Cells[2,1]) + GetRValue(gbr1.Canvas.Pixels[x+1,y+1])* StrtoInt(Cells[2,2])) ; G :=(GetGValue(gbr1.Canvas.Pixels[x-1,y-1])* StrtoInt(Cells[0,0]) + GetGValue(gbr1.Canvas.Pixels[x-1,y])* StrtoInt(Cells[0,1]) + GetGValue(gbr1.Canvas.Pixels[x-1,y+1])* StrtoInt(Cells[0,2]) + GetGValue(gbr1.Canvas.Pixels[x,y-1])* StrtoInt(Cells[1,0]) + GetGValue(gbr1.Canvas.Pixels[x,y])* StrtoInt(Cells[1,1]) + GetGValue(gbr1.Canvas.Pixels[x,y+1])* StrtoInt(Cells[1,2]) + GetGValue(gbr1.Canvas.Pixels[x+1,y-1])* StrtoInt(Cells[2,0]) + GetGValue(gbr1.Canvas.Pixels[x+1,y])* StrtoInt(Cells[2,1]) + GetGValue(gbr1.Canvas.Pixels[x+1,y+1])* StrtoInt(Cells[2,2])) ; B :=(GetBValue(gbr1.Canvas.Pixels[x-1,y-1])* StrtoInt(Cells[0,0]) + GetBValue(gbr1.Canvas.Pixels[x-1,y])* StrtoInt(Cells[0,1]) + GetBValue(gbr1.Canvas.Pixels[x-1,y+1])* StrtoInt(Cells[0,2]) + GetBValue(gbr1.Canvas.Pixels[x,y-1])* StrtoInt(Cells[1,0]) + GetBValue(gbr1.Canvas.Pixels[x,y])* StrtoInt(Cells[1,1]) + GetBValue(gbr1.Canvas.Pixels[x,y+1])* StrtoInt(Cells[1,2]) + GetBValue(gbr1.Canvas.Pixels[x+1,y-1])* StrtoInt(Cells[2,0]) + GetBValue(gbr1.Canvas.Pixels[x+1,y])* StrtoInt(Cells[2,1]) + GetBValue(gbr1.Canvas.Pixels[x+1,y+1])* StrtoInt(Cells[2,2])) ;

(72)

Contoh diatas untuk menghitung emboss warna dengan ukuran matrik filter 3 x 3, demikian halnya untuk ukuran matrik filter 5 x 5 dan 7 x 7 dapat dihasilkan dengan mengalikan tiap pixel matrik citra awal (sebelum diemboss) dengan elemen pada matrik filter.

Contoh hasil emboss warna :

(a) matrik filter 3x3 (b) matrik filter 5x5

(c) matrik filter 7x7

Gambar 4.17 Hasil emboss warna dengan jumlah elemen matrik filter < 0

1 0 0 0 0

0 1 0 0 -1

0 0 -2 0 0

0 0 0 -1 0

0 0 1 0 0

0 1 0 -1 0 0 0 0 -1

(73)

Gambar di atas merupakan gambar hasil emboss warna dimana jumlah matrik filter kurang dari 0 (nol). Hal ini menyebabkan citra hasil akan didominasi oleh warna hitam.

(c) matrik filter 7x7

Gambar 4.18 Hasil emboss warna dengan jumlah elemen matrik filter = 0

Gambar di atas merupakan gambar hasil emboss warna, dimana jumlah elemen matrik filter sama dengan 0 (nol). Gambar yang dihasilkan didominasi oleh warna abu-abu (greyscale).

(74)

(c) matrik filter 7x7

Gambar 4.19 Hasil emboss warna dengan jumlah elemen matrik filter > 0

Gambar di atas merupakan hasil emboss dengan jumlah elemen matrik filter lebih dari 0 (nol). Dari gambar tersebut terlihat bahwa gambar yang dihasilkan lebih terang dan citra warnanya lebih terlihat, dibanding jika jumlah elemen matrik filter kurang atau lebih dari 0 (nol).

Sama halnya dengan emboss greyscale, faktor lain yang mempengaruhi hasil emboss warna adalah sebaran nilai matrik filter yang

(75)

digunakan. Meskipun nilai elemen yang diberikan sama, tetapi dengan sebaran nilai yang berbeda maka hasil yang didapat akan berbeda. Hal ini disebabkan karena nilai pixel baru yang didapat merupakan hasil proses penjumlahan dari nilai pixel-pixel tetangga yang telah dikalikan dengan matrik filter. Dalam hal ini saya akan menguji sebaran nilai matrik filter berdasarkan letak nilai positif (+) dan negatif(-).

Perbandingan keempat sebaran nilai tersebut dapat dilihat pada gambar di bawah ini:

-1 -2 -3

0 0 0

2 3 4

2 3 4

0 0 0

-1 -2 -3 -

+

+ - + -

(76)

(a) Matrik filter ukuran 3 x 3

2 3 0

5 0 -4

0 -2 -3

-2 -3 0

-4 0 3

0 5 2

1 1 1 1 1

3 3 3 3 3

0 0 0 0 0

-2 -2 -2 -2 -2 -1 -1 -1 -1 -1

-1 -1 -1 -1 -1 -2 -2 -2 -2 -2

0 0 0 0 0

3 3 3 3 3

(77)

(b) Matrik filter ukuran 5 x 5

-1 -1 -1 -1 -1 -1 -1

-2 -2 -2 -2 -2 -2 -2

0 0 0 0 0 0 0

0 0 0 0 0 0 0

0 0 0 0 0 0 0

3 3 3 3 3 3 3

4 4 4 4 4 4 4

-1 -1 -1 0 0

-2 -2 0 0 0

-2 0 0 0 3

0 0 0 3 3

0 0 1 1 1

1 1 1 0 0

2 2 0 0 0

2 0 0 0 -1

0 0 0 -1 -1

0 0 -1 -1 -1

2 2 2 2 2 2 2

2 2 2 2 2 2 2

0 0 0 0 0 0 0

0 0 0 0 0 0 0

0 0 0 0 0 0 0

(78)

(c) Matrik filter ukuran 7 x 7

Gambar 4.20 Perbandingan gambar dengan letak elemen yang berbeda

Selain itu, hasil emboss juga dipengaruhi oleh besar nilai absolute (mengabaikan tanda negatif (-) atau positif (+)) pada setiap elemen matrik filter. Semakin besar nilai absolute, maka efek emboss akan terlihat lebih tebal. Hal tersebut dapat dilihat pada gambar dibawah ini :

-1 -1 -2 0 0 0 0

-1 -2 0 0 0 0 0

-2 0 0 0 0 0 0

0 0 0 0 0 0 0

0 0 0 0 0 0 4

0 0 0 0 0 4 3

0 0 0 0 4 3 3

5 3 4 0 0 0 0

5 4 0 0 0 0 0

3 0 0 0 0 0 0

0 0 0 0 0 0 0

0 0 0 0 0 0 -2

0 0 0 0 0 -1 -2

0 0 0 0 -2 -2 -3

1 -1 -1 1 0

2 2 0 0 0

-1 -1 2 -1 0

0 0 0 0 0

(79)

Gambar 4.21 Perbandingan gambar dengan nilai absolute yang berbeda

Gambar 4.22 Hasil emboss warna

5 0 0 0 -2

0 5 0 -3 0

-1 0 3 0 0

0 -4 0 2 0

(80)

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan hasil penelitian yang telah dilakukan dapat ditarik kesimpulan sebagai berikut :

1. Penerapan matrik konvolusi terhadap suatu citra ternyata mampu menghasilkan efek emboss.

2. Pada emboss greyscale, jika elemen matrik filter keseluruhan berjumlah kurang dari 0 (nol), maka hasil citra baru yang dihasilkan akan terlihat terlalu gelap. Begitu juga sebaliknya, jika elemen matrik filter berjumlah lebih besar dari 0 (nol), citra hasil akan terlihat terlalu terang atau didominasi oleh warna putih. Hasil emboss akan terlihat lebih jelas apabila jumlah elemen matrik filter sama dengan 0 dan terlihat jelas letak pengelompokan nilai elemen yang bernilai positif dan negatif. 3. Pada emboss warna jika jumlah elemen matrik filter kurang dari 0 (nol),

(81)

4. Hasil emboss dipengaruhi oleh besar kecilnya ukuran matrik filter. Semakin besar ukuran matrik filter, maka obyek utama citra akan semakin menjauh dari obyek latar citra.

5. Semakin besar nilai absolute setiap elemen matrik filter, maka efek emboss akan terlihat lebih tebal.

5.2 Saran

Untuk pengembangan dari skripsi ini perlu adanya saran antara lain : 1. Matrik filter yang digunakan tidak hanya berukuran 3 x 3, 5 x 5 atau 7x7. 2. Ukuran citra masukan dan citra hasil lebih diperbesar ukurannya.

(82)

DAFTAR PUSTAKA

Achmad, Balza dan Firdausy, Kartika (2005), Teknik Pengolahan Citra Digital menggunakan Delphi. Penerbit Ardi Publishing

Ahmad, Usman. (2005), Pengolahan Citra Digital, Penerbit Graha Ilmu, Yogyakarta.

Hakim, Lukmanul dan Mutmainah, Siti.(2003). Teknik Jitu Menguasai Flash MX. Jakarta : PT Elex Media Komputindo.

Kadir, Abdul (2002), Dasar Pemrograman Delphi 5.0. Penerbit Andi, Yogyakarta.

Munir, Rinaldi (2004), Pengolahan Citra Digital, Penerbit Informatika, Bandung. _______. (2003), Pemrograman Borlan Delphi 7.0, Kerjasama Wahana Komputer

Semarang dan Penerbit Andi Yogyakarta.

_______. (2004). Pembuatan CD Interaktif dengan Macromedia Flash MX

Professional 2004. Jakarta : Penerbit Salemba Infotek.

www.fotografer.net/isi/artikel/www.stotzka.de Portal Penggemar Fotografi.

www.gamedev.net/reference/articles/ article2007.asp An Introduction To Digital Image Processing

(83)
(84)

Source code form judul unit judul;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls;

type

TfrmDepan = class(TForm)

procedure FormPaint(Sender: TObject); procedure FormClick(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure FormCreate(Sender: TObject); private

(85)

end;

Source code form Emboss

unit emboss; interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, Grids, StdCtrls, ExtCtrls, ExtDlgs, OpenPictureDialog1, OpenPictureDialog2, ComCtrls;

type

TfrmEmboss = class(TForm) imgFotoawal: TImage; imgHasil: TImage; lbMatrik: TLabel;

rbMatrik1: TRadioButton; rbMatrik2: TRadioButton; rbMatrik3: TRadioButton; sgMatrik: TStringGrid;

AboutEmboss1: TMenuItem; Help1: TMenuItem;

Help2: TMenuItem;

OpenPictureDialog1: TOpenPictureDialog2; SavePictureDialog1: TSavePictureDialog; Label1: TLabel;

(86)

Label2: TLabel;

EmbossWarna1: TMenuItem;

procedure Exit1Click(Sender: TObject); procedure Open1Click(Sender: TObject);

procedure AboutEmboss1Click(Sender: TObject); procedure Help2Click(Sender: TObject);

procedure MatrikClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure rbMatrik1Click(Sender: TObject); procedure rbMatrik2Click(Sender: TObject); procedure rbMatrik3Click(Sender: TObject); procedure Save1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure Animate1Stop(Sender: TObject); procedure Run2Click(Sender: TObject);

procedure EmbossWarna1Click(Sender: TObject); private

frmEmboss: TfrmEmboss; gbr1 : TBitMap;

gbr2 : TBitMap; hslEmbs : TBitMap; implementation

uses about, help, matrik, judul; {$R *.dfm}

function Grey (): TBitmap; var

x1,y1,x,y,R,G,B,Pixel:Integer; Xgambar : TBitmap;

begin

(87)

y1 := gbr1.Height; for x := 0 to x1-1 do for y := 0 to y1-1 do begin

R := GetRvalue(gbr1.Canvas.Pixels[x,y]); G := GetGvalue(gbr1.Canvas.Pixels[x,y]); B := GetBvalue(gbr1.Canvas.Pixels[x,y]);

Pixel := Round ((0.299*R)+(0.587*G)+(0.114*B)); Xgambar.Canvas.Pixels[x,y]:=RGB(Pixel,Pixel,Pixel);

IF MessageDlg ('Yakin Anda

Keluar?',mtConfirmation,[mbYes]+[mbNo],0)=mrYes

gbr1.LoadFromFile(OpenPictureDialog1.FileName) ; imgFotoawal.Canvas.Draw( 0,0 ,gbr1);

gbr2.Assign(Grey);

(88)

procedure TfrmEmboss.MatrikClick(Sender: TObject);

sgMatrik.Height := 89; sgMatrik.RowCount :=3;

(89)

procedure TfrmEmboss.rbMatrik3Click(Sender: TObject); var

i,j : integer; begin

sgMatrik.RowCount :=7; sgMatrik.ColCount := 7;

gbr2.SaveToFile(SavePictureDialog1.FileName) ;

ShowMessage('Anda menyimpan ke File' +SavePictureDialog1.FileName); end;

end;

procedure TfrmEmboss.Timer1Timer(Sender: TObject); begin

(90)

hslEmbs := TBitmap.Create;

jml:= jml+ StrtoInt(Cells[i,j]); if jml<= 0 then

jml:=1;

// Label2.Caption:=InttoStr(jml);

x1 := gbr1.Width; y1 := gbr1.Height;

if (rbMatrik1.Checked) then with sgMatrik do

for x := 1 to x1-1 do for y := 1 to y1-1 do begin

R :=(GetRValue(gbr2.Canvas.Pixels[x-1,y-1])* StrtoInt(Cells[0,0]) + GetRValue(gbr2.Canvas.Pixels[x-1,y])* StrtoInt(Cells[0,1]) + GetRValue(gbr2.Canvas.Pixels[x-1,y+1])* StrtoInt(Cells[0,2]) + GetRValue(gbr2.Canvas.Pixels[x,y-1])* StrtoInt(Cells[1,0]) + GetRValue(gbr2.Canvas.Pixels[x,y])* StrtoInt(Cells[1,1]) + GetRValue(gbr2.Canvas.Pixels[x,y+1])* StrtoInt(Cells[1,2]) + GetRValue(gbr2.Canvas.Pixels[x+1,y-1])* StrtoInt(Cells[2,0]) + GetRValue(gbr2.Canvas.Pixels[x+1,y])* StrtoInt(Cells[2,1]) + GetRValue(gbr2.Canvas.Pixels[x+1,y+1])* StrtoInt(Cells[2,2])) ;

(91)

hslEmbs.Canvas.Pixels[x,y]:= RGB(R,R,R); end;

if (rbMatrik2.Checked) then with sgMatrik do

for x := 1 to x1-1 do for y := 1 to y1-1 do begin

R :=( GetRValue(gbr2.Canvas.Pixels[x-2,y-2])* StrtoInt(Cells[0,0]) + GetRValue(gbr2.Canvas.Pixels[x-2,y-1])* StrtoInt(Cells[0,1]) + GetRValue(gbr2.Canvas.Pixels[x-2,y])* StrtoInt(Cells[0,2]) + GetRValue(gbr2.Canvas.Pixels[x-2,y+1])* StrtoInt(Cells[0,3]) + GetRValue(gbr2.Canvas.Pixels[x-2,y+2])* StrtoInt(Cells[0,4]) + GetRValue(gbr2.Canvas.Pixels[x-1,y-2])* StrtoInt(Cells[1,0]) + GetRValue(gbr2.Canvas.Pixels[x-1,y-1])* StrtoInt(Cells[1,1]) + GetRValue(gbr2.Canvas.Pixels[x-1,y])* StrtoInt(Cells[1,2]) + GetRValue(gbr2.Canvas.Pixels[x-1,y+1])* StrtoInt(Cells[1,3]) + GetRValue(gbr2.Canvas.Pixels[x-1,y+2])* StrtoInt(Cells[1,4]) + GetRValue(gbr2.Canvas.Pixels[x,y-2])* StrtoInt(Cells[2,0]) + GetRValue(gbr2.Canvas.Pixels[x,y-1])* StrtoInt(Cells[2,1]) + GetRValue(gbr2.Canvas.Pixels[x,y])* StrtoInt(Cells[2,2]) + GetRValue(gbr2.Canvas.Pixels[x,y+1])* StrtoInt(Cells[2,3]) + GetRValue(gbr2.Canvas.Pixels[x,y+2])* StrtoInt(Cells[2,4]) + GetRValue(gbr2.Canvas.Pixels[x+1,y-2])* StrtoInt(Cells[3,0]) + GetRValue(gbr2.Canvas.Pixels[x+1,y-1])* StrtoInt(Cells[3,1]) + GetRValue(gbr2.Canvas.Pixels[x+1,y])* StrtoInt(Cells[3,2]) + GetRValue(gbr2.Canvas.Pixels[x+1,y+1])* StrtoInt(Cells[3,3])+ GetRValue(gbr2.Canvas.Pixels[x+1,y+2])* StrtoInt(Cells[3,4]) + GetRValue(gbr2.Canvas.Pixels[x+2,y-2])* StrtoInt(Cells[4,0]) + GetRValue(gbr2.Canvas.Pixels[x+2,y-1])* StrtoInt(Cells[4,1]) + GetRValue(gbr2.Canvas.Pixels[x+2,y])* StrtoInt(Cells[4,2]) + GetRValue(gbr2.Canvas.Pixels[x+2,y+1])* StrtoInt(Cells[4,3]) + GetRValue(gbr2.Canvas.Pixels[x+2,y+2])* StrtoInt(Cells[4,4])) ;

(92)

R:=255;

hslEmbs.Canvas.Pixels[x,y]:= RGB(R,R,R); end;

if (rbMatrik3.Checked) then with sgMatrik do

for x := 1 to x1-1 do for y := 1 to y1-1 do begin

Gambar

Gambar 2.2 Kubus warna RGB
Gambar  Proses Filter Gambar Hasil
Gambar 2.9 Matrik bertetangga dengan pixel (i,j)  dengan matrik filter 3 x 3
Gambar 2.11  Matrik bertetangga dengan pixel (i,j)  dengan matrik filter 7 x 7
+7

Referensi

Dokumen terkait

Usually the problem will arise if the community has Ability To Pay (ATP) and Willingness To Pay (WTP) lower than the amount of public transportation tariffs

Penulisan ilmiah ini bertujuan untuk membantu masyarakat yang ingin mencari pekerjaan yang sesuai dengan tingkat pendidikan terakhirnya, yaitu maksimal SMA atau

This study aims to investigate the characteristics of patients with hypertensive retinopathy who went for treatment at the Eye Polyclinic in Hospital Haji Adam Malik,

Penggunaan Media Lingkungna Alam Untuk Meningkatkan Hasil Belajar Siswa Pada Pembelajaran Ipa Materi Tempat Hidup Hewan Dan Tumbuhan.. Universitas Pendidikan Indonesia |

Kesimpulan ini akan mencakup (a) Sistem Pendidikan di Pondok Pesantren Modern Mathla’ul Huda Bandung; (b) Perencanaan program pendidikan karakter kedisiplinan di Pondok

Tujuan dari penelitian merancang dan membuat perangkat keras antarmuka telepon dengan komputer untuk komunikasi telepon IP pada jaringan lokal komputer untuk

of Spirituality as Identified by Adolescent Mental Health

[r]