Révision – Fonction OpenCV Section 1 – Ouverture, sauvegarde de

Révision – Fonction OpenCV
Section 1 Ouverture, sauvegarde de fichier
1.1 Ouverture de fichier
La fonction cvLoadImage charge une image à partir du fichier spécifié et retourne un pointeur sur l'image
chargée.
Syntaxe : IplImage *cvLoadImage( const char* NomFichier, int Couleur=CV_LOAD_IMAGE_COLOR)
Paramètres :
const char *NomFichier : Nom du fichier à charger.
int Couleur : Spécifie si l'image sera chargée en couleur ou en ton de gris.
Les valeurs sont définies par les constantes suivantes :
Nom de la constante
Valeu
r
Description
CV_LOAD_IMAGE_COLOR
1
Charge l'image en utilisant 3 canaux(rouge, vert,
bleu)
CV_LOAD_IMAGE_GRAYSCALE
0
Charge l'image en ton de gris
Les formats supportés sont les suivants:
Windows bitmaps - BMP, DIB;
JPEG files - JPEG, JPG, JPE;
Portable Network Graphics - PNG;
Portable image format - PBM, PGM, PPM;
Sun rasters - SR, RAS;
Fichiers TIFF TIFF, TIF.
1.2 Sauvegarde de fichier
Cette fonction sauvegarde l'image dans le fichier spécifié. Le format de l'image est choisi en fonction du nom de
l'extension. Seulement des images de 8 bits (Canal simple) ou des images avec 3 canaux (avec le format BGR)
peuvent être sauvegardées avec cette fonction. Si le format diffère des 2 précédents, l'image peut être
convertie avec la fonction cvCvtScale et cvCvtColor. On peut aussi utiliser la fonction universelle cvSave pour
sauvegarder l'image en format XML ou YAML.
Syntaxe:
int cvSaveImage( const char* filename, const CvArr* image );
Paramètres:
const char *filename : Nom du fichier à sauvegarder.
const CvArr *image : L'image à sauvegarder.
1.3 Affichage d'une image
Syntaxe : void cvShowImage( const char* name, const CvArr* image)
Description : Cette fonction affiche l'image contenu dans le 2e paramètre dans une fenêtre préalablement créée à l'aide de la
fonction cvNamedWindow. Le nom de la fenêtre se situe dans le 1er paramètre.
Paramètres :
const char* name : Chaine de caractère contenant le nom de la fenêtre
const CvArr* image : L'image à faire afficher.
Exemple :
cvNamedWindow( ''Exemple'', 1 );
IplImage* img = cvLoadImage( ''image.jpg'');
Exemple :
#include <cv.h>
#include <highgui.h>
int main()
{
const char *NomFichierSource = ''image.jpg'';
const char *NomFichierResultat = ''imageresultat.jpg'';
IplImage *ImgSource, *ImgResultat;
ImgSource = cvLoadImage(NomFichier, CV_LOAD_IMAGE_COLOR);
//Traitement et autres...
cvSaveImage(NomFichierResultat, ImgResultat);
}
cvShowImage( ''Exemple'', img );
Section 2 Traitement d'image
1 Adoucissement (Élimination du bruit)
Syntaxe : void cvSmooth(const CvArr* src, CvArr* dst, int smoothtype = CV_GAUSSIAN, int param1 = 3 )
Paramètres :
cvArr *src : L'image source à traiter.
cvArr *dst : L'image du résultat après le traitement.
int smoothtype : Le type de convolution désirée. Ici le défaut est CV_GAUSSIAN
int param1 : La 1ère dimension de la matrice. Ce paramètre vaut 3 pour une matrice 3x3.
Int param2 : La 2e dimension de la matrice. Ce paramètre vaut 3 pour une matrice 3x33.
Exemple :
IplImage *Src, IplImage *Dst;
Src = cvLoadImage(« img.jpg »);
cvSmooth(Src, Dst, CV_BLUR);
// Ou aussi : cvSmooth(Src, Dst, CV_GAUSSIAN, 5,5); Applique une matrice 5x5.
2 Renforcement des contours
Syntaxe : cvSobel(const CvArr* src, CvArr* dst, int xorder, int yorder, int aperture_size = 3)
paramètres :
cvArr *Isrc : L'image source à traiter.
cvArr *dst : L'image résultat après le traitement. (Doit être de type IPL_DEPTH_16S)
int xorder : Une valeur de 1 dans ce paramètre indique que l'on va renforcer les contours
verticaux.
int yorder : Une valeur de 1 dans ce paramètre indique que l'on va renforcer les contours
horizontaux.
int aperture_size : La dimension de la matrice. Les valeurs possibles sont 1,3,5,7 seulement
Exemple :
IplImage *Src = cvLoadImage(« img.jpg », 0);
//Création d'image temporaire pour récupérer les valeurs sur 2 octets.
IplImage *Dest = cvCreateImage(cvGetSize(Src),IPL_DEPTH_16S,1);
IplImage *Dest_img = cvCreateImage(cvGetSize(Src), IPL_DEPTH_8U,1);
cvSobel( Src, Dest, 1, 0, 3);
// On doit reconvertir l'image dans un format de 1 octet par pixel
cvConvertScaleAbs( Dest, Dest_img, 1, 0);
1 / 12 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !