boullette38 a écrit :
je dois faire un projet en C qui effectue un traitement d'image, plus précisement de la corrélation de phase entre 2 images. Le programme doit donc ouvrir les 2 images. Hors c'est la que je bloque. J'ai fais de multiple recherche pour savoir si fopen() pouvait ouvrir une image en JPG, mais rien trouvé. Donc je me tourne vers vous: peut-on ouvrir une image JPG avec la fonction fopen() ? si non, quelle est la méthode à utiliser ? Je précise que j'ai déjà essayé d'ouvrir une image mais c'est pas du tout concluant.
|
Tu bloques où ? Parce que oui, fopen() permet d'ouvrir un fichier binaire en lecture ("rb" ).
http://mapage.noos.fr/emdel/notes.htm#fichiers
Mais ensuite, il faut le lire, facile avec fgetc() ou fread(), et surtout interpréter les données, et c'est là que les ennuis commencent...
Le format JPG est compliqué et il faut en connaitre la spécification détaillée pour prétendre le décoder et en créer une image 'plate'.
http://www.wotsit.org/
(purée, y'a de plus en plus de pub sur ce site, ça devient pénible... va falloir faire un miroir...non, j'ai rien dit)
Ceci-dit, je suis à peu près certain qu'il existe des outils 'à la ligne de commande' qui savent convertir un fichier JPG en BMP, par exemple, ce qui est beaucoup plus facile à traiter... A moins que le sujet de l'exercice soit justement de lire un fichier JPG...
---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/