Belajar Bahasa Pemograman
Kali ini saya akan memposting tugas mengenai Pemograman Citra
Langsung saja,Kita Mulai yeaa.
Kali ini saya akan memposting tugas mengenai Pemograman Citra
Langsung saja,Kita Mulai yeaa.
1. Buka Microsoft Visual Studio 2008
2. Klik => Create: Project
3. Kemudian Desain Form tersebut dengan Label, TextBox, ComboBox, dan Button yang dapat kita pilih pada properties Toolbox.
2. Klik => Create: Project
3. Kemudian Desain Form tersebut dengan Label, TextBox, ComboBox, dan Button yang dapat kita pilih pada properties Toolbox.
4. Kemudian ini dia listing programnya :
Public Class Form1
Dim gambar2 As Bitmap
Private Sub Grayscale_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grayscale.Click
Dim Pb, Pc As Integer
Dim Rt, 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
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 Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
PictureBox2.Image = PictureBox1.Image
End Sub
Private Sub NegHijau_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NegHijau.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 PosHijau_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PosHijau.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 NegMerah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NegMerah.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 PosMerah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PosMerah.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 Rotate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rotate.Click
Dim Pb, Pc As Integer
Dim vM, vH, vB As Double
gambar2 = New Bitmap(PictureBox1.Image)
Dim gambar3 As Bitmap = New Bitmap(PictureBox1.Image)
For Pb = 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 PosBrigness_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PosBrigness.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 NegBrigness_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NegBrigness.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 Negatif_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Negatif.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
End
End Sub
End Class
Dim gambar2 As Bitmap
Private Sub Grayscale_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grayscale.Click
Dim Pb, Pc As Integer
Dim Rt, 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
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 Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
PictureBox2.Image = PictureBox1.Image
End Sub
Private Sub NegHijau_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NegHijau.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 PosHijau_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PosHijau.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 NegMerah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NegMerah.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 PosMerah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PosMerah.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 Rotate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rotate.Click
Dim Pb, Pc As Integer
Dim vM, vH, vB As Double
gambar2 = New Bitmap(PictureBox1.Image)
Dim gambar3 As Bitmap = New Bitmap(PictureBox1.Image)
For Pb = 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 PosBrigness_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PosBrigness.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 NegBrigness_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NegBrigness.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 Negatif_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Negatif.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
End
End Sub
End Class
5. Setelah
selesai, tekan F5 atau Start Debugging untuk menjalankan programnya
Hasilnya,
Jika klik
+Hijau , maka warna pada foto akan berubah menjadi Hijau .
7.Jika klik
+Greyscale , maka warna pada foto akan berubah menjadi Greyscale .
8.Jika klik
Rotate , maka warna pada foto akan berputar.
9.Jika klik Negatif, maka warna pada foto akan Seperti ini.
NB: Sekian
Pembelajaran Tentang Pengolahan Citra
Selamat Mencoba Semoga berhasil!!!!