/**
 * \file Ouverture.h
 * Implante un filtre d'ouverture en morphologie mathematique.
 * 
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */

#ifndef ____OUVERTURE____
#define ____OUVERTURE____

#include "Image.h"
#include "ElementStructurant.h"

/**
 * Filtre une image par ouverture.
 *
 * @param src l'image a filtrer.
 * @param dst l'image resultat apres filtrage.
 * @param e l'elementStructurant d'ouverture.
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */
void filtreImageOuverture(struct image *src,struct image *dst,struct elementStructurant *e);

/**
 * Filtre une image par ouverture.
 *
 * @param src l'image a filtrer.
 * @param dst l'image resultat apres filtrage.
 * @param e l'elementStructurant d'ouverture.
 * @param n le nombre d'iterations de l'ouverture.
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */
void filtreImageOuverture(struct image *src,struct image *dst,struct elementStructurant *e,int n);

/**
 * Filtre une image par ouverture.
 *
 * @param src l'image a filtrer.
 * @param dst l'image resultat apres filtrage.
 * @param e l'elementStructurant d'ouverture.
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */
void filtreImageOuverture(int callage,struct image *src,struct image *dst,struct elementStructurant *e);

/**
 * Filtre une image par ouverture.
 *
 * @param src l'image a filtrer.
 * @param dst l'image resultat apres filtrage.
 * @param e l'elementStructurant d'ouverture.
 * @param n le nombre d'iterations de l'ouverture.
 * @author Nicolas Janey
 * @author nicolas.janey@univ-fcomte.fr
 * @version 1.0, 12/01/06
 */
void filtreImageOuverture(int callage,struct image *src,struct image *dst,struct elementStructurant *e,int n);

#endif
