Accueil > Forum > > > > Ouverture de fichiers images
Ouverture de fichiers images
lundi 24 avril 2006 à 09:21:54 |
Ouverture de fichiers images

elo29
|
Bonjour, Je travaille sur un projet dans lequel je dois capturer une vidéo, en extraire les images et appliquer un traitement à chacune d'entre elles. Pour le moment, j'ai réalisé chaque code indépendemment des autres (extraction des frames et enregistrement de celles-ci dans un dossier, recupération des frames dans ce même dossier avec FindNextFile et FindFirstFile et enfin mon traitement d'image appliqué à une image). Je voudrais maintenant tout réunir et appliquer mon traitement à toutes les images du dossier. J'ai utilisé "fopen" pour le traitement sur une seule image afin de l'ouvrir et je ne sais pas quelle fonction utiliser pour ouvrir les images les unes après les autres afin d'y appliquer le traitement. Pouvez-vous m'aider s'il vous pait? Merci!!
|
|
lundi 24 avril 2006 à 11:11:01 |
Re : Ouverture de fichiers images

yoyo269
|
Utilise une boucle pour faire un fopen sur chaque fichier image, en t'aidant de FindNextFile.
YOYO, @+. [font=Comic Sans MS][size=3][b][green][:D] YOYO [;)][/green][/b][/size=3][/font=Comic Sans MS]
|
|
lundi 24 avril 2006 à 11:33:55 |
Re : Ouverture de fichiers images

elo29
|
Merci pour ta réponse!!
En fait j'utilise ce code pour énumérer les fichiers de mon dossier :
hfind=FindFirstFile("*.*",&wfd); if(hfind==INVALID_HANDLE_VALUE)return 0; do{ cout<<wfd.cFileName<<"\n"; }while(FindNextFile(hfind,&wfd)); FindClose(hfind);
Il faudrait que j'insère mon traitement d'images dans le "do" mais je ne sais pas comment appliquer mon fopen : fopen(wfd.cFileName,"rb"); ??? Pour récupérer à chaque fois le nom de l'image qui est en cours de lecture.
|
|
lundi 24 avril 2006 à 11:48:24 |
Re : Ouverture de fichiers images

yoyo269
|
Oui c'est ça ! Tu dois ouvrir le fichier dans le do et le refermer également :
FILE * Fichier; hfind=FindFirstFile("*.*",&wfd); if(hfind==INVALID_HANDLE_VALUE)return 0; do{ cout<<wfd.cFileName<<"\n";
Fichier = fopen(wfd.cFileName,"wb"); // ouverture pour écriture // TRAITEMENT fclose(Fichier);
}while(FindNextFile(hfind,&wfd)); FindClose(hfind);
YOYO, @+. [font=Comic Sans MS][size=3][b][green][:D] YOYO [;)][/green][/b][/size=3][/font=Comic Sans MS]
|
|
lundi 24 avril 2006 à 14:31:51 |
Re : Ouverture de fichiers images

elo29
|
OK merci, mais il faut juste mettre des guillemets("wfd.cFileName","wb") pour que ça marche. Cependant j'ai un autre souci, il ajoute les valeurs demandées au fur et à mesure des images. Par exemple, j'ai un seuil S=190 dans la première image et de S=20 dans la deuxième et lui va me mettre S=190+20= 210 pour la deuxième et ainsi de suite.
|
|
lundi 24 avril 2006 à 14:40:18 |
Re : Ouverture de fichiers images

yoyo269
|
Surtout pas de guillemets !!! Sinon ça sert à rien de rechercher les fichiers qui sont dans ton dossier. Si tu laisses comme ça, il va chercher à ouvrir un fichier qui s'appellerait "wfd.cFileName". Pour ton pb de valeur, mets du code parce que avec ce que tu me dis je peux pas t'aider.
YOYO, @+. [font=Comic Sans MS][size=3][b][green][:D] YOYO [;)][/green][/b][/size=3][/font=Comic Sans MS]
|
|
lundi 24 avril 2006 à 14:55:18 |
Re : Ouverture de fichiers images

elo29
|
Voici mon code et si quand je ne mets pas les "" il n'ouvre pas les images contenues dans le dossier images de mon projet. Il ne les ouvre que si je les sors du dossier.
#include <Windows.h> #include <iostream.h> #include <stdio.h>
#define largeurimage 640 #define hauteurimage 480 #define N 501 #define M 54
int main () {
unsigned char *imageBMP; imageBMP=(unsigned char *)malloc(3*largeurimage*hauteurimage*sizeof(unsigned char)); int *tempimBMP; int **image; int **imbsens; unsigned char tmp[N]; int somme=0; int seuil; int i,j; tempimBMP=(int*)malloc(largeurimage*hauteurimage*sizeof(int));
FILE* fichier;
WIN32_FIND_DATA wfd; HANDLE hfind; hfind=FindFirstFile("c:images\\*.bmp",&wfd); if(hfind == INVALID_HANDLE_VALUE) return 0; do { fichier=fopen(wfd.cFileName,"rb"); if(!fichier) { printf ("Probleme d'ouverture du fichier image\n"); return 0; }
fread (tmp,M,1,fichier); fread (imageBMP,3*hauteurimage*largeurimage,1,fichier); fclose(fichier);
for(i=0;i<largeurimage*hauteurimage;i++) { tempimBMP[i]=(int)(0.23*imageBMP[i*3]+0.59*imageBMP[i*3+1]+0.11*imageBMP[i*3+2]);//Passage en niveau de gris } //Allocation mémoire de l'image image=(int**)malloc(largeurimage*sizeof(int*));
for (i=0;i<hauteurimage;i++) { image[i]=(int*)malloc (largeurimage*sizeof(int)); }
//Allocation mémoire de l'image dans le bon sens imbsens=(int**)malloc(largeurimage*sizeof(int*));
for (i=0;i<hauteurimage;i++) { imbsens[i]=(int*)malloc (largeurimage*sizeof(int)); }
//Initialisation de l'image à tester en niveau de gris (0-256)
for (i=0;i<hauteurimage;i++) { for(j=0;j<largeurimage;j++) { image[i][j]=tempimBMP[j+i*largeurimage]; } }
//Calcul du seuil de l'image
for(i=0;i<hauteurimage;i++) { for (j=0;j<largeurimage;j++) { somme+=image[i][j]; } } seuil=2*somme/(hauteurimage*largeurimage);
for(i=0;i<hauteurimage;i++) { for (j=0;j<largeurimage;j++) { imbsens[i][j]=image[hauteurimage-1-i][j]; } }
cout<<wfd.cFileName<<"\n";
} while (FindNextFile(hfind,&wfd)); FindClose(hfind);
return 0; }
|
|
lundi 24 avril 2006 à 15:04:05 |
Re : Ouverture de fichiers images

yoyo269
|
Change cette ligne : hfind=FindFirstFile("c:\\images\\*.bmp",&wfd);
Sinon, j'y connais rien en traitement d'image mais si tu cherches à modifier qq chose aux images, je vois pas comment tu peux faire sans jamais écrire dans le fichier image.
YOYO, @+. [font=Comic Sans MS][size=3][b][green][:D] YOYO [;)][/green][/b][/size=3][/font=Comic Sans MS]
|
|
lundi 24 avril 2006 à 15:06:27 |
Re : Ouverture de fichiers images

elo29
|
Je ne modifie rien aux images, je ne fais qu'extraire des informations des pixels. En tout cas merci pour ton aide, A+
|
|
lundi 24 avril 2006 à 15:11:21 |
Re : Ouverture de fichiers images

yoyo269
|
Et maintenant ça fonctionne ?
YOYO, @+. [font=Comic Sans MS][size=3][b][green][:D] YOYO [;)][/green][/b][/size=3][/font=Comic Sans MS]
|
|
Cette discussion est classée dans : images, dossier, image, traitement, appliquer
Répondre à ce message
Sujets en rapport avec ce message
traitement d'image [ par rodrigo22 ]
Je travaille actuellement sur un projet ou je dois etudier la deformation d'une image lorsque l'on projette celle ci sur une surface non perpendiculai
Traitement d'images [ par Supopste ]
Bonjour à tous et à toutes,J'aimerais savoir quelle était la méthode la plus efficace pour traiter des images. Je m'explique, stocker une image dans u
traitement d'image [ par rakicky ]
salut a tousvoila,j'ai un travail sur le traitement d'imageOn m'a dis de creer des fonctions capable de detecter le contour d'image en C et de le test
traitement d'images [ par thamoura ]
j'essai de créer un programme qui ouvre un image bitmap cherche la zone texte existante dans l'image je crypte cette zone puis je faits le tatouage de
Erosion et dilatation d'image - Traitement d'images [ par mahdouch1 ]
Bonjour,Est ce que quelqu'un peut me fournir un code source C qui fait l'érosion et la dilatation d'une image en niveaux de gris merci beaucoup d'avan
traitement et prédiction de vidéo [ par celinebac ]
Si on a à pointer sur une vidéo puis detecter l'ensemble de ses images, ensuite prendre chaque image à part et la traiter pixel par pixel et classer c
Traitement d'image [ par GMeryam ]
Bonjour, Je dois avoir une idée sur les différents applications de traitement d'images sous Matlab. S'il vous plait si vous avez des cours et des trav
Enregistrer une image dans un fichier [ par Flaken ]
Bonjour, Voilà mon problème : j'ai une IHM, que j'ai créer en c++ où elle affiche les images de la webcam. Dans cette IHM j'ai crée une petit fenêtre
traitement d'image : binarisation , anamorphoese et reconnaissance de bordure [ par addoudi ]
bonjour je suis sensé avoir une photo d'un cadre dessinée sur feuille blanche mais pris en photos sous de mauvaises condition , je dois redresser l'im
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PCTECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC par ROMELARD Fabrice
Speakers: Thierry Rapatout, Antoine Petit et Xavier Trebbia Cette session entre dans le cadre des RDV Décideurs des TechDays 2012, elle est liée à la consumérisation de l'IT et la mise en place du "DeskTop as a Service" dans de plus en ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|