Minggu, 30 Juni 2013

PENGOLAHAN CITRA VB 2008

Berikut adalah langkah-langkah yang harus dilakukan dalam pembuatan program pengolahan citra sederhana

Langkah pertama desainlah form seperti di bawah ini :

Kemudian tambahkan  menustrip (pada toolbox Menu & Toolbar),OpenFileDialog (pada toolbox Dialog) dan SaveFileDialog (pada toolbox Dialog)

OpenFileDialog  -> name dirubah jadi OFD

SaveFileDialog  -> name dirubah jadi SFD

Isi menu





Kemudian ketk syntax programnya seperti di bawah ini :

Public Class Form1



    Dim gambar As Bitmap



    Private Sub OpenCitraToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OpenCitraToolStripMenuItem.Click

        OFD.Filter = "BMP|*.bmp|JPG|*.Jpg"

        OFD.ShowDialog()



        If OFD.FileName = "" Then Exit Sub

        Pic1.Image = Image.FromFile(OFD.FileName)

        gambar = New Bitmap(Pic1.Image)

    End Sub

    Private Sub SavToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SavToolStripMenuItem.Click

        SFD.Filter = "JPG|*.Jpg|BMP|*.bmp"

        SFD.ShowDialog()

        If SFD.FileName = "" Then Exit Sub

        If SFD.FilterIndex = 1 Then

            gambar.Save(SFD.FileName, System.Drawing.Imaging.ImageFormat.Jpeg)

        End If

        If SFD.FilterIndex = 2 Then

            gambar.Save(SFD.FileName, System.Drawing.Imaging.ImageFormat.Bmp)

        End If

    End Sub



    Private Sub GrayscaleToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GrayscaleToolStripMenuItem.Click

        Dim Pb, Pc As Integer

        Dim Rt, vM, vH, vB As Double

        With gambar

            For Pb = 0 To .Height - 1

                For Pc = 0 To .Width - 1

                    vM = .GetPixel(Pc, Pb).R

                    vH = .GetPixel(Pc, Pb).G

                    vB = .GetPixel(Pc, Pb).B

                    Rt = (vM + vH + vB) / 3

                    .SetPixel(Pc, Pb, Color.FromArgb(Rt, Rt, Rt))

                Next

                Pic2.Image = gambar

                Pic2.Refresh()

            Next

        End With

    End Sub



    Private Sub NegatifToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NegatifToolStripMenuItem.Click

        Dim Pb, Pc As Integer

        Dim vM, vH, vB As Double

        With gambar

            For Pb = 0 To .Height - 1

                For Pc = 0 To .Width - 1

                    vM = 255 - .GetPixel(Pc, Pb).R

                    vH = 255 - .GetPixel(Pc, Pb).G

                    vB = 255 - .GetPixel(Pc, Pb).B

                    If vM <= 0 Then vM = 0

                    If vB <= 0 Then vB = 0

                    If vH <= 0 Then vH = 0

                    .SetPixel(Pc, Pb, Color.FromArgb(vM, vH, vB))

                Next

                Pic2.Image = gambar

                Pic2.Refresh()

            Next

        End With

    End Sub



    Private Sub BrightnessToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BrightnessToolStripMenuItem.Click

        Dim Pb, Pc As Integer

        Dim vM, vH, vB As Double

        With gambar

            For Pb = 0 To .Height - 1

                For Pc = 0 To .Width - 1

                    vM = .GetPixel(Pc, Pb).R + 5

                    vH = .GetPixel(Pc, Pb).G + 5

                    vB = .GetPixel(Pc, Pb).B + 5

                    If vM > 255 Then vM = 255

                    If vB > 255 Then vB = 255

                    If vH > 255 Then vH = 255

                    .SetPixel(Pc, Pb, Color.FromArgb(vM, vH, vB))

                Next

                Pic2.Image = gambar

                Pic2.Refresh()

            Next

        End With

    End Sub



    Private Sub MenuStrip1_ItemClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolStripItemClickedEventArgs) Handles MenuStrip1.ItemClicked

        gambar = New Bitmap(Pic1.Image)

    End Sub



    Private Sub KeluarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KeluarToolStripMenuItem.Click

        End

    End Sub



    Private Sub BinerToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BinerToolStripMenuItem.Click

        Dim Pb, Pc As Integer

        Dim rata, vM, vH, vB As Double

        With gambar

            For Pb = 0 To .Height - 1

                For Pc = 0 To .Width - 1

                    vM = .GetPixel(Pc, Pb).R

                    vH = .GetPixel(Pc, Pb).G

                    vB = .GetPixel(Pc, Pb).B

                    rata = (vM + vH + vB) / 3

                    If (rata < 128) Then

                        vM = 0

                        vH = 0

                        vB = 0

                    Else

                        vM = 255

                        vH = 255

                        vB = 255

                    End If



                    .SetPixel(Pc, Pb, Color.FromArgb(vM, vH, vB))

                Next

                Pic2.Image = gambar

                Pic2.Refresh()

            Next

        End With

    End Sub



    Private Sub Rotate270ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RotateToolStripMenuItem.Click

        Dim gambar2 = New Bitmap(Pic2.Image)

        gambar2 = New Bitmap(Pic2.Image)

        Pic2.Image = gambar2

        gambar2.RotateFlip(RotateFlipType.Rotate270FlipX)

        Pic2.Image = gambar2



    End Sub





    Private Sub Rotate90ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RotateToolStripMenuItem.Click

        Dim gambar2 = New Bitmap(Pic2.Image)

        gambar2 = New Bitmap(Pic2.Image)

        Pic2.Image = gambar2

        gambar2.RotateFlip(RotateFlipType.Rotate90FlipX)

        Pic2.Image = gambar2



    End Sub



End Class





Kemudian  klik debug atau tekan F5 untuk menjalankan program

Maka tampilannya akan seperti ini setelah anda memasukkan  gambar ke picturebox nya



Lalu pilih manipulasi citra

Tampilan Grayscale



Tampilan Negatif

Tampilan Brightness

Tampilan Biner

Tampilan Rotasi 90 derajat



Tampilan Rotasi 270 derajat

Demikian program sederhana pengolahan cutra

Selamat Mencoba

Ela Safina 1111872 TI-M1118

Mari Belajar Bahasa Pemograman








Jumat, 17 Mei 2013

Penerapan Listview di VB.Net 2008



Buat kamu yang ingin menggunakan listview pada VB.Net 2008,berikut langkah-langkah yang harus diperhatikan..