RGB2GRAY

musa18 Messages postés 2 Date d'inscription samedi 3 mars 2012 Statut Membre Dernière intervention 1 juin 2012 - 29 mai 2012 à 16:14
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 - 1 juin 2012 à 11:43
bonjour tout le monde j'utilise ce code pour changer couleur d'une image <<RGB2GRAY>>
La conversion en niveau de gris est fonctionne correctement.

Je veux changer / redéfinir cvcvtcolor (en code c)
J'ai vu color.cpp
, mais je n'ai pas trouvé la solution
il ya quelqu'un qui peut m'aider


voilà le code :



// RGB2GRAY.c
// Convert an image color to gray
// with OPencv
////////////////////////////////

#include "stdio.h"
#include "string.h"
#include "opencv/cv.h"
#include "opencv/highgui.h"

int main(int argc, char** argv)
{

IplImage * ip_fileColor = 0;
IplImage * op_Gray = 0;

// Load the RGB image from file
ip_fileColor = cvLoadImage("1.bmp", CV_LOAD_IMAGE_UNCHANGED);
if(!ip_fileColor)
{
fprintf(stderr, "failed to load input image\n");
return -1;
}

// Allocate the grayscale image
op_Gray = cvCreateImage
( cvSize(ip_fileColor->width, ip_fileColor->height), ip_fileColor->depth, 1 );


// Convert it to grayscale // using cvConvertImage or cvCvtColor
cvCvtColor(ip_fileColor, op_Gray,7); //..for int code cvcvtcolor defineCV_RGB2GRAY 6 or 7..................
// ..How to...describes.?

// Write the grayscale image to a file
if( !cvSaveImage("image_gray.jpg", op_Gray, 0) )
{
fprintf(stderr, "failed to write image file\n");
}

// Free image memory
cvReleaseImage(&ip_fileColor); ///....close input file........
cvReleaseImage(&op_Gray); ///....close output file........

return 0;
}

3 réponses

BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
31 mai 2012 à 16:11
Hello,
Regarde ici pour une implémentation de cette conversion


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
musa18 Messages postés 2 Date d'inscription samedi 3 mars 2012 Statut Membre Dernière intervention 1 juin 2012
1 juin 2012 à 11:23
Hi Buno,
merci pour la réponse, il est une bonne ressource.
mais je pense qu'il est un code pour ".bmp"

et ce que je veux, c'est :
cvCvtColor(ip_fileColor, op_Gray,7);
{ ......................
........................
..comment le code ici ....
....................
}

cordialement,
Musa
0
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
1 juin 2012 à 11:43
mais je pense qu'il est un code pour ".bmp"

C'est un code qui te montre l'algo de conversion se basant sur une matrice de pixels. Je l'ai fait pour une image BMP, car c'est plus facile pour récupérer la matrice, mais ça marche pareil pour les autres formats.
A toi de t'en inspirer..

@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
Rejoignez-nous