Jumat, 19 Juli 2013

Pengertian Statistik

Definisi Statistika

Statistika adalah cabang ilmu yang mempelajari tentang bagaimana mengumpulkan, menganalisis dan menginterpretasikan data. Atau dengan kata lain, statistika menjadi semacam alat dalam melakukan suatu riset empiris.
Dalam menganalisis data, para ilmuwan menggambarkan persepsinya tentang suatu fenomena. Deskripsi yang sudah stabil tentang suatu fenomena seringkali mampu menjelaskan suatu teori. (Walaupun demikian, orang dapat saja berargumentasi bahwa ilmu biasanya menggambarkan bagaimana sesuatu itu terjadi, bukannya mengapa). Penemuan teori baru merupakan suatu proses kreatif yang didapat dengan cara mereka ulang informasi pada teori yang telah ada atau mengesktrak informasi yang diperoleh dari dunia nyata. Pendekatan awal yang umumnya digunakan untuk menjelaskan suatu fenomena adalah statistika deskriptif.

Statistika Deskriptif
Statistika deskriptif adalah tehnik yang digunakan untuk mensarikan data dan menampilkannya dalam bentuk yang dapat dimengerti oleh setiap orang. Hal ini melibatkan proses kuantifikasi dari penemuan suatu fenomena. Berbagai statistik sederhana, seperti rata-rata, dihitung dan ditampilkan dalam bentuk tabel dan grafik. Statistika deskriptif dapat memberikan pengetahuan yang signifikan pada kejadian fenomena yang belum dikenal dan mendeteksi keterkaitan yang ada di dalamnya. Tetapi dapatkah statistika deskriptif memberikan hasil yang bisa diterima secara ilmiah? Statistik merupakan suatu alat pengukuran yang berhubungan dengan keragaman pada karakteristik objek-objek yang berbeda .
Objek yang belum dikenal tidaklah mewakili populasi objek yang memiliki “quantifiabel feature” melalui penyelidikan. Namun demikian, keragaman bisa menjadi hasil dari keberagaman yang lainnya (karena acak atau terkontrol). Pada ilmu fisika, yang sangat berkaitan dengan ekstraksi dan formulasi persamaan matematik tidak menyisakan banyak tempat untuk fluktuasi acak. Pada ilmu statistika, fluktuasi seperti itu dapat dijadikan model. Hubungan relasi statistik selanjutnya merupakan hubungan relasi yang menerangkan suatu proporsi perubahan stokastik yang pasti.

Statistika Induktif
Berbeda dengan fisika, hubungan atau relasi empiris yang diobservasi pada ilmu alam, sosiologi dan psikologi (dan bidang pilhan lain misalnya ekonomi) bersifat statis. Pada bidang-bidang ini, pekerjaan empiris dilaksananakan berdasarkan percobaan-percobaan atau survey sampel. Pada kasus lainnya, seluruh populasi tidak dapat diobservasi-karena berbagai alasan ekonomis ataupun praktis. Mengambil kesimpulan tentang suatu populasi berdasarkan data dari sampel yang terbatas merupakan tujuan dari suatu proses pengambilan keputusan inferensial atau statistik induktif.
Perubahan di sini merupakan suatu refleksi variasi pada sampel dan proses pengambilan sampel
.
1. Asal Kata Statistik
Statistik
Bahasa Latin = Status
Statistik berasal dari kata state/status yang berarti Negara, karena beberapa keterangan-keterangan yang dibutuhkan dan berguna bagi Negara.

2. Bentuk Kata Statistik
a. Plural
Statistik diartikan sebagai kumpulan fakta-fakta yang berupa angka-angka (data kuantitatif) yang menunjukkan serangkaian kejadian baik yang belum tersusun dalam bentuk table maupun yang sudah berbentuk table.
Contoh : Data hasil penjualan Toko “A” dari tahun ke tahun.
Data jumlah penduduk suatu daerah “X”.
b. Singular
Statistik diartikan sebagai teknik atau metode guna mengumpulkan, mengolah, menyajikan, menganalisis data kuantitatif sehingga data tersebut bisa berbicara

3. Teknik/metode Statistik
a. Statistik Deskriptif (arti sempit)
Statistik diartikan sebagai susunan angka yang memberikan gambaran tentang data yang disajikan dalam bentuk table, diagram, histogram, polygon frekuensi, ogive, ukuran penempatan (median, kuartil, desil dan persentil), ukuran gejala pusat (rata-rata hitung, rata-rata ukur, rata-rata harmonic dan modus), simpangan baku, angka baku, kurva normal, korelasi dan regresi.
b. Statistik Inferensi/induktif/probabilitas (arti luas)
Statistik diartikan sebagai salah satu alat untuk mengumpulkan data, mengolah data, menarik kesimpulan dan membuat keputusan berdasarkan analisis data.
Statistik inferensi berdasarkan syarat data, terbagi dalam dua bentuk, yaitu :
1. Statistik Parametrik
Statistik yang datanya memenuhi sifat interval, normal, homogen, random dan linier.
Contoh : – pengujian hipotesis, regresi untuk menyimpulkan,
2. Statistik Nonparametrik
Statistik yang datanya kurang dari 30, tidak normal, tidak linier.
Contoh : – uji binomial, uji Chi-kuadrat, uji Kruskal-Walhi, uji
Fredman dll.

4. Keilmuan Statistik
a. Statistik Matematik
Ilmu yang mempelajari asal-usul atau menurunan sifat-sifat, dalil-dalil, rumus, serta dapat diwujudkan kedalam model-model lain yang bersifat teoritis.
b. Statistik Praktis
Penerapan statistik matematik kedalam berbagai bidang ilmu lainnya.

KARAKTERISTIK STATISTIK

Riduwan dan Sunarto (2007:5-6) menjelaskan beberapa karakteristik pokok statistic meliputi :
1. Statistik bekerja dengan angka
Pertama, angka statistic sebagai jumlah atau frekuensi dan angka statistic sebagai nilai atau harga. Pengertian ini mengandung arti bahwa data statistic adalah data kuantitatif. Misalnya, jumlah kecelakaan yang terjadi dalam satu tahun, jumlah tersangka koruptor yang diproses di KPK tahun 2009, jumlah siswa SD Jakarta tahun 2009, Jumlah siswa yang lulus UAN 2010, dan seterusnya. Angka-angka ini menyatakan nilai atau harga sesuatu
Kedua, Angka statistic sebagai nilai mempunyai arti data kualitatif yang diwujudkan dalam angka. Contoh : nilai IQ, mutu pengajaran guru, metode pengajaran, nilai kepuasan, dan seterusnya,
2. Statistik bersifat Objektf
Statistik bekerja dengan angka sehingga mempunyai sifat objektif, artinya angka statistic dapat digunakan sebagai alat pencari fakta, pengungkapan kenyataan yang ada dan memberikan keterangan yang benar, kemudian menentukan kebijakan sesuai fakta dan temuannya yang diungkapkan apa adanya.
3. Statistik bersifat Universal
Statistik tidak hanya digunakan dalam salah satu disiplin ilmu saja, tetapi dapat digunakan secara umum dalam berbagai bentuk disiplin ilmu pengetahuan dengan penuh keyakinan.

MANFAAT DAN KEGUNAAN STATISTIK

Statistik dapat digunakan sebagai alat (Riduwan dan Sunarto, 2007) :
1. Komunikasi. Adalah sebagai penghubungan beberapa pihak yang menghasilkan data statistic atau berupa analisis statistic sehingga beberapa pihak tersebut akan dapat mengambil keputusan melalui informasi tersebut.
2. Deskripsi. Merupakan penyajian data dan mengilustrasikan data, misalnya mengukur tingkat kelulusan siswa, laporan keuangan, tingkat inflasi, jumlah penduduk, dan seterusnya
3. Regresi. Adalah meramalkan pengaruh data yang satu dengan data yang lainnya dan untuk menghadapi gejala-gejala yang akan datang
4. Korelasi. Untuk mencari kuatnya atau besarnya hubungan data dalam suatu peneltian
5. Komparasi yaitu membandingkan data dua kelompok atau lebih.

STATISTIKA DASAR (Bagian 1)
A. PENGUKURAN KECENDERUNGAN PEMUSATAN DATA (CENTRAL TENDENCY MEASUREMENT)

Jenis
a. Rata-rata (Mean/Average)
1) Rata-rata Ukur/Geometrik (Geometric Mean)
Untuk bilangan yang besar lebih baik digunakan:
1. Data Dikelompokkan
2. Data Tidak Dikelompokkan
Catatan: Untuk fenomena yang bersifat tumbuh sering digunakan ukuran yang mirip dengan rata-rata ukur, yaitu;
2) Rata-rata Harmonik (Harmonic Mean)
a) Data Dikelompokkan
b) Data Tidak Dikelompokkan
3) Rata-rata Hitung (Arithmatic Mean)
a) Data Dikelompokkan
b) Data Tidak Dikelompokkan
Catatan: Untuk populasi digunakan notasi μ sebagai pengganti dan N sebagai pengganti n, sehingga rumus untuk Rata-rata Hitung bagi data yang tidak dikelompokkan menjadi,
Untuk rumus-rumus yang lain juga dapat menggunakan penggantian notasi sebagaimana di atas bila data yang dianalisis adalah hasil sensus.
4) Rata-rata Terbobot (Weighted Mean)
Waverage
Haverage
5) Rata-rata Terpotong 5% (5% Trimmed Mean)
6) Rata-rata Tengah (Interquartile Mean)
7) Rata-rata Wilayah (Area Mean)
8) Tri Rata-rata (Mean of Triple Central Measures)
b. Median
1) Data Dikelompokkan
2) Data Tidak Dikelompokkan
Median adalah nilai yang berada di tengah jika data diurutkan.
a) Banyaknya data merupakan bilangan genap
(1) Menentukan posisi Median
(2) Menentukan nilai Median
b) Banyaknya data merupakan bilangan ganjil
(1) Menentukan posisi Median
(2) Menentukan nilai Median
3) Median sebagai Estimator (M-Estimator)
c. Modus
1) Data Dikelompokkan
2) Data Tidak Dikelompokkan
Prosedur Pemilihan
a. Rata-rata Hitung
Rata-rata hitung digunakan apabila:
1) Jenis datanya adalah numerik interval/rasio.
Jika datanya numerik ordinal, gunakan median.
Jika datanya kategorik, gunakan modus.
2) Sebaran datanya simetrik
Jika sebaran datanya tidak simetrik, gunakan Tri Rata-rata (tidak terdapat di SPSS), Rata-rata Tengah (tidak terdapat di SPSS) atau Median/Modus.
3) Tidak ada data pencilan (outlier) maupun pencilan jauh (outliest)
Jika ada pencilan, periksa terlebih dahulu apakah pengukuran sudah dilakukan dengan benar atau tidak.
Jika terjadi kekeliruan pengukuran, maka data dapat dibuang/diganti dengan data baru.
Jika pengukuran sudah dilakukan dengan benar, maka data tidak boleh dihilangkan dan untuk menghilangkan pencilan, dapat ditambah jumlah sampel.
Jika pencilan atas tak lebih dari 5% dan pencilan bawah juga tak lebih dari 5%, gunakan Rata-rata Terpotong 5%.
Jika pencilan atas/bawah lebih dari 5% namun tak lebih dari 25%, gunakan Rata-rata Tengah (tidak terdapat di SPSS).
Jika pencilan atas/bawah ada yang melebih 25%, gunakan Median Estimator.
4) Untuk inferensi, sebaran data harus berdistribusi normal.
Untuk kepentingan ini dibuat selang kepercayaan (Interval Confidence) dengan menggunakan ± Kesalahan Baku dari Rata-rata Hitung (Standard Error of Arithmatic Mean) dengan rumus:
atau menggunakan
Untuk rata-rata terbobot selang kepercayaannya:
Jika sebaran tidak berdistribusi normal, lakukan transformasi.
Jika transformasi dilakukan berulang dan sebaran tetap tidak normal, maka gunakan Median/Modus untuk kepentingan inferensi.
Catatan: Jika Arithmatic Mean memenuhi syarat untuk digunakan, maka keseluruhan ukuran pemusatan data, ukuran posisi, dan ukuran dispersi juga dapat digunakan.
b. Median
Median digunakan bila:
1) Arithmatic Mean tak memenuhi syarat pada data berjenis interval/rasio seperti:
a) Sebaran data yang tidak simetrik
b) Untuk inferensi jika sebaran data tidak normal dengan selang kepercayaan:
2) Digunakan pada data numerik ordinal.
Catatan: Jika Arithmatic Mean tak memenuhi syarat untuk digunakan sehingga hanya digunakan Median, maka Variansi dan Simpangan Baku juga tak layak untuk digunakan. Dalam hal ini digunakan Interquartile Range dan Semi Interquartile Range(tidak terdapat di SPSS) untuk ukuran variasinya.
c. Modus
Modus digunakan bila:
1) Arithmatic Mean tak memenuhi syarat pada data berjenis interval/rasio seperti:
a) Sebaran data yang tidak simetrik
b) Untuk inferensi jika sebaran data tidak normal
begitu pula Median.
2) Digunakan pada data kategorik.
Catatan: Jika Arithmatic Mean dan Median tak memenuhi syarat untuk digunakan sehingga hanya digunakan Modus, maka Variansi, Simpangan Baku dan Interquartile Range serta Semi Interquartile Range juga tak layak untuk digunakan. Dalam hal ini digunakan Relative Frequency of Modal Value or Class (tidak terdapat di SPSS) dan yang lainnya.

STATISTIKA DASAR (Bagian 2)

A. PENGUKURAN POSISI / LOKASI DATA (POSITION / LOCATION MEASUREMENT)
1. Median
Catatan: Sudah dipaparkan pada poin A.1.b.
2. Kuartil (Quartile)
1. Menentukan posisi kuartil ke-i
1) Data Dikelompokkan
2) Data Tidak Dikelompokkan
a. Menentukan nilai kuartil ke-i
Desil (Decile)
1. Menentukan posisi desil ke-i
1) Data Dikelompokkan
2) Data Tidak Dikelompokkan
b. Menentukan nilai desil ke-i
Persentil (Percentile)
a. Menentukan posisi persentil ke-i
1) Data Dikelompokkan
2) Data Tidak Dikelompokkan
b. Menentukan nilai persentil ke-i
Titik Potong (Cut Point)
a. Menentukan posisi Titik Potong ke-i
1) Data Dikelompokkan
2) Data Tidak Dikelompokkan
b. Menentukan nilai titik potong ke-i
Catatan: Cut Point digunakan dalam rangka fleksibilitas pengelompokan data. Jadi jika tidak data tidak ingin dibagi dua, empat, sepuluh, atau seratus, maka Cut Point digunakan. Misalkan data ingin dibagi dalam tiga kelompok, lima kelompok, enam kelompok, lima belas kelompok, tiga puluh kelompok maupun yang lainnya maka digunakanlah Cut Point ini.

STATISTIKA DASAR (Bagian 3)

A. PENGUKURAN PENYIMPANGAN DATA (DISPERSION / DEVIATION / VARIATION MEASUREMENT)
Nilai maksimum (Xmax), nilai minimum (Xmin), dan rentang (Xmax – Xmin).
1. Untuk Arithmatic Mean
1. Simpangan Rata-rata / Simpangan Mutlak Rata-rata Hitung (Absolute Average Deviation)
1) Data Dikelompokkan
2) Data Tidak Dikelompokkan
2. Koefisien Sebaran (Coefficient Deviation)
3. Variansi (Variance)
1) Data Dikelompokkan
2) Data Tidak Dikelompokkan
Catatan: Untuk data yang berasal dari sensus, maka penggunaan notasinya menjadi sebagai berikut,
4. Simpangan Baku (Standard Deviation)
5. Dispersi Relatif (Relative Dispersion)
6. Koefisien Variasi (Coefficient Variation)
7. Angka Z
8. Angka Baku
Untuk distribusi normal baku dengan rata-rata hitung = 0 dan simpangan baku = 1, maka angka baku = Z.
2. Untuk Median
1. Rentang Antar Kuartil (Interquartile Range)
2. Rentang Semi Antar Kuartil (Semi Interquartile Range)
3. Untuk Modus
Frekuensi relatif dari nilai modus atau frekuensi relatif dari kelas modus.

STATISTIKA DASAR (Bagian 4)


A. PENGUKURAN DISTRIBUSI
1. Kemiringan (Skewness)
Kemiringan (Dihitung Jika W >= 3 Dan S2 > 0)
Dimana:
W = Sum of weight of the cases
S = Simpangan Baku
Jika n > 150 gunakan kurva normal sebagai pembanding.
2. Keruncingan (Kurtosis)
Keruncingan (Dihitung Jika W >= 4 Dan S2 > 0)
Jika n > 1000, gunakan kurva normal sebagai pembanding
Jika n
3. Normalitas (Normality)
a. Statistik Shapiro-Wilks (W)
b. Statistik Kolmogorov-Smirnov dengan Signifikansi Lilliefors
c. Plot Probabilitas Normal
d. Plot Normal yang di-Detrend

pengolahan citra


Public Class Form1
    Dim gambar As Bitmap
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    End Sub


    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 DefaultGambarToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DefaultGambarToolStripMenuItem.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 
Tampilannya :

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 - 2
                    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 :



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 :



Private Sub BrigthnessToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BrigthnessToolStripMenuItem.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

Tampilannya :



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

Tampilannya :



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 :




Private Sub ContrastToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ContrastToolStripMenuItem.Click
        gambar = New Bitmap(Pic1.Image)
        Pic2.Image = gambar
        Dim tempbmp As New Bitmap(Pic1.Image)
        Dim DX As Integer = 1
        Dim DY As Integer = 1
        Dim Red, Green, Blue As Integer
        Dim X, Y As Integer
        Dim tc As Integer
        tc = 5

        With tempbmp
            For X = DX To .Height - DX - 1
                For Y = DY To .Width - DY - 1
                    Red = CInt(.GetPixel(Y, X).R)
                    Green = CInt(.GetPixel(Y, X).G)
                    Blue = CInt(.GetPixel(Y, X).B)
                    'Grey = (Red + Green + Blue) / 3 'konversi warna pada pixel Y,X ke grey
                    Red = Red * tc
                    Blue = Blue * tc
                    Green = Green * tc
                    If (Red > 255) Then
                        Red = 255
                    End If
                    If (Blue > 255) Then
                        Blue = 255
                    End If
                    If (Green > 255) Then
                        Green = 255
                    End If
                    gambar.SetPixel(Y, X, Color.FromArgb(Red, Green, Blue))
                Next
                If X Mod 10 = 0 Then
                    Pic1.Invalidate()
                    Pic2.Refresh()
                End If
            Next
        End With

    End Sub

Tampilannya :






Private Sub SmoothingToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SmoothingToolStripMenuItem.Click
        Dim MF(2, 2) As Double

        'MaskFilter.Show()
        'matriks Filter
        '  0 1 2
        '0 a b c
        '1 d e f
        '2 g h i

        'Filter smoothing
        MF(0, 0) = 1 / 9 'a
        MF(0, 1) = 1 / 9 'b
        MF(0, 2) = 1 / 9 'c

        MF(1, 0) = 1 / 9 'd
        MF(1, 1) = 1 / 9 'e
        MF(1, 2) = 1 / 9 'f

        MF(2, 0) = 1 / 9 'g
        MF(2, 1) = 1 / 9 'h
        MF(2, 2) = 1 / 9 'i

        gambar = New Bitmap(Pic1.Image)
        Pic2.Image = gambar
        Dim tempbmp As New Bitmap(Pic1.Image)
        Dim DX As Integer = 1
        Dim DY As Integer = 1
        Dim Red As Integer, Green As Integer, Blue As Integer

        With gambar
            For i = DX To .Height - DX - 1
                For j = DY To .Width - DY - 1
                    'proses matriks filter
                    'point(j,i)*e --> titik tengah
                    Red = CInt(.GetPixel(j, i).R) * MF(1, 1)
                    Green = CInt(.GetPixel(j, i).G) * MF(1, 1)
                    Blue = CInt(.GetPixel(j, i).B) * MF(1, 1)
                    'proses titik tetangga
                    'point(j-1,i-1)*a--> MF(0,0)--> titik kiri atas
                    If j - 1 < 1 And i - 1 < 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(0, 0))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(0, 0))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(0, 0))
                    Else
                        Red = Red + (CInt(.GetPixel(j - 1, i - 1).R) * MF(0, 0))
                        Green = Green + (CInt(.GetPixel(j - 1, i - 1).G) * MF(0, 0))
                        Blue = Blue + (CInt(.GetPixel(j - 1, i - 1).B) * MF(0, 0))
                    End If
                    'point(j,i-1)*b --> MF(0,1) --> titik atas
                    If i - 1 < 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(0, 1))
     
                  Green = Green + (CInt(.GetPixel(j, i).G) * MF(0, 1))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(0, 1))
                    Else
                        Red = Red + (CInt(.GetPixel(j, i - 1).R) * MF(0, 1))
                        Green = Green + (CInt(.GetPixel(j, i - 1).G) * MF(0, 1))
                        Blue = Blue + (CInt(.GetPixel(j, i - 1).B) * MF(0, 1))
                    End If
                    'point(j+1,i-1)*c --> MF(0,2) --> titik kanan atas
                    If j + 1 > .Width - DY - 1 And i - 1 > 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(0, 2))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(0, 2))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(0, 2))
                    Else
                        Red = Red + (CInt(.GetPixel(j + 1, i - 1).R) * MF(0, 2))
                        Green = Green + (CInt(.GetPixel(j + 1, i - 1).G) * MF(0, 2))
                        Blue = Blue + (CInt(.GetPixel(j + 1, i - 1).B) * MF(0, 2))
                    End If
                    'point(j-1,i)*d --> MF(1,0) --> titik kiri
                    If j - 1 < 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(1, 0))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(1, 0))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(1, 0))
                    Else
                        Red = Red + (CInt(.GetPixel(j - 1, i).R) * MF(1, 0))
                        Green = Green + (CInt(.GetPixel(j - 1, i).G) * MF(1, 0))
                        Blue = Blue + (CInt(.GetPixel(j - 1, i).B) * MF(1, 0))
                    End If
                    'point(j+1,i)*f --> MF(1,2) --> titik kanan
                    If j + 1 > .Width - DY - 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(1, 2))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(1, 2))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(1, 2))
                    Else
                        Red = Red + (CInt(.GetPixel(j + 1, i).R) * MF(1, 2))
                        Green = Green + (CInt(.GetPixel(j + 1, i).G) * MF(1, 2))
                        Blue = Blue + (CInt(.GetPixel(j + 1, i).B) * MF(1, 2))
                    End If
                    'point(j-1,i+1)*g --> MF(2,0) --> titik kiri bawah
                    If j - 1 < 1 And i + 1 > .Height - DX - 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(2, 0))


                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(2, 0))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(2, 0))
                    Else
                        Red = Red + (CInt(.GetPixel(j - 1, i + 1).R) * MF(2, 0))
                        Green = Green + (CInt(.GetPixel(j - 1, i + 1).G) * MF(2, 0))
                        Blue = Blue + (CInt(.GetPixel(j - 1, i + 1).B) * MF(2, 0))
                    End If
                    'point(j,i+1)*g --> MF(2,1) --> titik bawah
                    If i + 1 > .Height - DX - 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(2, 1))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(2, 1))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(2, 1))
                    Else
                        Red = Red + (CInt(.GetPixel(j, i + 1).R) * MF(2, 1))
                        Green = Green + (CInt(.GetPixel(j, i + 1).G) * MF(2, 1))
                        Blue = Blue + (CInt(.GetPixel(j, i + 1).B) * MF(2, 1))
                    End If
                    'point(j+1,i+1)*h --> MF(2,2) --> titik kanan bawah
                    If j + 1 > .Width - DY - 1 And i + 1 > .Height - DX - 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(2, 2))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(2, 2))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(2, 2))
                    Else
                        Red = Red + (CInt(.GetPixel(j + 1, i + 1).R) * MF(2, 2))
                        Green = Green + (CInt(.GetPixel(j + 1, i + 1).G) * MF(2, 2))
                        Blue = Blue + (CInt(.GetPixel(j + 1, i + 1).B) * MF(2, 2))
                    End If
                    'normalisasi
                    If Red < 0 Then
                        Red = 0
                    Else
                        If Red > 255 Then
                            Red = 255
                        End If
                    End If
                    If Green < 0 Then
                        Green = 0
                    Else
                        If Green > 255 Then
                            Green = 255
                        End If
                    End If
                    If Blue < 0 Then
                        Blue = 0
                    Else
                        If Blue > 255 Then
                            Blue = 255
                        End If
                    End If

                    'simpan warna hasil smoothing ke point j,i
                    gambar.SetPixel(j, i, Color.FromArgb(Red, Green, Blue))
                Next
                If i Mod 10 = 0 Then
                    Pic1.Invalidate()
                    Me.Text = Int(100 * i / (Pic1.Image.Height - 2)).ToString & "%"
                    Pic1.Refresh()
                End If
            Next
        End With
        Pic1.Refresh()
        Me.Text = "Proses Smoothing Image berhasil"

    End Sub

Tampilannya:


Private Sub WeightSmoothingToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles WeightSmoothingToolStripMenuItem.Click
        Dim MF(2, 2) As Double

        'MaskFilter.Show()
        'matriks Filter
        '  0 1 2
        '0 a b c
        '1 d e f
        '2 g h i

        'Filter smoothing
        MF(0, 0) = 1 / 16 'a
        MF(0, 1) = 2 / 16 'b
        MF(0, 2) = 1 / 16 'c

        MF(1, 0) = 2 / 16 'd
        MF(1, 1) = 4 / 16 'e
        MF(1, 2) = 2 / 16 'f

        MF(2, 0) = 1 / 16 'g
        MF(2, 1) = 2 / 16 'h
        MF(2, 2) = 1 / 16 'i

        gambar = New Bitmap(Pic1.Image)
        Pic2.Image = gambar
        Dim tempbmp As New Bitmap(Pic1.Image)
        Dim DX As Integer = 1
        Dim DY As Integer = 1
        Dim Red As Integer, Green As Integer, Blue As Integer

        Dim i As Integer, j As Integer
        Dim k As Integer, l As Integer 'untuk mask border


        With gambar
            For i = DX To .Height - DX - 1
                For j = DY To .Width - DY - 1
                    'proses matriks filter
                    'point(j,i)*e --> titik tengah
                    Red = CInt(.GetPixel(j, i).R) * MF(1, 1)
                    Green = CInt(.GetPixel(j, i).G) * MF(1, 1)
                    Blue = CInt(.GetPixel(j, i).B) * MF(1, 1)
                    'proses titik tetangga
                    'point(j-1,i-1)*a--> MF(0,0)--> titik kiri atas
                    If j - 1 < 1 And i - 1 < 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(0, 0))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(0, 0))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(0, 0))
                    Else
                        Red = Red + (CInt(.GetPixel(j - 1, i - 1).R) * MF(0, 0))
                        Green = Green + (CInt(.GetPixel(j - 1, i - 1).G) * MF(0, 0))
                        Blue = Blue + (CInt(.GetPixel(j - 1, i - 1).B) * MF(0, 0))
                    End If
                    'point(j,i-1)*b --> MF(0,1) --> titik atas
                    If i - 1 < 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(0, 1))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(0, 1))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(0, 1))
                    Else
                        Red = Red + (CInt(.GetPixel(j, i - 1).R) * MF(0, 1))
                        Green = Green + (CInt(.GetPixel(j, i - 1).G) * MF(0, 1))
                        Blue = Blue + (CInt(.GetPixel(j, i - 1).B) * MF(0, 1))
                    End If
                    'point(j+1,i-1)*c --> MF(0,2) --> titik kanan atas
                    If j + 1 > .Width - DY - 1 And i - 1 > 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(0, 2))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(0, 2))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(0, 2))
                    Else
                        Red = Red + (CInt(.GetPixel(j + 1, i - 1).R) * MF(0, 2))
                        Green = Green + (CInt(.GetPixel(j + 1, i - 1).G) * MF(0, 2))
                        Blue = Blue + (CInt(.GetPixel(j + 1, i - 1).B) * MF(0, 2))
                    End If
                    'point(j-1,i)*d --> MF(1,0) --> titik kiri
                    If j - 1 < 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(1, 0))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(1, 0))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(1, 0))
                    Else
                        Red = Red + (CInt(.GetPixel(j - 1, i).R) * MF(1, 0))
                        Green = Green + (CInt(.GetPixel(j - 1, i).G) * MF(1, 0))
                        Blue = Blue + (CInt(.GetPixel(j - 1, i).B) * MF(1, 0))
                    End If
                    'point(j+1,i)*f --> MF(1,2) --> titik kanan
                    If j + 1 > .Width - DY - 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(1, 2))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(1, 2))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(1, 2))
                    Else
                        Red = Red + (CInt(.GetPixel(j + 1, i).R) * MF(1, 2))
                        Green = Green + (CInt(.GetPixel(j + 1, i).G) * MF(1, 2))
                        Blue = Blue + (CInt(.GetPixel(j + 1, i).B) * MF(1, 2))
                    End If
                    'point(j-1,i+1)*g --> MF(2,0) --> titik kiri bawah
                    If j - 1 < 1 And i + 1 > .Height - DX - 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(2, 0))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(2, 0))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(2, 0))
                    Else
                        Red = Red + (CInt(.GetPixel(j - 1, i + 1).R) * MF(2, 0))
                        Green = Green + (CInt(.GetPixel(j - 1, i + 1).G) * MF(2, 0))
                        Blue = Blue + (CInt(.GetPixel(j - 1, i + 1).B) * MF(2, 0))
                    End If
                    'point(j,i+1)*g --> MF(2,1) --> titik bawah
                    If i + 1 > .Height - DX - 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(2, 1))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(2, 1))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(2, 1))
                    Else
                     

  Red = Red + (CInt(.GetPixel(j, i + 1).R) * MF(2, 1))
                        Green = Green + (CInt(.GetPixel(j, i + 1).G) * MF(2, 1))
                        Blue = Blue + (CInt(.GetPixel(j, i + 1).B) * MF(2, 1))
                    End If
                    'point(j+1,i+1)*h --> MF(2,2) --> titik kanan bawah
                    If j + 1 > .Width - DY - 1 And i + 1 > .Height - DX - 1 Then 'jika out of border ambil nilai tengah/point(x,y)
                        Red = Red + (CInt(.GetPixel(j, i).R) * MF(2, 2))
                        Green = Green + (CInt(.GetPixel(j, i).G) * MF(2, 2))
                        Blue = Blue + (CInt(.GetPixel(j, i).B) * MF(2, 2))
                    Else
                        Red = Red + (CInt(.GetPixel(j + 1, i + 1).R) * MF(2, 2))
                        Green = Green + (CInt(.GetPixel(j + 1, i + 1).G) * MF(2, 2))
                        Blue = Blue + (CInt(.GetPixel(j + 1, i + 1).B) * MF(2, 2))
                    End If
                    'normalisasi
                    If Red < 0 Then
                        Red = 0
                    Else
                        If Red > 255 Then
                            Red = 255
                        End If
                    End If
                    If Green < 0 Then
                        Green = 0
                    Else
                        If Green > 255 Then
                            Green = 255
                        End If
                    End If
                    If Blue < 0 Then
                        Blue = 0
                    Else
                        If Blue > 255 Then
                            Blue = 255
                        End If
                    End If

                    'simpan warna hasil smoothing ke point j,i
                    gambar.SetPixel(j, i, Color.FromArgb(Red, Green, Blue))
                Next
                If i Mod 10 = 0 Then
                    Pic1.Invalidate()
                    Me.Text = Int(100 * i / (Pic1.Image.Height - 2)).ToString & "%"
                    Pic1.Refresh()
                End If
            Next
        End With
        Pic1.Refresh()
        Me.Text = "Proses Weighted Smoothing Image berhasil"

 End Sub

Tampilanya :

Private Sub InversiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles InversiToolStripMenuItem.Click
        Dim inVal As Object

        inVal = InputBox("Berapa Bit ? ", "Inversi", "8")

        If inVal <> "" Then
            gambar = New Bitmap(Pic1.Image) 'Gambar asli dijadikan gambar Bitmap
            Pic2.Image = gambar
            Dim tempbmp As New Bitmap(Pic1.Image) 'deklarasi gambar Bitmap dari gambar asli untuk diproses
            Dim DX As Integer = 1
            Dim DY As Integer = 1
            Dim mBit, Red As Integer, Green As Integer, Blue As Integer, Grey As Integer
            Dim X, Y As Integer
            mBit = CInt(inVal)
            With tempbmp
                For X = DX To .Height - DX - 1
                    For Y = DY To .Width - DY - 1
                        Red = CInt((Math.Pow(2, mBit) - 1)) - CInt(.GetPixel(Y, X).R) 'ambil nilai warna merah (Red) pada pixel(Y,X)
                        Green = CInt((Math.Pow(2, mBit) - 1)) - CInt(.GetPixel(Y, X).G) 'ambil nilai warna hijau (Green) pada pixel(Y,X)
                        Blue = CInt((Math.Pow(2, mBit) - 1)) - CInt(.GetPixel(Y, X).B) 'ambil nilai warna biru (Blue) pada pixel(Y,X)

                        If (Red > 255) Then
                            Red = 255
                        Else
                            If Red < 0 Then
                                Red = 0
                            End If
                        End If

                        If Green > 255 Then
                            Green = 255
                        Else
                            If Green < 0 Then
                                Green = 0
                          

 End If
                        End If

                        If Blue > 255 Then
                            Blue = 255
                        Else
                            If Blue < 0 Then
                                Blue = 0
                            End If
                        End If

                        gambar.SetPixel(Y, X, Color.FromArgb(Red, Green, Blue)) 'simpan warna baru pada pixel(Y,X)
                    Next


                    If X Mod 10 = 0 Then
                        Pic1.Invalidate()
                        Pic1.Refresh()
                    End If
                Next
            End With

            Pic1.Refresh()
            Me.Text = "Pengolahan Citra : Proses Inversi Scale berhasil"
        End If


    End Sub
End Class

Tampilanya :