contoh Aplikasi Sederhana Pengolahan Citra dengan VB.Net

Masih tentang pengolahan citra nih :). Berikut contoh program aplikasi untuk melakukanpengolahan citra :
1. Citra Grayscale
2. Citra Biner
3. Citra Rotate 180 derajat
4. Citra Negatif
5. Citra Brightness
Program juga dilengkapi dengan menu Open dan Save citra yang akan dan telah di olah.
Berikut design aplikasi sederhana pengolahan citra menggunakan VB Net
Aplikasi Sederhana Pengolahan Citra Menggunakan VB Net
Tambahkan komponen menustrip (pada toolbox Menus & Toolbar), OpenFileDialog ( pada toolbox Dialog) dan SaveFileDialog (pada toolbox Dialog)
OpenFileDialog  name dirubah menjadi OFD
SaveFileDialog  name dirubah menjadi SFD
Isi menu
Aplikasi Sederhana Pengolahan Citra Menggunakan VB Net
Listing program pengolahan citra menggunakan VB Net

Public Class Form1

Dim gambar As Bitmap

Private Sub OpenCitraToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesOpenCitraToolStripMenuItem.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 AsSystem.Object, ByVal e As System.EventArgs) HandlesSaveCitraToolStripMenuItem.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 AsSystem.Object, ByVal e As System.EventArgs) HandlesGrayscaleToolStripMenuItem.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 AsSystem.Object, ByVal e As System.EventArgs) HandlesNegatifToolStripMenuItem.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 BrigtnessToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesBrigtnessToolStripMenuItem.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 ToolStripMenuItem2_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles ToolStripMenuItem2.Click

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 RotateToolStripMenuItem_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles RotateToolStripMenuItem.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

gambar = gambar3

End Sub

End Class

Hasil program
Citra Biner
Aplikasi Sederhana Pengolahan Citra Menggunakan VB Net
Citra Negatif
Aplikasi Sederhana Pengolahan Citra Menggunakan VB Net
Citra Rotate 180 derajat
Aplikasi Sederhana Pengolahan Citra Menggunakan VB Net
Demikianlah Aplikasi Sederhana Pengolahan Citra Menggunakan VB Net

3 komentar

ppostingan yg sangat bagus.
terima kasih

Reply

bagus juga sih,saya masih tahap belajar

Reply

Post a Comment