mira, hay una funcion con la que se modifica la gama de la imagen, y de la misma forma puedes aplicar otros filtros a tu imagen, te envio parte del codigo para que veas si te sirve
Public Class Form1
Inherits System.Windows.Forms.Form
Public valo As Object
Public ancho, ANCHO2, alto, ALTO2 As Integer
Public Sub SetGammaExample(ByVal e As PaintEventArgs)
Dim myImage As Image = PictureBox1.Image
Dim imageAttr As New System.Drawing.Imaging.ImageAttributes
imageAttr.SetGamma(valo)
Dim rect As New Rectangle(0, 0, ancho, alto)
e.Graphics.DrawImage(myImage, rect, 0, 0, ANCHO2, ALTO2, GraphicsUnit.Pixel, imageAttr)
End Sub
Private Sub pictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs)
SetGammaExample(e)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
AddHandler PictureBox1.Paint, AddressOf Me.pictureBox1_Paint
ancho = PictureBox1.Width
alto = PictureBox1.Height
ANCHO2 = PictureBox2.Width
ALTO2 = PictureBox2.Height
valo = 1
End Sub
Private Sub TrackBar1_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TrackBar1.Scroll
valo = TrackBar1.Value / 100
PictureBox1.Refresh()
Label1.Text = valo
Label1.Refresh()
End Sub
tu formulario debe contener 2 picturebox uno llamado picturebox1 y otro llamado picturebox2 ambos deben tener cargada la misma imagen, y uno con el sizemode a strech y el otro a autozise, tambien debes tener una trackbar para aumentar o disminuir la gama(llamada trackbar1)
espero te sirva, si no , contactame y te envio todo el ejemplo con codigo fuente por correo