Pre Processing. Memberikan gambaran jenis-jenis pre-processing

dokumen-dokumen yang mirip
Pre Processing. Memberikan gambaran jenis-jenis pre-processing

Kompensasi Pencahayaan

Pembacaan dan Penampilan Image

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG Praktikum Pengolahan Citra Digital

LISTING PROGRAM PADA MICROSOFT VISUAL BASIC 6.0

Pengolahan Citra Digital Dengan Visual Basic

BAB III PEMBAHASAN MASALAH

MENGELOLA FILE. - Untuk menampilkan file, perlu membuka direktori penyimpanannya.

Sesi/Perkuliahan ke: XII

LISTING PROGRAM. 'byte of info Private Type RGBcolor R As Byte 'amount of red G As Byte 'amount of green B As Byte 'amount of blue End Type

BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR


Fungsi Kelompok : yang dalam hal ini d adalah jumlah pixel yang terlibat dalam perhitungan rata-rata. Gambar 1 memperlihatkan dua buah skema

MODUL III PENGGUNAAN KOMPONEN LANJUTAN


LISTING PROGRAM. Script Menu Utama Pada Game Tebak Kata

Struktur Data II. Bekerja Dengan Form.

Bab 7 Komponen Dasar Visual Basic 29 BAB VII KOMPONEN DASAR VISUAL BASIC TUJUAN PRAKTIKUM

1.1 Mengenal Visual Basic (VB) 1.2 Mengenal Integrated Development Environment (IDE) VB 6

Visual Basic 6.0 For Beginners

Lampiran A. Program Visualisasi Cuaca Otomatis

Pertemuan 3 Bekerja dengan Kontrol

VISUAL BASIC 6.0 PEMROGRAMAN KOMPUTER. Visual Basic

Krisna D. Octovhiana. 1.1 Mengenal Struktur Kontrol.

PROGRAM INTERFACING AUDIO DAN VIDEO DENGAN PROGRAM VISUAL BASIC LAPORAN TUGAS KARYA TULIS INTERFACING

Cepat Mahir Visual Basic 6.0. Cepat Mahir Visual Basic 6.0. Bab 13 Penanganan Keyboard. Krisna D. Octovhiana

BAB V PROSEDUR DAN FUNGSI

1. Buka Visual Basic 6 sobat. Buat project baru, masukkan componen Microsoft Winsock Control 2. Masukkan coding berikut

Gambar 8.1. Dialog Menu Editor.

OPERASI FILE Operasi File Dalam Visual Basic Membuka File

Menampilkan List Komputer dan User-nya dalam Jaringan Intranet Dengan Fungsi WNet API

BAB 2 LANDASAN TEORI

CONTOH KODE DALAM BAB 3

PENGGUNAAN DATA DAN VARIABEL

Cepat Mahir Visual Basic 6.0. Cepat Mahir Visual Basic 6.0. Bab 10 Penggunaan Kontrol Array. Krisna D. Octovhiana

Pengenalan Microsoft Visual Studio 2010

BAB III Struktur Program

BAB IV IMPLEMENTASI DAN PENGUJIAN

Pertemuan 11 type data, deklarasi variabel dan array 1.1 Mengenal Data dan Variabel

PENGGUNAAN DATA DAN VARIABEL KOMPUTER APLIKASI AKUNTANSI V PRODI AKUNTANSI - UNIKOM

E-Trick Visual Basic 6.0

Lampiran A HELP EZTWAIN. crash.

Krisna D. Octovhiana. 1.1 Mengenal Data dan Variabel.

BAB-3 ATRIBUT PRIMITIF 2D

VBSCRIPT TUTORIAL. 2. MEMASUKKAN KODE VBSCRIPT KE DALAM HALAMAN HTML Kode VBScript ditulis didalam pasangan tag <SCRIPT>.

BAB 11 MENGELOLA FILE & OLE (OBJECT LINGKING EMBEDDING)

BAB IV IMPLEMENTASI DAN PENGUJIAN. dan tempat implementasi dari perangkat lunak ini adalah sebagai berikut :

MODUL 2 SELECTION & LOOPING PADA FORM

MODUL I MEMBUAT PROGRAM PERTAMA VISUAL BASIC

LISTING PROGRAM. Private Sub MDIParent1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Algoritma Pemrograman 2 B

Krisna D. Octovhiana. 1.1 Apa itu Array?

LAMPIRAN CODING PROGRAM FORM DISPLAY : Private Sub Cmd_Cancel_Click() End End Sub

Pertemuan-1 TIPE DATA STRUKTUR

BAB IV IMPLEMENTASI DAN PENGUJIAN. dan menjelasan berbagai hal yang berhubungan dengan pengujian.

VISUAL BASIC 6.0 SETYO BUDI, M.KOM.

MODUL 3 SELEKSI KONDISI

Program Studi Teknik Mesin S1

MODUL I Pengenalan IDE Visual Basic 6.0

Keterangan : Integer Long : tipe data untuk angka bulat Single, Double : tipe data untuk angka pecahan/desimal Currency : tipe data untuk angka mata

MODUL PRAKTIKUM VB.NET STMIK-IM BANDUNG MODUL-MODUL PRAKTIKUM. VB. Net. Oleh : CHALIFA CHAZAR S T M I K - I M B A N D U N G

Krisna D. Octovhiana

Memahami Proyek-Proyek Visual Basic dan Dasar-Dasar Visual Basic Code

PRAKTIKUM 4 ARRAY DAN SUB ROUTINE

BAB IV IMPLEMENTASI DAN PENGUJIAN

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA

BAB IV IMPLEMENTASI DAN PENGUJIAN

MODUL IV PERULANGAN ( LOOPING )

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA PROSES BELAJAR MENGAJAR

BAB II LANDASAN TEORI

MODUL 2 Variabel, Val, If tunggal dan If bersarang + case

[Tutorial VB6] Bab 4 Penggunaan Data dan Variabel

BAB IV IMPLEMENTASI DAN PENGUJIAN

MODUL-MODUL PRAKTIKUM VB.

LAMPIRAN. Kode Program Menu Utama

SISTEM INFORMASI PEMESANAN JASA PENGGUNAAN INTERNET UNTUK MENINGKATKAN PELAYANAN PADA PELANGGAN. (Studi Kasus: Warnet STMIK AMIKOM Yogyakarta)

MODUL II. OBJECK, PROPERTY, METHOD dan EVENT

TUGAS 3 PRAKTIKUM PEMROGRAMAN.NET

Krisna D. Octovhiana. 1.1 Mengenal Struktur Kontrol.

TINJAUAN PUSTAKA. terjadi kesalahan. Dalam hal ini output yang dikendalikan adalah kestabilan,

Penggandaan Ke Sistem

Pemrograman Database dengan Remote Data Control. Tessy Badriyah, SKom,MT

Program absen dengan menggunakan visual basic 6.0

Pengenalan Visual Basic

Malang, Januari 2007 Penulis

Excel Sebagai Output VB 3.1 Excel Sebagai Output VB

SATUAN ACARA PERKULIAHAN MATA KULIAH ALGORITMA dan PEMROGRAMAN 1B(D3/TK) KODE : / SKS. Teknik Pembelajaran Kuliah mimbar dimana

MODUL 2 PERANCANGAN INTERFACE

LAMPIRAN A. Private Sub Command4_Click() MsgBox "isi pesan ini sesuka anda!", vbexclamation, "Tentang" End Sub

MODUL-MODUL PRAKTIKUM VB.

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA PROSES BELAJAR MENGAJAR

PENGGUNAAN STRUKTUR KONTROL

Variabel, Tipe Data, dan Operator. Oleh : Edi Sugiarto, S.Kom, M.Kom

Modul Praktikum Ke-2

Transkripsi:

PRAKTIKUM II Pre Processing Tujuan Memberikan gambaran jenis-jenis pre-processing Teori Penunjang Prosedur Percobaan 1. Berikut ini percobaan konversi dari gambar RGB menjadi Gray Scale. 2. Gunakan proyek dari program yang telah dibuat untuk percobaan sebelumnya, yaitu percobaan penampilan gambar menggunakan SetPixel. Salin proyek tersebut ke direktori lain agar dapat dipisahkan dari proyek sebelumnya. 3. Tambahkan menu Gray Scale dengan nama mnugrayscale. 4. Masukkan program berikut pada file Module1 Public Declare Function SetPixel Lib "gdi32" ( _ ByVal hdc As Long, ByVal x As Long, ByVal y As Long, _ ByVal crcolor As Long) As Long Public Declare Function GetPixel Lib "gdi32" ( _ ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long 18

5. Masukkan program berikut pada file Form1 Private Sub Dir1_Change() File1.Path = Dir1.Path Private Sub Drive1_Change() Dir1.Path = Drive1.Drive Private Sub File1_Click() Picture1.Picture = LoadPicture(File1.Path + "\" + File1.FileName) Private Sub Form_Load() File1.Pattern = "*.bmp;*.jpg;*.jpeg;*.gif;*.tif" Picture1.ScaleMode = 3 Picture1.AutoSize = True Picture1.AutoRedraw = True Private Sub mnugrayscale_click() Dim x As Integer, y As Integer For y = 0 To Picture1.ScaleHeight - 1 For x = 0 To Picture1.ScaleWidth - 1 p = GetPixel(Picture1.hdc, x, y) R = p And &HFF G = (p \ &H100) And &HFF B = (p \ &H10000) And &HFF Gray = (R + G + B) / 3 If Gray > 255 Then Gray = 255 SetPixel Picture1.hdc, x, y, RGB(Gray, Gray, Gray) 6. Jalankan program dan pilih gambar yang akan diproses 7. Tekan menu Gray Scale untuk mulai memproses gambar. 8. Coba jadikan project tersebut menjadi file *.exe dan jalankan kembali. Bandingkanlah kecepatan antara menjalankan melalui IDE VB dengan file *.exe. 9. Ubah formula untuk konversi gray scale dengan formulasi lainnya, yaitu Gray = 0,299R + 0,587G + 0, 114B Gray = R 2 + G 3 2 + B 2 10. Berikut ini percobaan yang sama tetapi dengan menggunakan cara copy buffer image. 11. Masukkan program berikut ini pada Module1 ' Deklarasi Jenis type Data RGB, untuk keperluan Image Processing Public Type trgb24 19

B As Byte G As Byte R As Byte End Type Public Type BITMAP '14 bytes bmtype As Long bmwidth As Long bmheight As Long bmwidthbytes As Long bmplanes As Integer bmbitspixel As Integer bmbits As Long End Type Public Declare Function GetObject Lib "gdi32" Alias "GetObjectA" ( _ ByVal hobject As Long, ByVal ncount As Long, lpobject As Any) As Long Public Declare Sub RtlMoveMemory Lib "kernel32" ( _ ByVal hpvdest As Long, ByVal hpvsource As Long, ByVal cbcopy As Long) Global RGB8() As Byte Global RGB16() As Integer Global RGB24() As trgb24 Global RGB32() As Long 12. Masukkan program berikut ini pada Form1 Private Sub Dir1_Change() File1.Path = Dir1.Path Private Sub Drive1_Change() Dir1.Path = Drive1.Drive Private Sub File1_Click() Picture1.Picture = LoadPicture(File1.Path + "\" + File1.FileName) Private Sub Form_Load() File1.Pattern = "*.bmp;*.jpg;*.jpeg;*.gif;*.tif" Picture1.ScaleMode = 3 Picture1.AutoSize = True Private Sub mnugrayscale_click() Dim x As Integer, y As Integer Dim bmp As BITMAP, u As Long Dim L As Integer GetObject Picture1.Picture.Handle, Len(bmp), bmp u = bmp.bmwidthbytes * bmp.bmheight L = bmp.bmbitspixel \ 8 Select Case L Case 1 Case 2 Case 3 ReDim RGB24(0 To bmp.bmwidth - 1, 0 To bmp.bmheight - 1) As trgb24 RtlMoveMemory VarPtr(RGB24(0, 0)), bmp.bmbits, u For y = 0 To Picture1.ScaleHeight - 1 For x = 0 To Picture1.ScaleWidth - 1 R = RGB24(x, y).r G = RGB24(x, y).g B = RGB24(x, y).b Gray = (R + G + B) / 3 20

If Gray > 255 Then Gray = 255 RGB24(x, y).r = Gray RGB24(x, y).g = Gray RGB24(x, y).b = Gray RtlMoveMemory bmp.bmbits, VarPtr(RGB24(0, 0)), u Case 4 End Select 13. Berikut ini percobaan konversi gambar dari RGB ke Biner. 14. Tambahkan menu Binary dengan nama mnubinary pada form sebelumnya, dan tambahkan program berikut. Private Sub mnubinary_click() Dim x As Integer, y As Integer For y = 0 To Picture1.ScaleHeight - 1 For x = 0 To Picture1.ScaleWidth - 1 p = GetPixel(Picture1.hdc, x, y) R = p And &HFF G = (p \ &H100) And &HFF B = (p \ &H10000) And &HFF Gray = (R + G + B) / 3 If Gray > 128 Then Gray = 255 Else Gray = 0 SetPixel Picture1.hdc, x, y, RGB(Gray, Gray, Gray) 15. Coba ubah-ubah nilai dari threshod yang digunakan. 16. Percobaan berikut digunakan untuk melakukan pengaturan keseimbangan warna putih. 17. Tambahkan menu White Balance dengan nama mnuwhitebalance pada form sebelumnya. 18. Lakukan beberapa tambahan dan modifikasi program pada file Form1. 19. Uji dengan membuka suatu gambar tertentu. 21

20. Klik menu White Balance dan jika muncul peringatan, klik OK. 21. Klik pada daerah gambar yang dapat dianggap sebagai referensi warna putih (gambar tersebut seharusnya warna putih). Dim pr As Integer, pg As Integer, pb As Integer Dim SelesaiWB As Boolean Private Sub Dir1_Change() File1.Path = Dir1.Path Private Sub Drive1_Change() Dir1.Path = Drive1.Drive Private Sub File1_Click() Picture1.Picture = LoadPicture(File1.Path + "\" + File1.FileName) Private Sub Form_Load() File1.Pattern = "*.bmp;*.jpg;*.jpeg;*.gif;*.tif" Picture1.ScaleMode = 3 Picture1.AutoSize = True Picture1.AutoRedraw = True Private Sub mnuwhitebalance_click() Dim X As Integer, Y As Integer MsgBox "Klik pada pixel yang dianggap berwarna putih" SelesaiWB = False While Not SelesaiWB DoEvents Wend For Y = 0 To Picture1.ScaleHeight - 1 For X = 0 To Picture1.ScaleWidth - 1 p = GetPixel(Picture1.hdc, X, Y) R = (p And &HFF) + pr G = ((p \ &H100) And &HFF) + pg B = ((p \ &H10000) And &HFF) + pb If R > 255 Then R = 255 If R < 0 Then R = 0 If G > 255 Then G = 255 If G < 0 Then G = 0 If B > 255 Then B = 255 If B < 0 Then B = 0 SetPixel Picture1.hdc, X, Y, RGB(R, G, B) Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim Max As Integer p = GetPixel(Picture1.hdc, X, Y) pr = p And &HFF pg = (p \ &H100) And &HFF pb = (p \ &H10000) And &HFF If pr > pg Then Max = pr Else Max = pg If pb > Max Then Max = pb 22

pr = Max - pr pg = Max - pg pb = Max - pb SelesaiWB = True Tugas 1. Buat program untuk melakukan filtering menggunakan cara LPF dan smoothing. Gunakan program seperti yang ada pada percobaan Robot Vision 2. Buat program untuk melakukan proses pengubahan ukuran pixel dengan menggunakan cara resampling dan kuantisasi. Gunakan program seperti yang ada pada percobaan Robot Vision. 23