Short Courses on Computer Graphics, Image Processing and Computer Vision


Let me know what you think Mail me...

Course IPCis: Image Processing with C#/.NET

Copyright © by V. Miszalok, last update: 17-09-2006

  Visitors since 01-01-2002 layout: thanks to Stefan Münz
deutsch english
Einführung
C1: Bitmap, Bilder lesen und anzeigen
C2: Histo, Histogramm und Binarisierung
C3: Filter, Rauschen, Tiefpass, Hochpass
C4: Tiefpass
C5: Faltung und nichtlinearer Rangordnungsfilter
Introduction
C1: Bitmap, read and display images
C2: Histogram and binary images
C3: Filter, noise, lowpass, highpass
C4: Lowpass
C5: Convolution and a nonlinear ranking filter
 

C1: Bitmap, Bilder lesen und anzeigen

Lesen Sie beliebige Bilder der Formate BMP, ICO, GIF, JPG, PNG, TIFF und zeigen Sie diese in folgenden Versionen:
V1: GUID, Spalten- und Zeilenzahl, Pixelformat plus Rohbild
V2: Zentriert
V3 + V4: Streckungen
V5: Volle Größe
V6: Spiegelung
V7: Zoomanimation
V8: Drehanimation

C1: Bitmap, read and display images

Read arbitrary image formats BMP, ICO, GIF, JPG, PNG, TIFF and display them in different versions:
V1: GUID, no. of columns and rows, pixel format plus raw image
V2: In the center of of the window
V3 + V4: Stretching
V5: Full size
V6: Mirror effects
V7: Zoom animation
V8: Rotation animation

EXE 68kB Demo.exe → Download it and start it from Your local disk
Link C# Bauanleitung Link C# Guidance
PDF C# Bauanleitung Druckversion PDF C# Guidance Print Version
Link C# Complete Code
PDF C# Complete Code Print Version
Link C# Code Comments
PDF C# Code Comments Print Version
EXE 72kB BitmapWithButtons Demo.exe
Link BitmapWithButtons Code
PDF BitmapWithButtons Print Version

C2: Histogramm und Maus-gesteuerte Binarisierung

Das Programm besteht aus 3 Versionen V1 - V3.
V1: langsame Binarisierung mit SetPixel ohne Pointer
V2: schnell mit Pointern und 32-Bit Binärbild
V3: schnell mit Pointern und 1-Bit Binärbild

C2: Histogram with interactive threshold

The program has versions V1 - V3.
V1: slow thresholding with SetPixel without pointers
V2: fast with pointers and 32-bit binary image
V3: fast with pointers and 1-bit binary image

EXE 68kB Demo.exe → Download it and start it from Your local disk
Link C# Bauanleitung Link C# Guidance
PDF C# Bauanleitung Druckversion PDF C# Guidance Print Version
Link C# Complete Code
PDF C# Complete Code Print Version
Link C# Code Comments
PDF C# Code Comments Print Version
Link C# Complete Code with Threads
PDF C# Complete Code with Threads Print Version

C3: Filter, Rauschen, Tiefpass, Hochpass

Aus einem Eingabebild werden 5 Ausgabebilder generiert:
1. verrauschtes Bild durch Überlagerung mit einer Zufallsfunktion
2. verwaschenes Bild durch einen gewichteten Mittelwertfilter
3. Umrissbild druch einen horizontalen Kantenfilter
4. Umrissbild durch einen vertikalen Kantenfilter
5. Umrissbild durch eine vektorielle Kombination von 3. und 4.

C3: Filter, noise, lowpass, highpass

The input image is transformed into 5 output images:
1. a deteriorated image by adding noise
2. a blurred image generated by a weighted average filter
3. an outline image generated by a horizontal edge filter
4. an outline image generated by a vertical edge filter
5. an outline image generated by a vector combination of 3. and 4.

EXE 68kB Demo.exe → Download it and start it from Your local disk
Link C# Bauanleitung Link C# Guidance
PDF C# Bauanleitung Druckversion PDF C# Guidance Print Version
Link C# Complete Code
PDF C# Complete Code Print Version
Link C# Code Comments
PDF C# Code Comments Print Version

C4: Tiefpass

Eine kleine 11x12-Matrix definiert ein Minibild mit 10 Graustufen. Es dient als Lehrmodell eines Rasterbildes. Auf dieses Minibild wirken wahlweise 3 gewichtete Tiefpassfilter 3x3, 5x5 und 7x7 sowie ein Rauschgenerator. Man soll die Wirkung von Bildgröße, Filtergröße, Filtergewichtung und des Rauschens experimentell erkunden.

C4: Lowpass

A tiny 11x12 matrix defines a mini raster image with 10 gray values only. Averaging lowpass filters of size 3x3, 5x5 and 7x7 and a noise generator are implemeted. Test their effects and explore the influence of image size, filter size, filter mid weight and noise.

EXE 9kB Demo.exe → Download it and start it from Your local disk
Link C# Bauanleitung
PDF C# Bauanleitung Druckversion

C5: Faltung und nichtlinearer Rangordnungsfilter

Eine kleine 11x12-Matrix mit 10 Graustufen dient als Testbild für Faltungsoperationen.
Je ein 3x3 und 5x5 vordefinierter Filterkern dienen als Vorlage für eigene Experimente. Man soll die Wirkung selbstentworfener Filterkerne experimentell erkunden.
Als Beispiel für einen nichtlinearen Filter ist zusätzlich ein Rangordnungsfilter mit Tiefpasswirkung implementiert.

C5: Convolution and a nonlinear ranking filter

A tiny 11x12 matrix with 10 gray values serves as test image for an arbitrary 3x3 and 5x5 convolution. You should edit Your own 3x3 and 5x5 filter kernels and test their effects.

A simple ranking lowpass is implemented serving as sample of a nonlinear filter.

EXE 9kB Demo.exe → Download it and start it from Your local disk
Link C# Bauanleitung
PDF C# Bauanleitung Druckversion
top of page: