begin process at 2012 05 30 00:17:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

Multimédia

 > 

[OpenCV 1.0] cvLoadImage, ne fonctionne pas


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[OpenCV 1.0] cvLoadImage, ne fonctionne pas

mardi 5 janvier 2010 à 09:14:04 | [OpenCV 1.0] cvLoadImage, ne fonctionne pas

thenemesys

Bonjour,

Je commence à apprendre OpenCV, toutefois, je rencontre déjà un problème lors de l'exécution d'un code très simple. En effet, lorsque je veux utiliser la fonction cvLoadImage, celle ci ne charge pas l'image(fond gris), quelque soit l'écriture du chemin vers le fichier.

Le code : (copier/coller du tuto du siteduzero)

#include <cv.h>
#include <highgui.h>


using namespace std;

int main()
{
//On déclare "un pointeur vers une structure IplImage" :
//En gros, on "déclare une image".
IplImage *img;

//On charge notre image depuis un fichier.
img=cvLoadImage(1,"D:\\test.png");

//On crée une fenêtre intitulée "Hello World",
//La taille de cette fenêtre s'adapte à ce qu'elle contient.
cvNamedWindow("Hello World", CV_WINDOW_AUTOSIZE);

//On affiche l'image dans la fenêtre "Hello World".
cvShowImage("Hello World", img);

//On attend que l'utilisateur appuie sur une touche (0 = indéfiniment).
cvWaitKey(0);

//Destruction de la fenêtre.
cvDestroyWindow("Hello World");

//Libération de l'IplImage (on lui passe un IplImage**).
cvReleaseImage(&img);

//Fini ^^
return 0;

}

http://img9.imageshack.us/img9/5742/exemple2q.jpg
http://img31.imageshack.us/img31/8113/exemple1u.jpg

Si quelqu'un a une idée, sans ça, je suis bloqué !

Merci
mardi 5 janvier 2010 à 14:40:54 | Re : [OpenCV 1.0] cvLoadImage, ne fonctionne pas

Pistol_Pete

Salut
Commence par telecharger la version 2.0 d'OpenCV.
Tu verras ici:
http://opencv.willowgarage.com/documentation/reading_and_writing_images_and_video.html?highlight=cvloadimage#cvLoadImage
que le premier argument de la fonction cvLoadImage et le nom du fichier et le second les couleurs et non l'inverse...

A+


____________________________________________________________________________
Logiciel en traitement de l'image gratuit et open source.
mardi 5 janvier 2010 à 19:32:14 | Re : [OpenCV 1.0] cvLoadImage, ne fonctionne pas

thenemesys

Salut,

Pour ce qui est du code, c'était une combinaison que j'avais essayé "comme ca"... De toute manière ca n'a jamais marché. J'ai installé la version 2.0 d'OpenCV, maintenant ca fonctionne bien.

Merci pour ta réponse en tout cas.
jeudi 13 mai 2010 à 21:54:26 | Re : [OpenCV 1.0] cvLoadImage, ne fonctionne pas

klibrexor

thenemesys il fau just invérsé(Attention:ajouté un '\\' au lieu de'\')
ex :
IplImage *img=cvLoadImage("c:\\t.png"); //
dimanche 3 octobre 2010 à 01:24:43 | Re : [OpenCV 1.0] cvLoadImage, ne fonctionne pas

akroutos

essayé de mettre votre image dans votre projet C++ et chargé le directement ('test.png')
exemple :
//créer une image en couleur
IplImage *img = cvLoadImage("test.jpg")
vendredi 8 avril 2011 à 16:15:51 | Re : [OpenCV 1.0] cvLoadImage, ne fonctionne pas

altyok

bonjour,

j'ai exactement le même problème que thenemesys mais j'ai tout tenté je ne voie pas ou je fait l'erreur?????
et pourtant je suis sur openCv2.1 mais quand je lance le prog j'ai une fenêtre grise...

voici mon prog

// test2.cpp : définit le point d'entrée pour l'application console.
//

#include "stdafx.h"
#include <cxcore.h>
#include <cv.h>
#include <highgui.h>

// Fonction qui crée et renvoit une image avec des formes dedans

IplImage* createGeometry(){
// Création d'une image de taille 640, 480, 8 bits par channel, 3 channels)
IplImage* image = cvCreateImage(cvSize(640,480), 8, 3);
// Remplir l'image avec tous des pixels noirs
cvZero(image);
// Dessin d'un cercle rouge (RGB 255, 0, 0), centré en 320, 240, rayon 10, plein(-1));
cvCircle( image, cvPoint(320,240), 10, CV_RGB(255,0,0), -1);
// Dessin d'un cercle vert (RGB 0, 255, 0), centré en 300, 200, rayon 20, épaisseur 3);
cvCircle( image, cvPoint(300,200), 20, CV_RGB(0,255,0), 3);
// Dessin d'une ligne ...
cvLine( image, cvPoint(0,0), cvPoint(640,480), CV_RGB(255,255,0),2);
// Dessin d'un rectangle...
cvRectangle(image, cvPoint(500,350), cvPoint(600, 450), CV_RGB(0,0,255), -1);
return image;
}

// Fonction qui crée et renvoit une image avec un degradé

IplImage* createColor(){
// Création d'une image de taille 640, 480, 8 bits par channel, 3 channels)
IplImage* image = cvCreateImage(cvSize(640,480), 8, 3);
// Remplir l'image avec tous des pixels noirs
cvZero(image);
float step = 255.0/480.0; // Pas pour le dégradé
float currentColor = 0; // Valeur courante du dégradé
for (int y = 0; y < 480;++y){
for (int x = 0; x < 640; ++x){
((uchar*)(image->imageData + image->widthStep*y))[x*3] = currentColor; // Canal bleu de l'image
((uchar*)(image->imageData + image->widthStep*y))[x*3+1] = currentColor; // Canal vert
((uchar*)(image->imageData + image->widthStep*y))[x*3+2] = currentColor; // Canal rouge

}
currentColor += step;
}

return image;
}



int main(int argv, char** argc){
IplImage *image1 = 0;
IplImage *image2 = 0;
IplImage *image3 = 0; // Chargement d'un fichier

image1 = createGeometry();
image2 = createColor();
image3 = cvLoadImage("./imagetest1.jpeg", 1);
cvNamedWindow("Geometry",1);
cvNamedWindow("Color",1);
cvNamedWindow("File",1);

// Affichage de l'image1 dans la fenêtre Geometry
cvShowImage("Geometry", image1);
// Idem pour image2 et 3
cvShowImage("Color", image2);
cvShowImage("File", image3);

// Attente infinie que l'utilisateur appuie sur une touche
cvWaitKey(0);

// Suppression des images en mémoire (avec vérification que l'image a bien été créée)
if (image1) cvReleaseImage (&image1);
if (image2) cvReleaseImage (&image2);
if (image3) cvReleaseImage (&image3);
}


et c cette ligne la qui ne va pas "" image3 = cvLoadImage("./imagetest1.jpeg", 1); ""


vendredi 8 avril 2011 à 16:17:02 | Re : [OpenCV 1.0] cvLoadImage, ne fonctionne pas
vendredi 8 avril 2011 à 16:17:57 | Re : [OpenCV 1.0] cvLoadImage, ne fonctionne pas

altyok

si qq a une idée ça serais vraiment sympa!!!

merci
lundi 16 mai 2011 à 14:57:35 | Re : [OpenCV 1.0] cvLoadImage, ne fonctionne pas

cyrine2

il suffit de mettre \\ au lieu de \
par exemple:
IplImage *image = cvLoadImage("C:\\Users\\toshiba\\Pictures\\lena.jpg", CV_LOAD_IMAGE_COLOR);


Cette discussion est classée dans : image, hello, world, iplimage, cvloadimage


Répondre à ce message

Sujets en rapport avec ce message

Probleme de programmation C++ [ par zlitus ] Salut, je ne sait pas programmer en c++ et déssidé d'apprendre.Pour cela j'ai téléchargerDEV-C++ et j'ai essayé de marquer "hello world" avec.Je copi Regex ! [ par Hades53 ] Bonjour,j'aimerais faire une fonction en c++ qui permettra de retourner N, le nombre de string dans le texte qui correspondent à l'expression régulièr hello redimentionner une image [ par laulau10 ] ben voila je cree une fonction en c qui capture l'ecran et qui la sauvegarde en bmp mais ma resolution d'ecran est de 1024*768 donc mon image est de 1 refresh() de ncurses [ par AsM0DeUz ] Bonjour !Je viens  suis en train de tenter d'utiliser ncurses seulement j'ai deja ma premiere question ... a quoi sert refresh().D'apres le how to (ht makefile [ par alexandre0094 ] Bonjour, Je suit en train de tester la programation sur psp j'ai donc suivi un tutorial et installer cygwin et créé deux fichier l'un est le code sour débutant aimerais pouvoir coder [ par Leko ] Bonjour,je viens d'installer DEV C++ et j'ai ecrit le code le plus basique qui soit, mais il y a un souci qui vient peut etre de la configuration de c GCC 4 sous Windows [ par victorcoasne ] Bonjour, J'utilise GCC 3.4.x depuis un moment et je suis dit : pourquoi pas passer à la version 4 ? J'ai donc téléchargé la version 4.5 en 32 et 64 fonction cvLoadImage de cv.h [ par soundous1909 ] Bonjour, je vient d'installer Opencv 2.2.0 sous Ubuntu . Mon problème est avec la fonction cvLoadImage , en exécutant ce code la fenêtre s'ouvre mais Détéction des point d'interet pour une main en 2D [ par elkhedra ] [i][color=black] [b]Bonjour,comme l'indique le titre, j'avai l'intension de créer un petit programme pour détécté les differente posture d'une main en HELLO WORLD DEBUTANT [ par sam469 ] Bonsoir a tous,je voudrait apprendre le c++,mais pour commencer je voudrais faire un programme qui m'affiche dans un label un text via un CommandButto


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,156 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales