Sabtu, 11 Januari 2014

Pemograman citra di vb 2008

Pada artikel kali saya akan membuat program pengolahan citra . Adapun  program yang akan dirancang yaitu menggunakan Visual Basic.Net 2008.

 Untuk memulai mengolah gambar atau disebut dengan citra, lakukan langkah dibawah ini:
1. Jalankan Aplikasi Visual Basic.Net 2008
2. Setelah Buat Nama program yang akan dibuat.  
3. Klik OK
4. Silahkan design form program vb untuk mengolah citra seperti bentuk di bawah ini.


















berikut ini adalah program listingnya;

Public Class Form1
    Dim gambar2 As Bitmap

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        PictureBox2.Image = PictureBox1.Image
    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Dim pb, pc As Integer
        Dim rt, vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox1.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = gambar2.GetPixel(pc, pb).R
                vh = gambar2.GetPixel(pc, pb).G
                vb = gambar2.GetPixel(pc, pb).B
                rt = (vm + vh + vb) / 3
                gambar2.SetPixel(pc, pb, Color.FromArgb(rt, rt, rt))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()
        Next
    End Sub

    Private Sub HIJAU_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HIJAU.Click
        Dim pb, pc As Integer
        Dim vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox2.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = gambar2.GetPixel(pc, pb).R
                vh = gambar2.GetPixel(pc, pb).G - 10
                vb = gambar2.GetPixel(pc, pb).B
                If vh <= 0 Then vh = 0
                gambar2.SetPixel(pc, pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()


        Next
    End Sub

    Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
        Dim pb, pc As Integer
        Dim vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox2.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = gambar2.GetPixel(pc, pb).R
                vh = gambar2.GetPixel(pc, pb).G + 10
                vb = gambar2.GetPixel(pc, pb).B
                If vh >= 255 Then vh = 255
                gambar2.SetPixel(pc, pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()
        Next
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Dim pb, pc As Integer
        Dim vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox2.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = gambar2.GetPixel(pc, pb).R - 10
                vh = gambar2.GetPixel(pc, pb).G
                vb = gambar2.GetPixel(pc, pb).B
                If vm <= 0 Then vm = 0
                gambar2.SetPixel(pc, pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()
        Next

    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim pb, pc As Integer
        Dim vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox2.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = gambar2.GetPixel(pc, pb).R + 10
                vh = gambar2.GetPixel(pc, pb).G
                vb = gambar2.GetPixel(pc, pb).B
                If vm >= 255 Then vm = 255
                gambar2.SetPixel(pc, pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()
        Next
    End Sub

    Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
        Dim pb, pc As Integer
        Dim rt, vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox1.Image)
        Dim gambar3 As Bitmap = New Bitmap(PictureBox1.Image)
        For fb = gambar2.Height - 1 To 0 Step -1
            For pc = gambar2.Width - 1 To 0 Step -1
                vm = gambar2.GetPixel(pc, pb).R
                vh = gambar2.GetPixel(pc, pb).G
                vb = gambar2.GetPixel(pc, pb).B
                gambar3.SetPixel(gambar2.Width - 1 - pc, gambar2.Height - 1 - pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar3
            PictureBox2.Refresh()
        Next
    End Sub

    Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
        Dim pb, pc As Integer
        Dim vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox2.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = gambar2.GetPixel(pc, pb).R + 5
                vh = gambar2.GetPixel(pc, pb).G + 5
                vb = gambar2.GetPixel(pc, pb).B + 5
                If vm >= 255 Then vm = 255
                If vb >= 255 Then vb = 255
                If vh >= 255 Then vh = 255
                gambar2.SetPixel(pc, pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()
        Next
    End Sub

    Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
        Dim pb, pc As Integer
        Dim vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox2.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = gambar2.GetPixel(pc, pb).R - 5
                vh = gambar2.GetPixel(pc, pb).G - 5
                vb = gambar2.GetPixel(pc, pb).B - 5
                If vm <= 0 Then vm = 0
                If vb <= 0 Then vb = 0
                If vh <= 0 Then vh = 0
                gambar2.SetPixel(pc, pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()
        Next
    End Sub

    Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click
        Dim pb, pc As Integer
        Dim vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox2.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = 255 - gambar2.GetPixel(pc, pb).R
                vh = 255 - gambar2.GetPixel(pc, pb).G
                vb = 255 - gambar2.GetPixel(pc, pb).B
                If vm <= 0 Then vm = 0
                If vb <= 0 Then vb = 0
                If vh <= 0 Then vh = 0

                gambar2.SetPixel(pc, pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()
        Next
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox2.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = 255 - gambar2.GetPixel(pc, pb).R
                vh = 255 - gambar2.GetPixel(pc, pb).G
                vb = 255 - gambar2.GetPixel(pc, pb).B
                If vm >= 255 Then vm = 0
                If vb >= 255 Then vb = 0
                If vh >= 255 Then vh = 0

                gambar2.SetPixel(pc, pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()
        Next
    End Sub

    Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click
        Dim pb, pc As Integer
        Dim vm, vh, vb As Double
        gambar2 = New Bitmap(PictureBox2.Image)
        For pb = 0 To gambar2.Height - 1
            For pc = 0 To gambar2.Width - 1
                vm = gambar2.GetPixel(pc, pb).R
                vh = gambar2.GetPixel(pc, pb).G
                vb = gambar2.GetPixel(pc, pb).B + 10
                If vb >= 255 Then vb = 255
                gambar2.SetPixel(pc, pb, Color.FromArgb(vm, vh, vb))
            Next
            PictureBox2.Image = gambar2
            PictureBox2.Refresh()
        Next
    End Sub
End Class


setelah program listingnya di buat, silahkan jalankan programnya atau tekan F5
maka hasilnya seperti ini;


















Setelah program dijalankan kita bisa merubah warnanya sesuai keinginan kita.

Silahkan mencoba

Tidak ada komentar:

Posting Komentar