Programmcodes Einzelblattstapelbildung / Mbed 2 deprecated Bahnkantenregelung_Julian

Dependencies:   TextLCD mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers edge_func.h Source File

edge_func.h

00001 /**
00002 *Funktionen zum Auslesen der Linienkamera und zur Detektion der Kante
00003 *
00004 *Headerdatei edge_func.h
00005 *
00006 *@version: 01.11.2015
00007 *@author: Gustav Grether
00008 */
00009 #ifndef EDGE_FUNC_H
00010 #define EDGE_FUNC_H
00011 
00012 #include "mbed.h"
00013 #include "interface.h"
00014 #include<queue>
00015 
00016 /**
00017  * Funktion initialisiert die Werte fuer Variablen
00018  * muss vor der Verwendung der Kamera ausgefuehrt werden
00019 
00020 */
00021 void sens_setup();
00022 /**
00023  * Funktion erzeugt einen Puls auf dem ClockPin
00024 */
00025 void clockPulse(); 
00026 
00027 /**
00028  * Funktion erzeugt einen Puls auf dem SI- und auf dem ClockPin
00029 */
00030 void siClkPulse();
00031 
00032 /**
00033  * Funktion liest den Sensor aus
00034  * berechnet den Mittelwert der Grauwerte aus mehreren (numMeas) Messungen
00035  * speichert die Werte in meanVal
00036  * der Wertebereich eines Pixels ist [0,1]
00037  * kontrolliert ob eine Messung fehlerhaft ist (Fehlfunktion des Sensors)
00038 */
00039 void read(); 
00040 
00041 /**
00042  * Funktion glaettet die in meanVal gespeicherten Grauwerte mit einem Gaußfilter
00043 */
00044 void gaussian_calc();
00045 
00046 /**
00047  * Funktion berechnet den Gradienten der Gauss gefilterten Grauwerte
00048 */
00049 void gradient_calc();
00050 
00051 /**
00052  * Funktion fuehrt Non-Maxima-Supression aus
00053  * quantisiert den Gradienten und berechnet lokale Maxima
00054  * d.h. Pixel die als Kante in Frage kommen
00055  * die anderen Pixel werden "unterdrueckt"
00056 */
00057 void nonMaxSupr();//
00058 
00059 /**
00060  * Funktion fuehrt Plausibilitaetspruefung fuer moegliche Kantenpixel aus
00061 */
00062 void plausible();
00063 
00064 /**
00065  * Funktion berechnet Kantenpixel
00066  * waehlt Pixel mit minimalem Gradient aus den moeglichen Kantenpixeln
00067 */
00068 void edgePx_calc();
00069 
00070 /**
00071  * Funktion berechnet Position (Pixel) der Kante und gibt diese zurück
00072  * @return Kantenpixel
00073 */
00074 int edgePx_get();
00075 
00076 #endif