i Universitas Kristen Maranatha Rekonstruksi Citra Perangko yang Berstempel
Roulina Fransisca / 0322124 Email : el_chubbz@yahoo.com
Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha Jalan Prof. Drg. Suria Sumantri 65, Bandung 40164, Indonesia
ABSTRAK
Citra atau dokumen yang penting dapat saja mengalami kerusakan seperti terkena noda harus diperbaiki. Sekarang ini memperbaiki citra digital dapat digunakan perangkat lunak khusus atau pengolahan citra dengan menggunakan algoritma tertentu.
Pada Tugas Akhir ini telah dibuat program untuk merekonstruksi citra perangko yang berstempel dengan menggunakan 2 cara, yaitu rekonstruksi dengan referensi dan rekonstruksi tanpa referensi. Rekonstruksi citra dengan referensi diproses dengan membentuk setiap piksel yang hilang dari objek. Warna piksel yang hilang diperoleh dengan menghitung rata-rata piksel-piksel tetangga dari referensi citra. Sedangkan Rekonstruksi citra tanpa referensi diproses dengan membentuk setiap pixel yang hilang dari objek dengan menghitung rata-rata pixel-pixel tetangga dari citra perangko yang berstempel yang dibandingkan dengan hasil segmentasi tanpa menggunakan referensi.
Dalam Tugas Akhir ini dilakukan pengujian pada 10 sampel citra. Setelah dilakukan rekonstruksi citra dengan referensi, diperoleh nilai rata-rata PSNR 2,57 dB dengan nilai MOS 3,4 dan pada rekonstruksi citra tanpa rekonstruksi, diperoleh nilai rata-rata PSNR 2,04 dB dengan nilai MOS 2,8. Aplikasi dari Tugas Akhir dapat dimanfaatkan untuk perbaikan pada berkas atau citra yang terkena noda. Hasil penilaian secara rekonstruksi citra perangko yang berstempel secara subyektif menunjukkan rata-rata yang lebih baik dibandingkan hasil perhitungan error secara obyektif.
ii Universitas Kristen Maranatha Image Reconstruction of Stamp Incuse
Roulina Fransisca / 0322124 Email : el_chubbz@yahoo.com
Electrical Engineering, Engineering Faculty, Christian Maranatha University Prof. Drg. Suria Sumantri 65 Street, Bandung 40164, Indonesia
ABSTRACT
Important image or document can have damage like stain, must be repaired. This time digital image can be repair with special software or image processing by using certain algorithm.
This Final Project has been made program to image reconstruction of stamp incuse by using 2 way, that is reconstruction with reference and reconstruction without reference. Image reconstruction with reference is processed by molding every pixel is losing from object. Colour pixel is losing obtained with calculating average of pixel-pixel neighbour from image reference. While reconstruction image without reference is processed by molding every pixel is losing. The lost pixel from object with calculating average of pixel-pixel neighbour from stamp incuse to result of segmentation without using reference.
In this Final Project done examination by 10 image samples. After done by reconstruction image with reference, obtained average value PSNR 2,57 dB with value MOS 3,4 and at reconstruction image without reconstruction, obtained average value PSNR 2,04 dB with value MOS 2,8.
Application from final Project can be useful for repair at bundle or image hit by stain. Result of assessment in image reconstruction for stamp incuse subjectively shows better mean compared to result of calculation errors objectively.
iii Universitas Kristen Maranatha
KATA PENGANTAR
Puji dan syukur atas ke hadirat Tuhan Yang Maha Esa karena atas berkat dan rahmat-Nya sehingga penulis dapat menyelesaikan Tugas Akhir yang berjudul “Rekonstruksi Citra Perangko yang berstempel”. Tugas Akhir ini disusun dalam rangka memenuhi syarat untuk menyelesaikan program studi tingkat sarjana Strata Satu (S-1) di Jurusan Teknik Elektro Fakultas Teknik Universitas Kristen Maranatha.
Penulis ingin mengucapkan terima kasih yang sebesar–besarnya kepada semua pihak yang secara langsung maupun tidak langsung telah banyak membantu penulis menyelesaikan tugas akhir ini. Penulis mengucapkan terimakasih kepada:
1. Ir. Aan Darmawan, MT., selaku Pembimbing Tugas Akhir ini yang telah bersedia meluangkan waktu untuk memberikan bimbingan dan tetap memberikan dorongan dan pengarahan kepada penulis.
2. Dr. Ir. Daniel Setiadikarunia, MT., selaku Ketua Jurusan Teknik Elektro Universitas Kristen Maranatha.
3. Ir.Anita Supartono, M.Sc., selaku Koordinator Tugas Akhir.
4. Dr. Ratnadewi, ST., MT., Novie T. Pasaribu, ST., MT., dan Riko Arlando, ST., MT., selaku dosen penguji Tugas Akhir yang telah banyak membantu penulis dalam memberikan masukan dan saran.
5. Ir. Kok King Lok., selaku Dosen Wali yang telah memberikan saran dan nasehat selama masa perkuliahan.
6. Seluruh staf Dosen Jurusan Teknik Elektro Universitas Kristen Maranatha, yang telah membimbing dan memberi bekal ilmu pengetahuan yang sangat berharga selama penulis mengikuti perkuliahan.
7. Seluruh staf TU dan karyawan di Jurusan Teknik Elektro Universitas Kristen Maranatha atas segala bantuan dan kerjasamannya.
iv Universitas Kristen Maranatha 9. Ivin Gloria Septimahari, Angki Dwi Saptani, Noviani Krisnadi, Diah
Ayu Oktavia, dan Hilda Fitriani terima kasih untuk menjadi sahabat yang selalu membantu, memberi nasehat, memberi perhatian dan pengertiannya.
10.Nurjani, Bagus Wisuda, SH., David , Paskal , Rubin, Yogi, Rizky , Yudhis , Martin, Ardy, Galih, Hemi, Jong, Windu, Yohanes, Henry , teman – teman yang telah mau menjadi sahabat yang paling baik dalam memberikan perhatian dan dukungan.
11.semua GSM yang selalu beri dukungan dan doa.
12.Teman–teman di Teknik Elektro khususnya angkatan 2003 yang telah memberikan perhatian dan bantuannya.
13.Semua pihak yang telah membantu secara langsung maupun tidak langsung selama proses penyusunan skripsi ini.
Penulis menyadari bahwa laporan tugas akhir ini masih jauh dari sempurna. Oleh karena itu, kritik dan saran sangat diharapkan untuk menyempurnakan tugas akhir ini.
Akhir kata semoga laporan Tugas Akhir ini bisa berguna dan bermanfaat bagi setiap pembaca.
Bandung, September 2008
v Universitas Kristen Maranatha
I.5 Sistematika Penulisan 2
BAB II LANDASAN TEORI 3
II.1 Pengolahan Citra Digital 3
II.2 Segmentasi Citra 4
II.3 Thresholding 4
II.4 Rekonstruksi citra 5
II.5 Microsoft Visual Basic 6.0 6
II.5.1 Form 6
II.5.2 Toolbox pada Visual Basic 7
II.5.3 GDI32 9
BAB III PERANCANGAN DAN REALISASI 10
III.1 Perancangan Antarmuka Pemakai 12
III.2 Ambil Gambar Referensi 14
III.3 Ambil Gambar 14
III.4 Pilih Warna Referensi Stempel 15
III.5 Segmentasi Citra 16
III.6 Rekonstruksi Citra 18
III.6.1 Rekonstruksi Citra dengan Referensi 18
III.6.2 Rekonstruksi Citra tanpa Referensi 21
vi Universitas Kristen Maranatha
BAB IV DATA PENGAMATAN DAN ANALISA 27
IV..1 Pengujian 27
IV.1.1 Pengujian Perangkat Lunak 29
IV.1.2 Menghitung Rata-Rata error dengan MSE 31
IV.1.3 Survey 31
IV.2 Analisa Data 33
BAB V KESIMPULAN DAN SARAN 37
5.1 Kesimpulan 37
5.2 Saran 37
DAFTAR PUSTAKA 38
LAMPIRAN A – LISTING PROGRAM A
vii Universitas Kristen Maranatha
DAFTAR TABEL
Tabel III.1 Komponen dan Properti 13
Tabel III.2 Nilai Rating Image Goodness Scale 25
Tabel IV.1 Hasil perhitungan MSE 31
Tabel IV.2 Hasil Jumlah Skor Survey 32
viii Universitas Kristen Maranatha
DAFTAR GAMBAR
Gambar II.1 Contoh hasil segmentasi pada citra 4
Gambar II.2 Contoh form pada Visual Basic 6
Diagram Blok Rekonstruksi Citra Perangko yang Berstempel dengan referensi
Diagram Blok Rekonstruksi Citra Perangko yang Berstempel tanpa referensi
10 10 Gambar III.3 Blok Diagram Alir Rekonstruksi Citra Perangko yang
Berstempel
11
Gambar III.4 Tampilan Program Menu Utama 12
Gambar III.5 Blok Diagram Alir Segmentasi Citra Perangko yang Berstempel
16 Gambar III.6 Blok Diagram Alir Rekonstruksi Citra Perangko yang
Berstempel dengan referensi
19 Gambar III.7 Blok Diagram Alir Rekonstruksi Citra Perangko yang
Berstempel tanpa referensi
22
Gambar IV.1 Gambar Sampel yang digunakan 28
Gambar IV.2 Proses Rekonstruksi Citra Perangko yang berstempel dengan Referensi
29 Gambar IV.3 Proses Rekonstruksi Citra Perangko yang berstempel
tanpa Referensi
30 Gambar IV.4 Hasil Pengujian rekonstruksi dengan referensi dan
rekonstruksi tanpa referensi
A
LAMPIRAN A
Listing Program
Lampiran
A-1
LISTING PROGRAM PADA VISUAL BASIC 6.0
Dim q, ph As String Dim z As Boolean
Private Declare Function GetPixel Lib "GDI32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long
Private Declare Function SetPixel Lib "GDI32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long
Option Explicit
Private Sub Command2_Click() Dim i As Integer, j As Integer
Dim R As Integer, G As Integer, B As Integer Dim R2 As Integer, G2 As Integer, B2 As Integer Dim c As Long, c2 As Long
Dim t As Integer
t = 55 Picture2.Cls
Picture2.DrawWidth = 1
For i = 0 To Picture1.ScaleWidth For j = 0 To Picture1.ScaleHeight
c = GetPixel(Picture1.hdc, i, j)
R = c Mod 256
G = (c \ 256) Mod 256 B = (c \ 256 \ 256) Mod 256
Lampiran
A-2 R2 = c2 Mod 256
G2 = (c2 \ 256) Mod 256 B2 = (c2 \ 256 \ 256) Mod 256
If Abs(R - R2) < t And Abs(G - G2) < t And Abs(B - B2) < t Then
SetPixel Picture2.hdc, i, j, vbWhite
Else
SetPixel Picture2.hdc, i, j, vbBlack
End If Next j Next i End Sub
Private Sub command5_click() Dim R As Integer
Dim G As Integer Dim B As Integer Dim warna As String Dim warna2 As String Dim R2 As Integer Dim G2 As Integer Dim B2 As Integer Dim mse As Long mse = 0
Lampiran
A-3 For i = 0 To Picture3.ScaleWidth
For j = 0 To Picture3.ScaleHeight warna = GetPixel(Picture3.hdc, i, j) R = warna Mod 256
G = (warna \ 256) Mod 256 B = (warna \ 256 \ 256) Mod 256 warna = (R + G + B) / 3
warna2 = GetPixel(Picture5.hdc, i, j) R2 = warna2 Mod 256
G2 = (warna2 \ 256) Mod 256 B2 = (warna2 \ 256 \ 256) Mod 256 warna2 = (R2 + G2 + B2) / 3 mse = mse + (warna - warna2) ^ 2 Next j
Next i
MsgBox mse
mse = mse / (Picture3.ScaleWidth * Picture3.ScaleHeight) Text3.Text = mse
End Sub
Private Sub Command7_Click() CommonDialog3.ShowSave ph = CommonDialog3.FileName If Len(ph) > 0 Then
SavePicture Picture3.Image, ph End If
End Sub
Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
Lampiran
A-4 Picture4.BackColor = Picture1.Point(x, y) End If
End Sub
Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
z = False End Sub
Private Sub Command1_Click() LoadPic Picture1
q = CommonDialog1.FileName Arrange
End Sub
Sub LoadPic(BackgroundPic As Control)
On Error GoTo err: With CommonDialog1
.DialogTitle = "Select a picture" .Filter = "*.*|*.*"
.ShowOpen End With
BackgroundPic.Picture = LoadPicture(CommonDialog1.FileName)
Exit Sub err:
MsgBox "an error occured while loading " & CommonDialog1.FileName End Sub
Lampiran
Lampiran
A-7 'End If
'End If Else
SetPixel Picture3.hdc, i, j, GetPixel(Picture1.hdc, i, j) End If
Next j Next i End Sub
Private Sub without_database()
Dim i, j, k, l, sb, tb, sr, tr, sg, tg As Integer Dim c, c2 As Long
Dim R2 As Integer, G2 As Integer, B2 As Integer Dim R As Long, G As Long, B As Long
Dim color As Long List1.Clear
Picture3.AutoRedraw = True Picture3.Cls
Picture3.DrawWidth = 1
For i = 0 To Picture2.ScaleWidth For j = 0 To Picture2.ScaleHeight
If GetPixel(Picture2.hdc, i, j) = vbWhite Then R = 0
tr = 0 G = 0 tg = 0 B = 0 tb = 0
Lampiran
A-9 ‘SetPixel Picture3.hdc, i, j, RGB(R, G, B) 'SetPixel Picture3.hdc, i + 1, j, RGB(R, G, B) 'SetPixel Picture3.hdc, i - 1, j + 1, RGB(R, G, B) 'SetPixel Picture3.hdc, i + 1, j, RGB(R, G, B)
'SetPixel Picture3.hdc, i + 1, j + 1, RGB(R, G, B) ' GetPixel(Picture2.hdc, i, j) SetPixel Picture2.hdc, i, j, RGB(R, G, B)
Else
SetPixel Picture3.hdc, i, j, GetPixel(Picture1.hdc, i, j) End If
Next j Next i End Sub
Private Sub Command4_Click() LoadPic2 Picture5
q = CommonDialog1.FileName Arrange
End Sub
Sub LoadPic2(BackgroundPic As Control)
On Error GoTo err: With CommonDialog2
.DialogTitle = "Select a picture as database" .Filter = "*.*|*.*"
.ShowOpen End With
BackgroundPic.Picture = LoadPicture(CommonDialog2.FileName)
Lampiran
A-10 err:
MsgBox "an error occured while loading " & CommonDialog2.FileName End Sub
Sub Arrange()
Picture1.Move Picture5.Left + Picture5.Width + 20, Picture5.Top, Picture5.Width, Picture5.Height
Picture2.Move Picture1.Left + Picture1.Width + 20, Picture1.Top, Picture1.Width, Picture1.Height
Picture3.Move Picture2.Left + Picture2.Width + 20, Picture2.Top, Picture1.Width, Picture1.Height
Frame3.Move Picture5.Left, Picture5.Top + Picture5.Height + 20 Frame1.Move Frame3.Left, Frame3.Top + Frame3.Height + 20 End Sub
Private Sub Command6_Click() End
1 Universitas Kristen Maranatha BAB I
PENDAHULUAN
I.1 Latar Belakang
Pada suatu berkas atau gambar terdapat cacat noda yang mengganggu penglihatan , misalnya berkas atau gambar yang terkena tinta, yang dapat diperbaiki secara digital. Salah satu cara untuk memperbaiki berkas atau gambar yang terkena noda tersebut yaitu dengan proses segmentasi dan rekonstruksi. Proses segmentasi merupakan salah satu proses yang dilakukan untuk memisahkan suatu objek dengan objek lainnya. Proses rekonstruksi merupakan suatu proses yang bertujuan untuk membentuk ulang objek yang hilang.
Dalam Tugas Akhir ini direalisasikan perangkat lunak untuk merekonstruksi citra perangko yang berstempel dengan menggunakan bahasa pemrograman Visual Basic.
I.2 Perumusan Masalah
Bagaimana memisahkan suatu citra perangko terhadap citra stempel dan merekonstruksi citra yang hilang pada perangko tersebut?
I.3 Tujuan
Dalam Tugas Akhir ini bertujuan membuat perangkat lunak untuk memisahkan citra perangko terhadap citra stempel dan merekonstruksi citra perangko tersebut.
I.4 Pembatasan Masalah
1. Objek terbatas pada perangko dan stempel dengan warna perangko dan stempel tidak sama
2. Warna stempel satu warna dan ditentukan pada masukan 3. Satu prangko hanya ada satu setempel
2
Universitas Kristen Maranatha I.5 Sistematika Penulisan
Bab I Pendahuluan
Membahas latar belakang penulisan, identifikasi masalah dalam penulisan, tujuan penulisan, pembatasan masalah dalam penulisan, dan sistematika penulisan Tugas Akhir ini.
Bab II Landasan Teori
Membahas teori dasar utama yang digunakan dalam membuat Tugas Akhir ini: Segmentasi Citra, Algoritma Thresholding, Rekonstruksi Citra dengan Referensi, Rekonstruksi Citra tanpa Referensi, dan Visual Basic 6.0. Bab III Perancangan dan Realisasi
Merupakan perancangan software yang menjabarkan proses ambil gambar, proses pilih warna otomatis, proses segmentasi citra, proses rekonstruksi citra, pembuatan formulir survey, dan proses menghitung nilai error pada hasil rekonstruksi citra.
Bab IV Hasil Akhir
Berisikan data-data hasil pengujian & analisa data yang telah dilakukan pada sepuluh contoh gambar yang direkontruksi dalam Tugas Akhir ini. Bab V Kesimpulan dan Saran
37 Universitas Kristen Maranatha
BAB V
KESIMPULAN DAN SARAN
V.1 Kesimpulan
Dalam Tugas Akhir ini dapat diambil kesimpulan sebagai berikut:
1. Pada rekonstruksi citra perangko tanpa referensi, rata-rata MSE lebih besar 3 kali lipat dari rekonstruksi citra perangko dengan referensi.
2. Hasil rekonstruksi citra perangko dengan referensi dengan rata-rata MOS = 3,4 lebih baik dibandingkan dengan hasil rekonstruksi citra perangko tanpa referensi dengan rata-rata MOS = 2,8.
3. Dari pengujian pada citra 1 diperoleh nilai PSNR = 2,60, sedangkan nilai MOS = 3,2. Hal ini terlihat kontradiktif karena hasil pengamatan manusia terlihat baik, sedangkan hasil PSNR menunjukkan nilai error yg cukup besar. Hal ini dikarenakan manusia hanya mengamati rekonstruksi pada daerah stempel, tidak keseluruhan.
V.2 Saran
1. Pada citra perangko yang berstempel perlu dilakukan proses rekonstruksi lebih dari satu kali agar bisa mendapatkan hasil yang lebih baik.
38 Universitas Kristen Maranatha
DAFTAR PUSTAKA
1. Basuki Achmad, Palandi Jozua F., Fatchurrochman. Pengolahan Citra Digital
menggunakan Visual Basic. Yogyakarta, 2005
2. Darmawan , Aan , Diktat Kuliah Pengolahan Citra Digital , Universitas Kristen Maranatha
3. Daryanto. Belajar Komputer Visual Basic, Bandung :Yrama Widya, 2003
4. Jain Anil K. Fundamental of Digital Image Processing, New Jersey : Prentice Hall International Editions, 1989
5. Munir , Renaldi , Pengolahan Citra Digital dengan Pendekatan Algoritmik , INFORMATIKA , 2004
6. Pratt William K. Digital Image Processing, California : Wiley-Interscience, 2007 7. http://anthonysteven.wordpress.com/tutorial/algoritma-kmeans
8. http://anthonysteven.wordpress.com/tutorial/algoritma-nearest-neighbor
9. http://en.wikipedia.org/wiki/Segmentation_(image_processing)
10.http://id.wikipedia.org/wiki/KNN
11.http://ikc.depsos.go.id/bab-1_Pengantar_Pengolahan_Citra.pdf
12.http://ikc.depsos.go.id/berseri/krisna-vb6/index.php
13.http://lecturer.eepis-its.edu/~nana/modulprakCitra08/PrakCitra_3BalikGambar.pdf