• Tidak ada hasil yang ditemukan

IMPLEMENTASI OPERASI LOGIKA AND DAN OPERASI BERBASIS FRAME DALAM SEBUAH APLIKASI HAIR STYLING SIMULATOR

N/A
N/A
Protected

Academic year: 2019

Membagikan "IMPLEMENTASI OPERASI LOGIKA AND DAN OPERASI BERBASIS FRAME DALAM SEBUAH APLIKASI HAIR STYLING SIMULATOR"

Copied!
113
0
0

Teks penuh

(1)

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika

Disusun Oleh : Martinus Prima Yustanto

06 5314 003

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(2)

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika

Disusun Oleh : Martinus Prima Yustanto

06 5314 003

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2010

(3)

A THESIS

Presented as Partial Fulfilment of The Requirements to Obtain The Sarjana Teknik Degree In Informatics Engineering Study Program

By :

Martinus Prima Yustanto 06 5314 003

INFORMATIC ENGINEERING STUDY PROGRAM

INFORMATIC ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2010

(4)
(5)
(6)

tidak dengan wajah pelanggan. Karena pelanggan hanya dapat membayangkan tanpa dapat melakukan simulasi, maka sering terjadi kesalahan pemilihan model rambut dan menyebabkan menurunnya nilai kepuasan pelanggan terhadap salon tersebut.

Tugas akhir ini bertujuan untuk melakukan perancangan dan pembuatan aplikasi salon potong rambut. Aplikasi ini digunakan untuk membantu pelanggan salon dalam menentukan atau memilih model rambut yang sesuai dengan citra wajah. Hal ini diaplikasikan dalam sebuah Aplikasi Hair Styling Simulator, dimana pada aplikasi Hair Styling Simulator ini menggunakan dua komponen utama, yaitu camera digital dan PC (Personal Computer). Aplikasi ini akan mengolah citra wajah pelanggan yang ditangkap melalui camera digital, kemudian citra wajah pelanggan tersebut akan diproses menggunakan operasi logika and serta operasi berbasis frame untuk melakukan manipulasi data piksel antara citra rambut dan citra wajah pelanggan.

Operasi logika and dan operasi berbasis frame ini dipilih karena dapat digunakan untuk melakukan manipulasi atau perubahan data piksel antara citra rambut dan citra wajah. Simulasi pemilihan model rambut dilakukan dengan cara melakukan pergantian model rambut pada citra wajah pelanggan sesuai dengan model yang diinginkan, sehingga pelanggan dapat melakukan pemilihan model rambut terhadap citra wajah dan dapat melihat apakah model rambut yang dipilihnya sesuai dengan citra wajah.

Untuk pengujian dilakukan dengan pembagian kuisioner kepada 30 responden yang terdiri dari pelanggan salon, pegawai salon, dan mahasiswa USD. Dari 30 responden tersebut dapat diketahui bahwa dari segi tampilan aplikasi 70% responden menyatakan cukup menarik dan 30% responden menyatakan sangat menarik. Dari segi pemakaian aplikasi, 50% responden menyatakan mudah, dan 50% responden menyatakan sangat mudah. Dari segi waktu pemrosesan 46,67% responden menyatakan cepat, 55,33% menyatakan sangat cepat. Dari segi hasil penggabungan rambut 3,3% responden menyatakan kurang memuaskan, 3,3% menyatakan tidak memuaskan, 80% responden menyatakan cukup memuaskan, serta 13,3% responden menyatakan sangat memuaskan. Dari segi manfaat aplikasi 63,3% responden menyatakan aplikasi bermanfaat, dan 36,6% responden menyatakan bahwa apliasi sangat bermanfaat.

(7)

suitable or not. Since the customer could only imagine what the hairstyle look like without being able to conduct any simulation, there is always mistake in choosing the suitable hairstyle. It causes the decrease of satisfaction of the customer.

This research aimed to design and create an application that could help any salon. This application is used to help the customer in determining or choosing the hairstyle that is suitable to the shape of the customer’s face. This application is called Hair Styling Simulator. There are two main components that are going to be used in this application. They are digital camera and PC (Personal Computer). The face of the customer would be captured by digital camera, and then the image would be processed by using logic operation and frame-based operation to manipulate the pixel data between the hairstyle and the shape of customer’s face.

And logic operation and frame-based operation are chosen because they can be used to conduct manipulation or change of pixel data between hairstyle and the face shape, so that the hairstyle choice simulation can be conducted by making a change of intended hairstyle model on customer’s head. By conducting this simulation, customer can see whether the intended hairstyle is suitable for him or not.

This application has been tested to 30 respondents that consist of hairdressers and students of Sanata Dharma University. 70% of the respondents stated the appearance of this application is attractive enough, while the rest stated that the appearance is very attractive. Based on the use of this application aspect, 50% of respondents claimed that it is easy to use, and the rest claimed that it is very easy. Based on time efficiency aspect, 46.67% of the respondents said that this application process is fast, while the rest said that it is very fast. From the hairstyle matching aspect, there are 3.3% of respondents who said that it is not very satisfying, 3.3% of them said that it is not satisfying, 80% of them said that it is satisfying enough, and the rest (13.3% of respondents) said that it is very satisfying. Based on the benefit aspect of this application, 63.3% of the respondents exclaimed that this application is useful, and the rest exclaimed that it is very useful.

(8)

Sebuah kegagalan akan menjadikan kita mengerti akan arti keberhasilan

(9)
(10)
(11)

kesempatan, waktu, dan berkat, sehingga penulis dapat menyelesaikan tugas akhir yang berjudul “Implementasi operasi logika and dan operasi berbasis frame dalam sebuah aplikasi hair styling simulator”, ini dengan baik.

Dalam penulisan tugas akhir ini penulis tidak lepas dari bantuan sejumlah pihak, oleh karena itu penulis ingin mengucapkan terimakasih kepada :

1. Ayah di surga, terima kasih atas kepercayaan dan kesempatan yang diberikan.

2. Ibu tercinta, terima kasih atas segala perjuangan yang ibu lakukan. 3. Anastasia Rita Widiarti, S.Si., M.Kom., selaku dosen pembimbing

tugas akhir, atas kesabarannya dalam membimbing penulis, memberikan waktunya, dukungan, serta saran yang sangat membantu penulis.

4. Keluarga besar penulis terima kasih atas segala dukungan yang sudah diberikan.

5. Sahabat dan teman–teman yang selalu ada disaat penulis membutuhkan bantuan dan dukungan.

(12)

xi

bermanfaat bagi kemajuan dan perkembangan ilmu pengetahuan serta berbagai pengguna pada umumnya.

Yogyakarta, 2 November 2010

(13)

Ku persembahkanTugas Akhir ini ke pada :

Tuhan Yesus Kristusyang mengijinkan semua ini ,serta telah memberikan kehidupan

beserta seluruh warnanya.

Ayah dan Ibu tercinta, serta adikku

Ketulusan cinta kasih yang kalian berikan begitu besar tidak akan pudar sampai

selama-lamanya, so that the time can not erase.

Almamater dan junior-juniorku,

Semoga skripsi ini bias jadi salah satu referensi bagi kalian.

Dosen-dosen Univesitas Sanata Dharma

Yang telah menempaku menjadi seperti sekarang.

Teman-temanku yang slalu memberikan dukunganya.

Teman-teman kontrakanku tempat berbagi suka dan duka

(14)

xii 

 

HALAMAN PERSETUJUAN PEMBIMBING………... iii

HALAMAN PENGESAHAN………... iv

ABSTRAK………... v

ABSTRACT……….... vi

MOTTO……….. vii

PERNYATAAN KEASLIAN KARYA……….... viii

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS……….. ix

KATA PENGANTAR……… x

DAFTAR ISI………... xii

DAFTAR GAMBAR………... xvi

DAFTAR TABEL……….. xix

BAB I : PENDAHULUAN……… 1

1.1 Latar Belakang Masalah……….. 1

1.2 Rumusan Masalah………... 2

1.3 Tujuan………... 3

1.4 Batasan Masalah……….. 3

1.5 Metodologi Penelitian………. 3

1.6 Sistematika Penulisan……….. 5

BAB II : LANDASAN TEORI………. 7

2.1 Citra………... 7

2.2 Pemrosesan Citra……….. 7

2.3 Format Citra Digital………. 9

2.4 Pengertian Frame dan Background………. 12

2.5 Pengolahan Citra... 13

(15)

xiii 

 

2.7.4 Operasi logika NOT... 18

2.8 Format Citra BMP... 19

2.9 Format Citra JPG... 21

2.10 Kuesioner... 22

2.11 Kompleksitas waktu... 23

2.11.1 Kompleksitas Waktu Asimpotik... 24

BAB III : ANALISA DAN PERANCANGAN SISTEM……….. 30

3.1 Rancangan Umum...………... 30

3.2 Analisa Kebutuhan Proses... 31

3.2.1 Proses Binerisasi………. 32

3.2.2 Proses Penggabungan Dengan Menggunakan Operasi logika and... 33

3.2.3 Proses Penggabungan Dengan Menggunakan Operasi berbasis frame... 35

3.2.4 Pengujian Sistem dengan Pengamatan Visual.37 3.3 Ukuran Piksel Citra...………... 39

3.4 Perancangan Tampilan Antarmuka………. 39

3.4.1 Halaman Utama………. 39

3.4.2 Halaman Kreator………... 42

3.4.3 Halaman Bantuan……….. 42

3.4.4 Halaman Buka Foto..………. 43

3.4.5 Halaman Model Rambut……… 43

3.4.6 Halaman Simpan...………. 44

3.4.7 Form Pesan... 45

3.4.8 Form Dialog... 45

(16)

xiv 

 

4.2 Implementasi Operasi logika And... 47

4.3 Implementasi Operasi berbasis frame... 49

4.4 Implementasi Pengujian Sistem dengan Pengamatan Visual... 50

4.5 Implementasi Ukuran Piksel Citra... 53

4.6 Implementasi tampilan... 54

4.6.1 Tampilan Awal dan Tampilan Utama... 57

4.6.2 Tampilan Buka Foto... 57

4.6.3 Tampilan Model Rambut... 58

4.6.4 Tampilan Simpan... 58

4.6.5 Tampilan Kreator... 59

4.6.6 Tampilan Bantuan... 60

4.6.7 Tampilan Form Dialog... 60

BAB V: ANALISA...……….. 63

5.1. Uji coba program dan Analisa Sistem... 63

5.1.1. Uji coba program... 63

5.1.2. Analisa Sistem... 65

5.1.3. Analisa Waktu Asimtotik... 66

5.2. Analisa Kuesioner……….. 68

5.3. Kekurangan dan Kelebihan Program... 69

5.3.1 Kelebihan Program... 69

5.3.2 Kekurangan Program... 70

BAB VI : PENUTUP………... 71

6.1 Kesimpulan………... 71

(17)

xv 

(18)

Gambar 2.1 Gambar Croping... 8

Gambar 2.2 Komposisi Citra Warna... 10

Gambar 2.3 Contoh Gambar Citra Grayscale... 11

Gambar 2.4 Contoh Citra Warna, Grayscale, dan Biner... 11

Gambar 2.5 Perbaikan Kualitas Citra... 15

Gambar 2.6 Contoh Penggabungan Menggunakan Operasi Berbasis Frame... 16

Gambar 2.7 Citra Hasil Operasi Logika AND... 17

Gambar 2.8 Citra Hasil Operasi Logika OR... 17

Gambar 2.9 Citra Hasil Operasi Logika XOR... 18

Gambar 2.10 Citra Hasil Operasi Logika NOT... 18

Gambar 2.11 Format Berkas Bitmap... 19

Gambar 2.12 Format Citra BMP 24-bit... 21

Gambar 3.1 Diagram Konteks... 31`

Gambar 3.2 DFD level 1... 32

Gambar 3.3 Proses Binerisasi... 33

Gambar 3.4 Proses Penggabungan Citra Wajah dan Model Rambut Menggunakan Operasi Logika And... 34

(19)

Gambar 3.7 Halaman Kreator... 42

Gambar 3.8 Halaman bantuan... 42

Gambar 3.9 Tampilan Buka Foto... 43

Gambar 3.10 Halaman Model Rambut... 44

Gambar 3.11 Halaman Simpan... 44

Gambar 3.12 Form Pesan... 45

Gambar 3.13 Form Dialog... 45

Gambar 4.1 Hasil Operasi Logika AND... 48

Gambar 4.2 Hasil Penggabungan Menggunakan Operasi Berbasis Frame... 50

Gambar 4.3 Tampilan Utama... 57

Gambar 4.4 Tampilan Buka Foto... 57

Gambar 4.5 Tampilan Model Rambut... 58

Gambar 4.6 Tampilan Simpan... 58

Gambar 4.7 Tampilan Kreator... 59

Gambar 4.8 Form Dialog Inputan Jika Ukuran Sama... 61

Gambar 4.9 Form Dialog Inputan Jika Ukuran Tidak Sama... 61

Gambar 4.10 Form Dialog Penyimpanan Berhasil Dilakukan... 61

(20)

xviii

Gambar 5.2 Tampilan Hasil Dengan Operasi Logika AND... 64

(21)

Tabel 2.2 Tabel isi header bitmap... 20

Tabel 2.3 Tabel isi data gambar... 21

Tabel 4.1 Hasil kuesioner segi tampilan... 51

Tabel 4.2 Hasil kuesioner segi pemakaian... 51

Tabel 4.3 Hasil kuesioner segi waktu pemrosesan... 52

Tabel 4.4 Hasil kuesioner segi hasil penggabungan rambut... 52

Tabel 4.5 Hasil kuesioner segi manfaat... 53

Tabel 4.6 kecepatan proses berdasarkan ukuran piksel... 54

(22)

Bab I.

Pendahuluan

1.1 Latar Belakang

Salon potong rambut adalah sebuah bidang usaha yang bergerak di bidang jasa. Karena bergerak di bidang jasa maka nilai kepuasan seorang pelanggan menjadi faktor penting dalam kemajuan usaha tersebut. Banyak faktor yang dapat mempengaruhi nilai kepuasan pelanggan, misalnya pelayanan, sarana dan prasarana. Salah satu bentuk layanan adalah layanan konsultasi pemilihan model rambut, yang selama ini terjadi dengan melakukan tanya jawab dengan bantuan gambar model rambut atau foto model dengan potongan rambut tertentu, yang belum tentu cocok dengan karakteristik wajah pelanggan.

(23)

Sehingga dapat dilakukan perubahan terhadap citra sesuai dengan kebutuhan dan keinginan. Sedangkan operasi berbasis frame adalah penambahan bingkai pada citra sehingga citra akan memiliki bentuk atau model yang sesuai dengan yang diinginkan. Salah satunya adalah melakukan simulasi pemilihan model rambut.

1.2 Rumusan Masalah

Berdasarkan latar belakang seperti yang telah disebutkan sebelumnya, maka dapat dirumuskan permasalahan sebagai berikut :

1. Bagaimana melakukan pemrosesan citra wajah dan model rambut dengan menggunakan operasi logika and dan operasi berbasis frame. Sehingga dapat digunakan untuk melakukan simulasi pemilihan model rambut berdasarkan citra wajah.

2. Bagaimana melakukan perancangan dan pembuatan sebuah aplikasi yang dapat digunakan untuk melakukan simulasi pemilihan model rambut

dengan menggunakan input berupa citra wajah yang ditangkap menggunakan digital camera dan dilakukan pemrosesan dengan pc (personal computer).

(24)

1.3 Tujuan

Adapun tujuan dari penelitian dan pembuatan aplikasi ini adalah dapat mengimplementasikan operasi logika dan operasi berbasis frame, dalam sebuah aplikasi yang dapat digunkan dengan mudah, cepat, bermanfaat, serta menarik bagi pelanggan salon.

1.4 Batasan Masalah

Dalam perancangan dan pembuatan aplikasi ini, terdapat beberapa pembatasan masalah, antara lain :

1. Format file yang dapat diproses adalah citra dengan format .jpg atau .bmp.

2. Program hanya melakukan proses pengolahan citra wajah dan penggabungannya saja.

3. Ukuran citra inputan adalah 1200 x1600 piksel, ukuran ini merupakan ukuran yang bisa dijadikan default ukuran kamera digital.

4. Program dibuat dengan meggunakan bahasa pemrograman MatLab untuk melakukan pemrosesan citran dan GUI MatLab untuk membuat user interface.

1.5 Metodologi Penelitian

Metodologi penelitian dilakukan sebagai berikut:

(25)

berbasis frame.

2. Analisis data bertujuan untuk mengetahui bagaimana data yang digunkan dalam penelitian diperoleh.

3. Pengembangaan program aplikasi menggunakan model Waterfall (Pressman, 1997).

Gambar 1.1: Model Waterfall Tahapan:

System Engineering

Analisa

Desain

Implementasi

Pengujiaan

- System Enginering

System Enginering adalah tahap untuk mengumpulkan dan menentukan semua kebutuhan elemen sistem.

- Analisis

Analisis adalah tahap untuk menentukan analisis terhadap permasalahan yang dihadapi dan menentukan kebutuhan software. - Desain

Desain adalah proses menterjemahkan kebutuhan sistem ke dalam sebuah gambaran program.

- Implementasi

(26)

- Pengujian

Pengujian memastikan apakah semua fungsi-fungsi program berjalan dengan baik dan menghasilkan output yang sesuai dengan yang dibutuhkan.

4. Menganalisa hasil yang diperoleh dari kuesioner yang diberikan kepada responden meliputi segi tampilan, segi pemakaian, waktu pemrosesan, hasil penggabungan dan manfaat.

1.6 Sistematika Penulisan

Sistematika penulisan laporan tugas akhir ini adalah sebagai berikut : BAB I PENDAHULUAN

Berisi latar belakang masalah, rumusan masalah, batasan masalah, tujuan sistem, manfaat sistem dan metode penelitian serta sistematika penulisan laporan.

BAB II DASAR TEORI

Bab ini berisi landasan teori yang dipakai untuk pembahasan laporan tugas akhir.

BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi tentang analisis dan perancangan sistem yang akan diimplementasikan.

BAB IV IMPLEMENTASI SISTEM

(27)

BAB V ANALISIS HASIL

Bab ini berisi tentang analisis hasil implementasi sistem. BAB VI PENUTUP

(28)

BAB II

LANDASAN TEORI

2.1 Citra

Citra adalah sebuah representasi informasi yang diciptakan dalam bentuk dua dimensi. Dimana representasi tersebut merupakan susunan array dari bilangan real atau bilangan kompleks yang terwakilkan dalam bilangan-bilangan bit terhingga. citra adalah gambar pada bidang dua dimensi (munir, 2004).

Citra tersusun dari titik-titik atau kumpulan elemen-elemen gambar yang disebut piksel (picture element). Piksel adalah element terkecil dari sebuah citra digital. Dengan jumlah total piksel adalah M x N. Dimana M merupakan nilai hight atau nilai tinggi citra digital dan N adalah nilai width atau nilai lebar citra digital.

2.2 Pemrosesan citra

Pemrosesan citra atau pengolahan citra merupakan proses mengolah piksel-piksel dalam citra digital untuk satu tujuan tertentu (Sutoyo, 2009). Beberapa alasan pengolahan citra digital antara lain:

1. Untuk mendapatkan citra asli dari suatu citra yang sudah buruk karena pengaruh derau. Proses pengolahan bertujuan mendapatkan citra yang diperkirakan mendekati citra yang sesungguhnya.

(29)

pemrosesan analisis citra seperti croping. Croping dilakukan untuk mendapatkan bagian tertentu dalam sebuah citra dengan menggunakan ordinat piksel yang ada dalam sebuah citra, seperti pada gambar 2.1.

Gambar 2.1 Gambar croping (sumber help matlab)

(30)

2.3 Format Citra Digital

Menurut intensitas warna format citra digital dapat dikategorikan sebagai berikut :

1. Citra RGB (True Color)

Citra RGB merupakan citra yang memiliki tiga komponen channel yaitu red, green, dan blue. Setiap channel memiliki nilai intensitas yang berbeda, tergantung warna yang dipresentasikan. Untuk monitor komputer, nilai rentang paling kecil = 0 dan paling besar = 255 ini didasarkan pada cara mengungkap 8 digit bilangan biner yang digunakan oleh mesin komputer. Dengan cara ini, akan diperoleh warna campuran sebanyak 256 x 256 x 256 =1677726 jenis warna. Sebuah jenis warna bisa dibayangkan sebagai sebuah fektor dalam ruang 3 dimensi yang biasanya dipakai dalam matematika, kordinatnya dinyatakan dalam bentuk 3 bilangan, yaitu komponen-x, komponen-y, dan komponen-z. Misalkan sebuah vektor dituliskan sebagai r = (x,y,z). Untuk warna, komponen – komponen tersebut digantikan oleh R(red),

G(green), dan B(blue). Jadi sebuah jenis warna dapat dituliskan

(31)

Gambar 2.2 : komposisi citra warna (Sumber : ittelkom.ac.id)

2. Citra Grayscale

(32)

Gambar 2.3 contoh gambar citra Grayscale (Sumber : ittelkom.ac.id)

3. Citra Biner

Citra biner atau citra monokrom merupakan citra yang memiliki 2 kemungkinan warna pada setiap pikselnya. Citra biner hanya dikuantisasikan pada 2 level yaitu 0 dan 1, sehingga setiap piksel pada citra cukup dipresentasikan dengan 1 bit (0 dan 1).

(33)

Jika a1 = 0 dan a2 = 1, maka operasi ini akan mentransformasikan suatu citra menjadi citra biner. Misal suatu citra memiliki gray level 256, dipetakan menjadi citra biner, maka fungsi trasformasinya adalah sebagai berikut:

Piksel – piksel yang nilai intensitasnya dibawah 128 diubah menjadi hitam (nilai intensitas = 0), sedangkan piksel-piksel yang nilai intensitasnya diatas 128 diubah menjadi putih (nilai intensitas =1)

2.4Pengertian Frame dan Background

(34)

2.5Pengolahan citra

Pengolahan citra digital (digital image procesing) adalah proses manipulasi data citra digital dengan tujuan meningkatkan kualitas citra tersebut atau menghasilkan sebuah citra luaran sesuai dengan yang diinginkan.

Pengolahan citra pada dasarnya dilakukan dengan cara memodifikasi setiap titik dalam citra tersebut. Secara garis besar, modifikasi citra dikelompokkan menjadi:

1. Operasi temporal / berbasis bingkai adalah operasi pengkombinasian dua buah citra atau lebih dengan menggunakan operasi matematis. Operasi ini dilakukan titik per titik dengan lokasi yang bersesuaian pada citra-citra tersebut. Operasi temporal / berbasis bingkai diantaranya meliputi pengurangan derau, penggabungan citra (image blending), deteksi gerakan, dll.

(35)

(contrast enhancement), negasi (negation), dan operasi pengambangan (thresholding).

3. Operasi geometri adalah operasi terhadap koordinat piksel dalam citra yang memungkinkan terjadinya perubahan bentuk, ukuran, atau orientasi. Operasi geometri di antaranya meliputi pencerminan (flipping), rotasi / pemutaran (rorating), penskalaan (scaling / zooming), dan pembengkokan (warping).

4. Operasi titik bertetangga adalah operasi dimana data dari titik yang bersebelahan (bertetangga) dengan titik yang ditinjau ikut berperan dalam mengubah nilai. Operasi bertetangga pada dasarnya konvolusi antara citra dengan sebuah filter atau mask. Operasi titik bertetangga di antaranya meliputi penghalusan citra (smoothing), eliminasi derau, pendeteksi tepi, penajaman citra (sharping).

5. Operasi morfologi adalah operasi yang didasarkan pada segmen atau region dalam citra yang menjadi perhatian. Operasi morfologi di antaranya meliputi operasi pencarian batas, dilasi (dilation), erosi (erosion), penutupan (closing), pembukaan (opening), pengisian (filling).

Operasi citra pada pengolahan citra pada umumnya diterapkan bila:

(36)

ii. Elemen-elemen dalam citra perlu dikelompokkan atau dicocokkan untuk diukur.

iii. Sebagian citra perlu digabung dengan citra yang lain. Contoh perbaikan kualitas citra :

Gambar 2.5 (a) Citra burung nuri yang gelap, (b) Citra burung yang telah diperbaiki kontrasnya sehingga tampak lebih jelas dan tajam

Sumber (Lussiana ETP

)

2.6Operasi berbasis bingkai

Operasi berbasis bingkai adalah operasi yang melibatkan lebih dari satu citra dan menghasilkan sebuah citra luaran yang merupakan hasil oprasi matematis (achmad, 2005).

Operasi berbasis bingkai antara citra A dan citra B akan menghasilkan citra C, yang persamaannya dapat dituliskan sebagai berikut:

(37)

dimana op adalah operator yang menghubungkan kedua citra tersebut. Operasi berbasis bingkai juga dapat melibatkan N buah citra A1 sampai dengan AN yang persamaannya dapat dituliskan sebagai berikut:

C(x,y) = A1(x,y) op A2(x,y) op A3(x,y) ... op AN(x,y)

Berdasarkan operator yang dipakai, operasi berbasis bingkai meliputi operasi aritmatik dan operasi logika.

Seperti pada penggabungan citra foto dan frame berikut :

(a) (b) (c) Gambar 2.6

Citra (a) adalah foto, citra (b) adalah frame, dan citra (c) adalah citra hasil penggabungan citra foto dan citra frame dengan menggunakan operasi

berbasis frame

2.7Operasi Logika

(38)

2.7.1 Operasi Logika AND

Persamaan yang digunakan adalah: C(x,y) = A(x,y) AND B(x,y)

AND

(A) AND (B)

B

A

Gambar 2.7. Citra hasil operasi logika AND

Jika A adalah citra dengan gambar persegi panjang dan B adalah citra dengan gambar persegi maka setelah kedua citra tersebut dioperasikan dengan menggunakan operasi logika AND maka citra hasil operasi yang didapat adalah citra persegi panjang yang merupakan perpotongan kedua citra tersebut.

2.7.2 Operasi Logika OR

Persamaan yang digunakan adalah: C(x,y) = A(x,y) OR B(x,y)

B

OR

(A) OR (B)

A

Gambar 2.8. Citra hasil operasi logika OR

(39)

2.7.3 Operasi Logika XOR

Persamaan yang digunakan adalah: C(x,y) = A(x,y) XOR B(x,y)

B

A

XOR

(A) XOR (B)

Gambar 2.9. Citra hasil operasi logika XOR

Jika A adalah citra dengan gambar persegi panjang dan B adalah citra dengan gambar persegi maka setelah kedua citra tersebut dioperasikan dengan menggunakan operasi logika XOR maka citra hasil operasi yang didapat adalah citra poligon yang berlubang dibagian tengah yang merupakan hasil perpaduan kedua citra tersebut.

2.7.4Operasi Logika NOT

Persamaan yang digunakan adalah: C(x,y) = NOT A(x,y)

A

NOT

NOT (A)

Gambar 2.10. Citra hasil operasi logika NOT

(40)

2.8Format Citra .BMP

Sistem Operasi Windows mempunyai standar untuk format berkas citra yaitu *.BMP (bitmap) yang dapat dipanggil langsung untuk dimanipulasi dan ditampilkan karena sistem operasi Windows memiliki perintah API (Aplication Programming Interface).

Citra bitmap ini dipetakan ke dalam sejumlah bit tertentu dengan nilai intensitas piksel. Jumlah bit yang dipetakan ini mempresentasikan derajat keabuan (graylevel) yang akan mempengaruhi kedalaman warna dari citra bitmap.

Setiap berkas bitmap terdiri atas header berkas (BitmapFileHeader), header bitmap (bitmapinfoheader), informasi palet, dan data bitmap. (Sutoyo,2009)

Header berkas Header bitmap Informasi palet Data bitmap

14 byte 12 s/d 64 byte 0 s/d 1024 bytes N byte

Gambar 2.11 Format berkas bitmap

Header berkas akan menentukan tipe, ukuran dan layout dari file bitmap. Stuktur header file dijelaskan pada tabel 2.1.

Tabel 2.1. Tabel isi header berkas bitmap

Byte ke- Panjang (byte) Nama Keterangan

1 – 2 2 BmpType TipeberkasBitmap: BA = bitmap array, CI = icon,

(41)

3 – 6 4 BmpSize Ukuran berkas bitmap 7 – 8 2 XhotSpot X hotspot untuk kursor 9 – 10 2 YhotSpot Y hotspot untuk kursor

11 – 14 4 OffBits Ofset keawal data bitmap (dalam byte) Header bitmap akan menentukan dimensi, tipe pemampatan dan format warna untuk bitmap. Stuktur header bitmap dijelaskan pada tabel 2.2.

Tabel 2.2. Tabel isi header bitmap

Byte ke- Panjang (byte) Nama Keterangan

1 – 4 4 HdrSize Ukuran header dalam satuan byte 5 – 8 4 Width Lebar bitmap dalam satuan piksel 9 – 12 4 Height Tinggi bitmap dalam satuan piksel 13 – 14 2 Planes Jumlah plane (umumnya selalu satu) 15 – 16 2 BitCount Jumlah bit per piksel

17 – 20 4 Compression 0 = takdimampatkan, 1 = dimampatkan 21 – 24 4 ImgSize Ukuranbitmapdalambyte 25 – 28 4 HorzRes Resolusi horizontal 29 – 32 4 VertRes Resolusivertikal

33 – 36 4 ClsrUsed Jumlahwarna yang digunakan 37 – 40 4 ClrImportant Jumlahwarna yang penting

(42)

(red), G (green), dan B (blue). Struktur informasi palet warna dijelaskan pada tabel 2.3.

Tabel 2.3. Tabel isi data gambar

Ofset Nama Keterangan

0 RgbBlue Nilai warna biru

1 RgbGreen Nilai warna hijau 2 RgbRed Nilai warna merah 3 RgbReserved Selalu 0

Data bitmap diletakkan sesudah informasi palet.Penyimpanan data bitmap di dalam berkas disusun terbalik dari bawah keatas dalam bentuk matrik yang

berukuran height × width. Baris ke-0 pada matrik data bitmap menyatakan data piksel di citra baris terbawah, sedangkan baris terakhir pada matrik menyatakan data piksel di citra baris teratas. Stuktur informasi data bitmap dijelaskan pada Gambar 2.12.

< header bit m ap>

< dat a bit m ap>

220 56 256 255 255 255 10 120 120

0 0 25 152 25 47 25 215 255

Gambar 2.12. Format citra BMP 24-bit

2.9Format Citra .JPG

(43)

sering digunakan untuk menyimpan gambar yang akan digunakan untuk keperluan halaman web. Format JPG ini memiliki ukuran yang lebih kecil jika dibandingkan dengan format lainya, hal ini terjadi karena format JPG bertujuan untuk publikasi.

2.10 Kuesioner

Kuesioner merupakan alat pengumpulan informasi dengan menyampaikan sejumlah pertanyaan tertulis, untuk dijawab secara tertulis pula oleh responden (Gilbert, 2005)

2.10.1 Kuesioner Terstruktur Yang Terbuka

Tingkat struktur dalam kuesioner adalah tingkat standarisasi yang diterapkan pada suatu kuesioner. Pada kuesioner terstruktur yang terbuka dimana pertanyaanpertanyaan diajukan dengan susunan kata-kata dan urutan yang sama kepada semua responden ketika mengumpulkan data. Contoh:

Apakah anda merasa bahwa negara kita membutuhkan lebih banyak atau lebih sedikit peraturan perundang-undangan mengenai antipolusi?

(44)

Pertanyaan diatas merupakan contoh yang baik tentang pertanyaan terstruktur yang terbuka, karena: pertama, tujuannya jelas, pertanyaan diatas berusaha untuk menentukan sikap subjek terhadap peraturan perundang-undangan antipolusi dengan cara yang langsung. Kedua, pertanyaan diatas menggunakan format yang sangat terstruktur, para responden dibatasi untuk memilih salah satu diantara empat jawaban.

2.11 Kompleksitas Waktu

Kompleksitas waktu diperlukan dalam menganalisis algoritma, hal ini dilakukan agar sebuah algoritma tidak hanya diukur dari kemampuan melakukan proses tetapi juga diketahui tingkat efektifitasnya. Dalam hal ini algoritma diukur dari jumlah waktu dan ruang (space) memori yang dibutuhkan untuk menjalankannya.

(45)

Dalam melakukan perhitungan perlu diperhatikan model abstrak pengukuran waktu/ruang yang harus independen dari pertimbangan mesin dan compiler apapun. Besaran yang dipakai untuk menerangkan model abstrak pengukuran waktu/ruang ini adalah kompleksitas algoritma. Ada dua macam kompleksitas algoritma, yaitu: kompleksitas waktu dan kompleksitas ruang. Kompleksitas waktu, T(n), diukur dari jumlah tahapan komputasi yang dibutuhkan untuk menjalankan algoritma sebagai fungsi dari ukuran masukan n. Kompleksitas ruang S(n), diukur dari memori yang digunakan oleh struktur data yang terdapat di dalam algoritma sebagai fungsi dari ukuran masukan n. Dengan menggunakan besaran kompleksitas waktu/ruang algoritma, kita dapat menentukan laju peningkatan waktu (ruang) yang diperlukan algoritma dengan meningkatnya ukuran masukan n.

Dalam praktek, kompleksitas waktu dihitung berdasarkan jumlah operasi abstrak yang mendasari suatu algoritma, dan memisahkan analisis dari implementasi.

2.11.1.1Kompleksitas Waktu Asimptotik

(46)

Aturan Untuk Menentukan Kompleksitas Waktu Asimptotik adalah sebagai berikut:

1. Jika kompleksitas waktu T(n) dari algoritma diketahui, Contoh: (i) pada algoritma cari_maksimum

T(n) = n – 1 = O(n)

(ii) pada algoritma pencarian_beruntun

Tmin(n) = 1 = O(1)

Tmax(n) = n = O(n)

Tavg(n) = (n + 1)/2 = O(n),

(iii) pada algoritma pencarian_biner, Tmin(n) = 1 = O(1)

Tmax(n) = 2log n = O(2log n)

(iv) pada algoritma selection_sort

……….. (2.1) ……….. (2.2) ……….. (2.3) ( ) 2 ) 1 ( )

(n n n O n2 T = − =

(v) T(n) = (n + 2) log(n2 + 1) + 5n2 = O(n2)

Penjelasannya adalah sebagai berikut:

T(n) = (n + 2) log(n2 + 1) + 5n2 = f(n)g(n) + h(n),

Kita rinci satu per satu:

f(n) = (n + 2) = O(n)

(47)

g(n) = log(n2 + 1) = O(log n), karena

log(n2 + 1) ≤ log(2n2) = log 2 + log n2

= log 2 + 2 log n≤ 3 log n untuk n > 2

h(n) = 5n2 = O(n2)

maka

T(n) = (n + 2) log(n2 + 1) + 5n2 = O(n)O(log n) + O(n2)

=O(n log n)+O(n2)=O(max(n log n, n2)) = O(n2)

…….. (2.5)

2. Menghitung O-Besar untuk setiap instruksi di dalam algoritma dengan panduan di bawah ini, kemudian menerapkan teorema O -Besar.

(a) Pengisian nilai (assignment), perbandingan, operasi aritmetik, read, write membutuhkan waktu O(1).

(b) Pengaksesan elemen larik atau memilih field tertentu dari sebuah record membutuhkan waktu O(1).

Contoh:

read(x); O(1)

(48)

Kompleksitas waktu asimptotik = O(1) + O(1) + O(1) = O(1)

Penjelasan: O(1) + O(1) + O(1) = O(max(1,1)) + O(1) ……….. (2.6)

= O(1) + O(1) = O(max(1,1)) = O(1)

(c) if C then S1 else S2; membutuhkan waktu TC + max(TS1,TS2)

Contoh:

read(x); O(1)

if x mod 2 = 0 then O(1) begin

x:=x+1; O(1)

writeln(x); O(1) end

else

writeln(x); O(1)

Kompleksitas waktu asimptotik:

= O(1) + O(1) + max(O(1)+O(1), O(1))

= O(1) + max(O(1),O(1)) ……….. (2.7) = O(1) + O(1)

= O(1)

(d) Kalang for. Kompleksitas waktu kalang for adalah jumlah pengulangan dikali dengan kompleksitas waktu badan (body) kalang.

(49)

for i:=1 to n do

jumlah:=jumlah + a[i]; O(1)

Kompleksitas waktu asimptotik = n . O(1)

……….. (2.8) = O(n .1)

= O(n)

Contoh: kalang bersarang

for i:=1 to n do for j:=1 to n do

a[I,j]:=0; O(1)

Kompleksitas waktu asimptotik:

……….. (2.9) nO(n) = O(n.n) = O(n2)

(e) While C do S; dan repeat S until C; Untuk kedua buah kalang, kompleksitas waktunya adalah jumlah pengulangan dikali dengan kompleksitas waktu badan C dan S.

Contoh: kalang tunggal sebanyak n-1 putaran

i:=2; O(1)

while I <= n do O(1) begin

jumlah:=jumlah + a[i]; O(1)

i:=i+1; O(1)

end;

(50)

= O(1) + (n-1) { O(1) + O(1) + O(1) } = O(1) + (n-1) O(1)

= O(1) + O(n-1)

……….. (2.10)

= O(1) + O(n) = O(n)

Pengelompokan Algoritma Berdasarkan Notasi O-Besar

Tabel 2.4: Pengelompokan Algoritma Berdasarkan Notasi O-Besar

Kelompok Algoritma Nama O(1)

O(log n)

O(n)

O(n log n) O(n2)

O(n3) O(2n) O(n!)

konstan logaritmik lanjar n log n kuadratik kubik

(51)

BAB III

ANALISIS DAN PERANCANGAN SISTEM

Analisa dan perancangan sistem digunakan untuk menggambarkan sistem yang akan dibangun, dalam hal ini adalah proses-proses yang dibutuhkan dalam penelitian, perangkat lunak yang dibutuhkan dalam pengerjaan program, informasi perangkat keras yang digunakan untuk melakukan penelitian, serta rancangan interface yang akan di bangun dalam sistem.

3.1 Rancangan Umum

Secara umum, program tugas akhir ini menitik beratkan pada pemrosesan citra digital. Meskipun tujuan akhirnya adalah melakukan pembuatan aplikasi salon potong rambut untuk melakukan simulasi pemilihan model rambut. Aplikasi salon kecantikan ini bertujuan untuk melakukan simulasi pemilihan model rambut dengan menggunakan citra wajah pelanggan. Aplikasi salon ini menggunakan konsep-konsep serta algoritma pemrosesan citra digital.

Dalam aplikasi salon ini citra yang digunakan adalah citra wajah pelanggan dan citra model rambut. Citra wajah pelanggan diambil menggunakan kamera digital sedangkan citra model rambut sudah disiapkan terlebih dahulu. Citra wajah yang diambil dengan menggunakan kamera digital akan diolah terlebih dahulu untuk mendapatkan citra wajah yang bisa digunakan untuk proses selanjutnya. Setelah didapat hasil citra wajah yang dibutuhkan selanjutnya dilakukan proses penggabungan citra

(52)

wajah dan citra model rambut sehingga dapat dilakukan simulasi pemilihan model rambut oleh pelanggan.

Aktivitas yang dilakukan oleh sistem ditunjukan pada Gambar 3.1

Citra hasil penggabungan  operasi logika and 

Citra wajah Citra model rambut 

dan frame 

Citra hasil penggabungan  Operasi berbasis frame 

Sistem penggabungan  citra menggunakan  operasi berbasis frame, 

dan Oeprasi logika and  User 

 

Gambar 3.1 Diagram konteks

3.2 Analisa kebutuhan Proses

Dari Uraian mengenai gambaran umum sistem pada Gambar 3.1 terdapat beberapa proses yang harus dilakukan oleh sistem yaitu proses penggabungan citra dengan menggunakan operasi logika and dan proses penggabungan citra dengan menggunakan operasi berbasis frame. Pada penggabungan citra menggunakan operasi logika and citra masukan dirubah menjadi biner terlebih dahulu. Hal ini dilakukan karena operasi logika and hanya dapat dilakukan pada citra biner.

Dari penjelasan proses pada Gambar 3.1 maka di dapat Data Flow Diagram (DFD) level 1yang ditunjukkan pada Gambar 3.2

(53)

Citra   wajah   Citra   model   rambut

Gambar 3.2 DFD level 1

3.2.1 Proses binerisasi

Proses binerisasi adalah proses yang harus dilakukan. Hal ini dikarenakan untuk melakukan proses penggabungan citra dengan menggunakan operasi logika and citra masukan yang diperlukan adalah citra biner (bernilai 0 dan 1 dalam piksel gambar). Proses binerisasi yang dirancang dapat dilihat pada Gambar 3.3

Citra model rambut biner 

Citra wajah biner  1  

Binerisasi 

2.penggabungan  menggunakan operasi 

logika and 3.penggabungan  menggunakan operasi 

berbasis frame

 

User 

(54)

Mulai 

Citra asli 

Image_biner = im2bw(originalimage) 

Selesai 

Gambar 3.3 Proses binerisasi

Keterangan

• Proses binerisasi dilakukan pada citra asli menggunakan perintah

yang sudah ada di dalam matlab yaitu im2bw yang digunakan untuk melakukan proses binerisasi atau merubah piksel citra asli menjadi 0 dan 1. Sebelum proses binerisasi proses graythresh dilakukan lebih dahulu. Graythresh adalah perintah yang sudah ada didalam matlab, yang dapat digunakan untuk menentukan nilai ambang piksel citra untuk dirubah menjadi 0 dan 1.

3.2.2 Proses penggabungan menggunakan operasi logika and

Proses penggabungan citra menggunakan operasi logika and merupakan proses utama yang dilakukan. Dalam hal ini penggabungan

(55)

citra wajah dan citra model rambut dilakukan dengan menggunakan operasi logika and. Proses ini dimulai dengan melakukan operasi logika and pada setiap piksel citra wajah dan model rambut. Sehingga didapat sebuah citra luaran berupa citra hasil penggabungan citra wajah dan citra model rambut.

Proses ini dapat dilihat pada Gambar 3.4. proses penggabungan citra wajah dan model rambut menggunakan operasi logika and.

A = gambar wajah  B = gambar rambut 

C = im2bw (a)  D = im2bw (b) 

E = c & d 

Selesai  Mulai 

Gambar 3.4. Proses penggabungan citra wajah dan model rambut menggunakan operasi logika and.

(56)

Keterangan :

• Pada proses ini yang pertama dilakukan adalah merubah kedua

buah citra masukan (citra wajah dan citra model rambut) dari format citra warna atau RGB menjadi citra biner.

• Setelah kedua buah citra masukan menjadi biner maka dilakukan

operasi logika and, sehingga hasil dari operasi logika tersebut adalah citra hasil penggabungan antara citra wajah dan citra model rambut dalam format citra biner.

3.2.3 Proses penggabungan menggunakan operasi berbasis frame

Proses penggabungan citra menggunakan operasi berbasis frame merupakan proses utama yang dilakukan. Dimana dalam proses penggabungan ini dilakukan berdasarkan citra frame yang digunakan, dengan cara melakukan perubahan pada piksel citra frame, dimana apabila piksel pada citra frame bernilai 0 atau hitam maka piksel tersebut akan diganti dengan piksel citra wajah. Sedangkan apabila pada piksel citra frame bernilai 1 atau putih maka pada piksel frame tersebut akan diganti dengan nilai piksel dari citra model rambut. Sehigga didapat hasil penggabungan citra wajah dan model dalam format citra warna.

(57)

Imread(gambar_wajah) Imread(frame)

Imread(rambut)

i<tinggi?

j<lebar?

Frame==255

Hasil=rambut Hasil=wajah selesai

benar

benar

benar  Sala

Salah

i++

j++ i = 1; j=1

(tinggi, lebar = Ukuran Citra wajah)

Sala

Mulai

Gambar 3.5 Algoritma penggabungan citra wajah dan rambut menggunakan operasi berbasis frame

Keterangan :

• Pada proses ini yang pertama dilakukan adalah melakukan

pengecekan terhadap ketiga ukuran citra masukan. Jika ketiga

(58)

• Setelah dilakukan pengecekan pada ukuran citra masukan, proses

selanjutnya adalah melakukan penggabungan citra wajah dan citra model rambut berdasarkan citra frame. Hal ini dilakukan dengan cara merubah nilai piksel dalam citra frame. Dimana citra frame sendiri berupa citra biner. Perubahan nilai ini dilakukan dengan cara, apabila pada piksel citra frame bernilai 0 atau hitam maka pada ordinat piksel tersebut nilainya akan di ganti dengan nilai piksel citra wajah pada ordinat yang sama. Sedangkan apabila pada piksel citra frame bernilai 1 atau putih maka pada ordinat piksel tersebut nilainya akan di ganti dengan nilai piksel citra model rambut pada ordinat yang sama juga.

3.2.4 Pengujian sistem dengan pengamatan visual

Pengujian dengan pengamatan visual dilakukan dengan membagi 30 kuesioner berisikan pertanyaan mengenai: segi tampilan aplikasi, segi penggunaan aplikasi, segi waktu pemrosesan, segi hasil pemrosesan, dan dari segi manfaat aplikasi.Kelima pertanyaan ini digunakan untuk mengetahui pendapat pengguna terhadap tampilan, penggunaan, waktu, hasil dan manfaat dari aplikasi, sehingga dapat dikethui kemampuan

(59)

serta kelebihan dan kekurangan dari aplikasi. Kuesioner dibagikan kepada 30 responden yang terdiri dari pelanggan salon, pegawai salon, dan mahasiswa USD. Ketiga kalangan responden tersebut dipilih supaya dapat mewakili semua kalangan pengguna aplikasi ketika aplikasi diterapkan. Dari hasil 30 responden ini dilakukan perhitungan terhadap jawaban dari kelima pertanyaan yang ada dalam kuesioner tersebut. Rancangankuesioner yang akan digunakan, adalah sebagai berikut :

KUISIONER IMPLEMENTASI OPERASI LOGIKA DAN OPERASI BERBASIS FRAME DALAM SEBUAH HAIR STYLING SIMULATOR Cara pengisian :

Berilah jawaban pada semua pertanyaan yang ada dengan cara memberikan tanda silang (x), pada jawaban yang anda yakini benar.

1. Dilihat dari segi tampilan apakah aplikasi ini :

a. Kurang menarik d. Sangat menarik

b. Tidak menarik

c. Cukup menarik

2. Dilihat dari segi pemakaian atau pengoperasian :

a. Sulit d. Sangat Mudah

b. Sangat sulit

c. Mudah

3. Dilihat dari waktu pemrosesan yang dibutuhkan :

a. Lambat d. Sangat Cepat

b. Sangat lambat

c. Cepat

4. Dilihat dari hasil penggabungan wajah dan model rambut :

a. Kurang Memuaskan d. Sangat memuaskan b. Tidak Memuaskan

c. Cukup memuaskan

(60)

5. Dilihat dari segi manfaat :

a. Kurang bermanfaat d. Sangat bermanfaat b. Tidak bermanfaat

c. Bermanfaat

3.3 Ukuran Piksel Citra

Dalam menggunakan aplikasi ini, citra yang digunakan memiliki ukuran yang sudah ditentukan, yaitu berukuran 1600x1200 piksel. Ukuran ini dipilih dikarenakan pada sejumlah camera digital merupakan ukuran default.

3.4 Perancangan tampilan antar muka

Rancangan tampilan antar muka dalam aplikasi ini adalah sebagai berikut :

3.4.1 Halaman utama

Gambar 3.6 Halaman utama Bantuan  kreator  Keluar 

Waktu proses

Model rambut

Buka foto 

Proses Simpan

Waktu proses

Clear

(61)

Pada program ini tampilan awal dan tampilan utama menjadi satu. Hal ini diterapkan supaya tampilan akan dapat di akses dengan lebih cepat dan lebih mudah, sehingga dapat mengurangi kesalahan dalam menjalankan program yang dilakukan oleh user.

Pada rancangan tampilan awal diatas terdapat dua tombol fungsi yaitu :

¾ Tombol bantuan

Tombol bantuan berisi sebuah video cara penggunakan aplikasi.

¾ Tombol kreator

Tombol kreator berisi tentang informasi pembuat aplikasi

¾ Tombol keluar

Tombol keluar adalah tombol yang memiliki fungsi exitatau keluar ketika program telah selesai dijalankan.

Pada rancangan tampilan utama diatas juga terdapat beberapa tombol yaitu :

¾ Tombol buka foto

Tombol buka foto berfungsi untuk membuka dan menampilkan direktori dimana foto wajah pengguna yang akan digunakan disimpan.

¾ Tombol model rambut

(62)

Tombol model rambut berfungsi untuk membuka dan menampilkan direktori dimana foto model rambut disimpan.

¾ Tombol proses

Tombol proses berfungsi untuk melakukan penggabungan antara foto wajah dan model rambut pengguna yang sudah dipilih.

¾ Tombol simpan

Tombol simpan berfungsi untuk melakukan penyimpanan terhadap hasil dari penggabungan foto wajah dan model rambut.

¾ Tombol clear

Tombol clear berfungsi untuk mengosongkan jendela buka wajah, model rambut, dan hasil penggabungan setelah program slesai dijalankan.

(63)

3.4.2 Halaman kreator

Rancangan halaman kreator dapat dilihat pada Gambar 3.7

Dosen Pembimbing : Anastasia Rita Widiarti, S.Si. , M.Kom  Email   : Kingprima@gmail.com 

Nim    : 06 5314 003 

Nama : Martinus Prima Yustanto  Kreator 

Gambar 3.7 halaman kreator.

Pada halaman kreator ini digunakan untuk memberikan informasi tentang pembuat program dan kontak yang dapat dihubungi. Pada halaman ini hanya berisi inforasi mengenai pembuat program.

3.4.3 Haman Bantuan

Gambar 3.8 halaman bantuan

Bantuan 

 

5. Tekan tombol clear untuk memulai proses baru.  4. Simpan hasil proses jika diinginkan 

3. Tekan tombol proses 

2. Pilih model  rambut yang diinginkan  1. Masukan foto wajah 

Cara penggunaan Aplikasi : 

(64)

Pada halaman bantuan ini akan ditampilkan informasi mengenai penggunaan aplikasi hair styling simulator.

3.4.4 Buka Foto

Buka foto merupakan tampilan open picture dialog, yaitu form yang digunakan untuk membuka file foto wajah dari pengguna yang akan di proses. File citra yang akan diproses adalah file citra dengan ukuran 1200 x 1600 piksel.

LOOK UP 

File Name  File Type 

Open 

Cancel 

Gambar 3.9 tampilan buka foto

3.4.5 Model Rambut

Model rambut merupakan tampilan open picture dialog , yaitu form yang digunakan untuk membuka file citra model rambut dengan exstensi .bmp dan dengan ukuran 1200x1600 piksel.

(65)

File Name  Open

File Type 

Cancel

Gambar 3.10 halaman model rambut

3.4.6 Simpan

Simpan adalah tampilan untuk menampilkan letak direktori atau folder yang akan digunakan untuk menyimpan data hasil penggabungan citra wajah dan model rambut.

Gambar 3.10 tampilan simpan

LOOK UP 

File Name  File Type 

Open 

Cancel 

Gambar 3.11 halaman simpan

(66)

3.4.7 Form pesan

Form pesan ini berisi pemberitahuan kepada user tentang pesan-pesan yang berasal dari program. Seperti proses berhasil dilakukan dan lain sebagainya.

 

 

 

 

Pesan 

Pesan... 

Ok 

Gamabr 3.12 gambar pesan program

3.4.8 Form dialog

Form dialog ini berfungsi untuk memberikan pesan yang membutuhkan konfirmasi kepada user.

 

 

 

X

Apakah anda akan keluar dari aplikasi ini?? 

Ok 

Gambar 3.13 gambar form dialog

(67)

 

3.5 Kebutuhan perangkat keras dan perangkat lunak

Spesifikasi yang digunakan untuk membuat tugas akhir ini adalah sebagai berikut:

• Processor : Intel Cor2Dua 1,8 GHz

• Memory : RAM 4 GB DDR 3

• Oprating System : Windows 7 profesional

• Software : Matlab 2009

3.6 Data

(68)

BAB IV

IMPLEMENTASI SISTEM

Program yang dibuat pada tugas akhir ini adalah program yang digunakan untuk melakukan simulasi pemilihan model rambut dengan menggunakan operasi berbasis bingkai dan operasi logika and. Pada bab ini akan dijelaskan mengenai implementasi sistem. Dan akan dilakukan analisis terhadap hasil dari implementasi sistem tesebut.

4.1 Implementasi Binerisasi Implementasi Binerisasi: 1. Inputkan citra asli

2. Gunakan im2bw yang merupakan sintak asli matlab 3. selesai

Keterangan :

Proses binerisasi ini digunakan untuk merubah format citra masukan dari citra RGB menjadi citra biner. Hal ini merupakan bagian dari proses penggabungan citra menggunakan operasi logika and. Dalam melakukan binerisasi citra masukan, proses ini menggunakan fungsi dari matlab yaitu fungsi im2bw.

4.2 Implementasi Operasi Logika And Implementasi Operasi Logika And

(69)

2. Inputkan citra rambut

3. Binerkan citra wajah dengan im2bw 4. Binerkan citra rambut dengan im2bw

5. Lakukan proses logika andpada citra biner wajah dan citra biner rambut

6. Selesai

Keterangan :

Implementasi operasi logika and ini dimulai dengan memasukan citra wajah dan citra model rambut. Selanjutnya kedua citra masukan akan dilakukan proses binerisasi menggunakan fungsi matlab yaitu im2bw. Setalah kedua citra masukan menjadi citra biner selanjutnya dilakukan proses penggabungan citra menggunakan operasi logika and. Hasil dari proses ini dapat dilihat pada: Gambar 4.1 hasil operasi logika and

(70)

4.3 Implementasi Operasi Berbasis Frame Implementasi Operasi Berbasis Frame:

1. Inputkan citra wajah 2. Inputkan citra frame 3. Inputkan citra rambut

4. Dapatkan ukuran citra wajah

5. Jika nilai variabel i kurang dari tinggi ukuran citra wajah lakukan langkah 6, jika tidak lakukan langkah 8.

6. Jika nilai variabel j kurang dari lebar ukuran citra wajah lakukan langkah 7, jika tidak lakukan langkah 5.

7. Jika nilai piksel citra frame 255 lakukan langkah 7.1, jika tidak lakukan langkah 7.2.

7.1isi citra hasil dengan citra rambut 7.2isikan citra hasil dengan citra wajah 8. Selesai

Keterangan :

(71)

Dimana jika nilai piksel citra frame adalah 255 maka pada citra hasil akan diisis dengan nilai piksel dari citra model rambut. Sedangkan jika piksel pada citra frame bernilai 0 maka pada citra hasil akan diisi dengan nilai piksel dari citra wajah. Sehingga dapat menghasilkan penggabungan citra wajah dan model rambut dalam format citra warna atau RGB. Hasil dari proses ini dapat dilihat pada Gambar 4.2 hasil penggabungan menggunakan operasi berbasis frame.

Gambar4.2 hasil penggabungan menggunakan operasi berbasis frame.

4.4 Implementasi Pengujian Sistem Dengan Pengamatan Visual

(72)

Tabel 4.1: Hasil Kuesioner Segi Tampilan

No. Kurang Menarik Tidak

Menarik

Cukup Menarik

Sangat Menarik

1. 0% 0% 70% 30%

Dari hasil 30 responden kuesioner diketahui bahwa, 70% responden memberikan respon, dari segi tampilan menyatakan cukup menarik. Sedangkan 30% responden menyatakan bahwa tampilan program sangat menarik.

Pertanyaan :

Dilihat dari segi pemakaian atau pengoperasian :

Tabel 4.2 Hasil Kuesioner Segi Pemakaian/Pengoperasian

No. Sulit Sangat Sulit Mudah Sangat

Mudah

1. 0% 0% 50% 50%

(73)

Pertanyaan :

Dilihat dari waktu pemrosesan yang dibutuhkan:

Tabel 4.3: Hasil Kuesioner Segi Waktu Pemrosesan

No. Lambat Sangat

Lambat

Cepat Sangat Cepat

1. 0% 0% 46,67% 55.33%

Dari hasil 30 responden kuesioner diketahui bahwa, 46,67% responden memberikan respon, dari segi waktu pemrosesan menyatakan cepat, sedangkan 53,33% responden menyatakan bahwa waktu pemrosesan sangat cepat.

Pertanyaan :

Dilihat dari hasil penggabungan citra :

Tabel 4.4: Hasil Kuesioner Segi Hasil Penggabungan Rambut No. Kurang

Memuaskan

Tidak Memuaskan

Cukup Memuaskan

Sangat Memuaskan

1. 3.3% 3.3% 80% 13.3%

(74)

13,3% responden menyatakan bahwa hasil penggabungan citra wajah dan model rambut sangat memuaskan

Pertanyaan :

Dilihat dari segi manfaat :

Tabel 4.5 Hasil Kuesioner Segi Manfaat No. Kurang

Bermanfaat

Tidak Bermanfaat

Bermanfaat Sangat Bermanfaat

1. 0% 0% 63.3% 36.7%

Dari hasil 30 responden kuesioner diketahui bahwa, 63,3% responden memberikan respon, dari segi manfaat menyatakan bermanfaat. Sedangkan 36,7% responden menyatakan bahwa tampilan program sangat bermanfaat.

4.5 Implementasi Ukuran Piksel Citra

(75)

Tabel 4.6 Tabel kecepatan proses berdasarkan ukuran piksel

Ukuran piksel

Waktu yang dibutuhkan Operasi berbasis

frame

Operasi logika and

1200 x 1600 0.712233 s 0.236697 s

2200 x 3200 3.90618 s 0.714414 s

4200 x 6200 32.5422 s 4.21352 s

4.6 Implementasi Tampilan

Tampilan awal dan tampilan utama yang diimplementasikan adalah sebagai berikut :

4.6.1 Tampilan Awal dan Tampilan Utama

Pada Tampilan awal dan tampilan utama ini terdapat lima buah tombol, yaitu:

1. Tombol buka foto, tombol ini berfungsi untuk memasukan foto wajah yang akan digunakan dalam proses penggabungan.

(76)

3. Tombol proses, tombol ini digunakan untuk melakukan proses penggabungan citra wajah dan cotra model rambut.

4. Tombol simpan, tombol ini digunakan untuk menyimpan hasil dari proses penggabungan citra wajah dan citra model rambut.

5. Tombol clear, tombol ini berfungsi untuk mengosongkan enam jendela pada aplikasi setelah proses selesai dilakukan.

Pada tampilan awal dan tampilan utama aplikasi ini juga terdapat enam buah jendela yaitu :

1. Jendela buka foto, jendela ini berfungsi untuk menampilkan foto yang akan digunakan dalam proses penggabungan.

2. Jendela model rambut, jendela ini berfungsi untuk menampilkan model rambut yang sudah dipilh dan akan digunakan proses penggabungan

(77)

4. Jendela hasil proses menggunakan operasi logika and, jendela ini berfungsi untuk menampilkan hasil proses penggabungan menggunakan operasi logika and.

5. Jendela waktu proses menggunakan operasi berbasis frame, jendela ini berfungsi untuk menampilkan waktu yang dibutuhkan proses penggabungan dengan menggunakan operasi berbasis frame.

6. Jendela waktu proses menggunakan operasi logika, jendela ini berfungsi untuk menampilkan waktu yang dibutuhkan proses penggabungan dengan menggunakan operasi logika and

.

Pada Tampilan awal dan tampilan utama ini terdapat tiga buah tombol fungsi, yaitu:

1. Tombol fungsi kreator, tombol fungsi kreator ini berfungsi untuk menampilkan profil pembuat aplikasi

2. Tombol fungsi bantuan, tombol fungsi bantuan ini berfungsi untuk menampilkan video cara penggunaan aplikasi.

(78)

Tampilan awal dan tampilan utama ini ditunjukan pada Gambar 4.3 tampilan utama

Gambar 4.3 tampilan utama

4.6.2 Tampilan Buka Foto

Tampilan buka foto adalah tampilan yang digunakan untuk memasukan foto wajah yang akan digunakan untuk proses penggabungan. Tampilan ini ditunjukan pada Gambar 4.4 tampilan buka foto

(79)

4.6.3 Tampilan Model Rambut

Tampilan model rambut adalah tampilan yang digunakan untuk memasukan model rambut yang akan digunakan untuk proses penggabungan. Tampilan ini ditunjukan pada Gambar 4.5 tampilan model rambut.

Gambar4.5 tampilan model rambut.

4.6.4 Tampilan Simpan

(80)

Gambar 4.6 tampilan simpan

4.6.5 Tampilan Kreator

Pada tampilan ini akan ditampilkan informasi tetang pembuat program. Tampilan ini ditunjukan pada Gambar 4.7 tampilan kreator.

 

 

 

 

 

 

(81)

4.6.6 Tampilan Bantuan

Tampilan ini berfungsi menampilkan video cara penggunaan aplikasi hair styling simulator.

4.6.7 Tampilan Form Dialog

Form dialog ini akan tampil jika program membutuhkan persetujuan kepada user untuk menjalankan beberapa proses. Selain itu tampilan ini akan keluar ketika program menyampaikan beberapa pesan kepada pengguna mengenai hasil dari eksekusi program atau mengenai kesalahan program yang terjadi. Berikut adalah tampilan form dialog yang digunakan dalam program simulasi pemilihan model rambut.

1. Peringatan ukuran piksel

(82)

Gambar 4.8form dialog data inputan jika ukuran sama

Tetapi jika ukuran piksel citra yang akan digunakan tidak sesuai dengan aturan yang ada maka sistem akan menampilkan form dialog berupa :

Gambar 4.9form dialog data inputan jika ukuran tidak sama

2. Form dialog Save

Form dialog ini digunakan untuk melakukan pemberitahuan kepada pengguna bahwa proses penyimpanan telah berhasil dilakukan.

(83)

3 Form dialog Clear

Form dialog ini digunakan untuk meyakinkan pengguna bahwa pengguna akan melakukan perintah clear, dan akan menghapus seluruh data yang ada dalam jendela aplikasi.

Gambar 4.11form dialog Pernyataan ketika melakukan clear

Dan setelah perintah clear berhasil dilakukan maka sistem akan menampilkan form dialog berupa Clear sukses kepda pengguna, sebagai pemberitahuan bahwa perintah clear telah berhasil dilakukan.

Gambar 4.12form dialog Pernyataan ketika sudah

Melakukan clear

(84)

BAB V

ANALISA HASIL

5.1 Uji Coba Program Dan Analisa Sistem

5.1.1 Uji Coba Program

Hasil penggabungan citra wajah dan citra model rambut menggunakan pemrosesan citra berbasis frame, tidak mengalami perubahan warna, karena operasi ini tidak bepengaruh terhadap jenis citra.

Pada proses penggabungan menggunakan opeasi berbasis frame ini, digunakan tiga buah citra masukan dan menghasilkan sebuah citra luaran. Citra yang digunakan adalah citra wajah, citra model rambut, dan citra frame sedangkan citra luaran yang dihasilkan adalah citra hasil penggabungan citra wajah dan model rambut menggunakan operasi berbasis frame dalam bentuk citra warna seperti pada Gambar 5.1.

(a) (b) (c) (d)

(85)

Sementara operasi kedua yaitu, operasi penggabungan citra wajah dan model rambut menggunakan operasi logika and. Pada operasi ini citra wajah dan citra model rambut akan dirubah terlebih dahulu menjadi citra biner, yang selanjutnya akan dilakukan operasi logika and untuk melakukan penggabungannya. Pada proses penggabungan menggunakan operasi logika and ini, digunakan dua buah citra masukan dan sebuah citra luaran yang berupa citra biner. Citra masukan yang digunakan adalah citra wajah dan citra model rambut. Sedangkan citra luaran yang dihasilkan adalah citra hasil penggabungan antara citra wajah dan citra model rambut dalam bentuk citra biner. Seperti pada Gambar 5.2.

(a) (b) (c)

(86)

5.1.2 Analisa Sistem

Proses penggabungan dengan menggunakan operasi berbasis frame dan operasi logika ini dipengaruhi oleh ukuran piksel citra yang digunakan. Dimana apabila ukuran piksel citra yang digunakan semakin besar maka waktu yang dibutuhkan proses juga semakin lama. Selain itu proses penggabungan dengan menggunakan operasi berbasis frame membutuhkan waktu yang lebih lama dibandingkan dengan proses penggabungan dengan menggunakan operasi logika and. Hal ini disebabkan proses peubahan nilai piksel pada penggabungan dengan menggunakan operasi berbasis frame dilakukan dengan cara melakukan prubahan piksel-perpiksel. Sedangkan proses penggabungan dengan menggunakan operasi logika dilakukan dengan cara melakukan operasi logika and pada seluruh piksel citra yang akan digabung. Hal ini bisa dilihat pada data berikut:

1. Citra dengan ukuran 1200 x 1600 piksel membutuhkan waktu 0,712233s untuk proses penggabungan dengan meggunakan operasi berbasis frame, sedangkan proses penggabungan dengan menggunakan operasi logika membutuhkan waktu 0,236697s.

(87)

penggabungan dengan menggunakan operasi logika membutuhkan waktu 0,714414s.

3. Citra dengan ukuran 4200 x 6200 piksel membutuhkan waktu 32,5422 s untuk proses penggabungan dengan meggunakan operasi berbasis frame, sedangkan proses penggabungan dengan menggunakan operasi logika membutuhkan waktu 4,21352s.

5.1.3 Kompleksitas Waktu Asimtotik

Kompleksitas waktu asimtotik digunakan untuk mengetahui apakah operasi berbasis frame dan operasi logika and merupakan operasi yang efektif. Untuk menentukan kompleksitas waktu asimtotik dihitung berdasarkan operasi-operasi yang mendasari operasi berbasis frame dan operasi logika and, langkah-langkah penyelesaian kompleksitas waktu adalah sebagai berikut, berdasarkan tabel  Pengelompokan Algoritma Notasi O-Besar pada bab 2 maka:

fr1 = imread('temp2a.bmp');

rambut = imread('temp2.bmp'); hasil1=fr1;

[tinggi,lebar]= size(im1); for(i=1:

(88)

for(j=1:lebar-1)...O(n-1)

if(fr1(i,j)==255)...O(1)

hasil1(i,j)=rambut(i,j);...O(1) else

hasil1(i,j)=im1(i,j);...O(1) end

end end

 

=O(n‐1)*((O(n‐1)+(O(1)+O(1)+O(1))) 

=O(n‐1)*((O(n‐1)+(O(1))) 

=O(n‐1)*O(n‐1) 

=O(n*n) 

=O(n2)  Termasuk algoritma polinomial atau termasuk algoritma mangkus

 

(89)

O(1)+O(1)+O(1)=O(1) Termasuk algoritma polinomial atau termasuk

algoritma mangkus

Dari perhitungan di atas di dapatkan bahwa kompleksitas waktu asimtotik operasi berbasis frame adalah O(n2). Menurut urutan spektrum kompleksitas waktu algoritma, kompleksitas waktu operasi berbasis frame sebesar O(n2) termasuk dalam kategori algoritma polinomial, dengan demikian algoritma ini tergolong algoritma yang mangkus.  

Sedangkan hasil perhitungan kompleksitas waktu asimotik operasi logika and adalah O(1). Menurut urutan spektrum kompleksitas waktu algoritma, kompleksitas operasi logika and sebesar O(1) termasuk dalam kategori algoritma polinominal, dengan demikian algoritma ini termasuk algoritma yang mangkus.

5.2 Analisa Kuesioner

Dari hasil 30 responden kuisioner yang terdiri dari pegawai salon, pelanggan salon, dan mahasiswa USD diketahui bahwa :

(90)

menyatakan bahwa aplikasi memiliki tampilang yang sangat menarik.

2. Untuk pertanyaan “dilihat dari segi pemakaian atau pengoprasian?” 50% responden menyatakan bahwa aplikasi mudah untuk digunakan, dan 50% responden menyatakan bahwa aplikasi sangat mudah digunakan. 3. Untuk pertanyaan “dilihat dari waktu pemrosesan yang

dibutuhkan?” 46,67% responden menyatakan bahwa aplikasi memiliki waktu pemrosesan yang cepat, dan 53,33% responden menyatakan aplikasi memiliki waktu pemrosesan yang sangat cepat.

4. Untuk pertanyaan “dilihat dari hasil penggabungan wajah dan model rambut ?” 3,3% responden menyatakan bahwa hasil penggabungan citra wajah dan model rambut kurang memuaskan, serta 3,3% responden menyatakan bahwa hasil penggabungan citra wajah dan model rambut 3,3% tidak memuaskan, 80% responden menyatakan cukup memuaskan, dan 13,3% menyatakan sangat memuaskan

Gambar

Gambar 2.1 Gambar croping
Gambar 2.4 : Contoh citra warna, citra grayscale dan citra biner
Gambar 2.5 (a) Citra burung nuri yang gelap, (b) Citra burung yang telah
Tabel 2.2. Tabel isi header bitmap
+7

Referensi

Dokumen terkait

Puji syukur kepada Tuhan Yang Maha Esa atas kasih dan penyertaanNya sehingga usulam penelitian yang berjudul “Uji Pelepasan Salbutamol Sulfat Dalam Sediaan Nasal

Dasar yuridis pemungutan BPHTB terdapat dalam Undang-Undang Nomor 28 Tahun 2009 tentang Pajak Daerah dan Retribusi Daerah, telah mengatur dengan jelas bahwa untuk dapat dipungut

pendapatan yang lebih besar dari kenaikan biaya sehingga laba bank meningkat,.. modal bank meningkat dan akhirnya ROA juga akan

FAKULTAS PENDIDIKAN ILMU PENGETAHUAN SOSIAL IKlP

Tujuan penelitian ini untuk meningkatkan hasil belajar kognitif biologi dan keterampilan metakognitif siswa kelas XI IPA 2 SMAN 1 Bringin melalui penerapan model

Menurut SNI Pd T-14-2003 mengenai perencanaan tebal perkerasan jalan beton semen, apabila tanah dasar mempunyai nilai CBR lebih kecil dari 2%, maka harus dipasang pondasi bawah

Pandangan Aliran ini adalah bahwa struktur bukanlah merupakan usaha yang rasional dari para manajer untuk menciptakan struktur yang paling efektif tetapi merupakan hasil dari

Perkembangan dilapangan yang ditemukan penulis pada Desember 2007 di ruang Yudistira Rumah Sakit Dr.H.Marzoeki Mahdi Bogor, 45% pasien setelah pemberian