Sabtu, 29 Juni 2013

materi pengolahan citra lanjutan

materi terakhir
pengolahan citra lanjutan


design form dan isi menu
















Listing Program
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 SaveCitraToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveCitraToolStripMenuItem.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 KeluarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KeluarToolStripMenuItem.Click
        End

    End Sub


Private Sub DefaultGambarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DefaultGambarToolStripMenuItem.Click
        gambar = New Bitmap(pic1.Image)
    End Sub


















a. grayscale
listing program

 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


tampilannya :
















b. negatif

listing program


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


tampilannya :

















c.rorate 90 derajat

listing program
Private Sub Rotate90ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rotate90ToolStripMenuItem.Click
        Dim rgb As Image
        rgb = pic2.Image
        If rgb IsNot Nothing Then rgb.RotateFlip(RotateFlipType.Rotate90FlipXY)
        pic2.Image = rgb
    End Sub


tampilannya :

















e.rorate 180 derajat

listing program
 Private Sub Rotate180ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rotate180ToolStripMenuItem.Click
        Dim Pb, Pc As Integer
        Dim vM, vH, vB As Double
        Dim gambar3 As Bitmap = New Bitmap(pic1.Image)
        With gambar
            For Pb = .Height - 1 To 0 Step -1
                For Pc = .Width - 1 To 0 Step -1
                    vM = .GetPixel(Pc, Pb).R
                    vH = .GetPixel(Pc, Pb).G
                    vB = .GetPixel(Pc, Pb).B
                    gambar3.SetPixel(.Width - 1 - Pc, .Height - 1 - Pb, Color.FromArgb(vM, vH, vB))

                Next
                pic2.Image = gambar3
                pic2.Refresh()
            Next

        End With
    End Sub
End Class


tampilannya:
















nahh .
ini dia semoga hasilnya luarbiasa
hhahhah

1 komentar: