Créer une commande Octave
Préparation
Téléchargez le projet projet-octave.zip. Ce projet contient:
- image.c et image.h, pour lire et écrire des images
- traitement.c et traitement.h, avec un algorithme de traitement exemple
- projet.cc, qui fait le lien avec Octave
- un Makefile, pour compiler
- 1570970041.jpg, une image exemple
Le projet a été préparé pour Linux, mais il peut être adapté pour Windows et Mac OS en ajoutant les bibliothèques libpng et libjpeg.
Insérer l'algorithme de traitement
Insérez votre algorithme dans la fonction traiterImage
de traitement.c. Vu que le projet n'est plus lancé comme programme, il n'y a plus de fonction main
.
L'algorithme exemple retourne deux valeurs (cielBleu
et nuit
). Pour adapter cela, il faut
- modifier la structure dans traitement.h,
- adapter les dernières lignes de la fonction
projet
dans projet.cc.
projet.cc est écrit en C++. La syntaxe ressemble fortement au code C.
Compiler la commande
Compilez le code avec make
, ou avec la commande suivante:
$$ mkoctfile projet.cc traitement.c image.c -lpng -ljpeg
Ceci compile le code C et C++, et produit un fichier projet.oct, une bibliothèque qui sera chargé dynamiquement par Octave lorsqu'on appelle la fonction projet
.
Utiliser la commande
Si on lance Octave depuis le répertoire qui contient projet.oct, on peut utiliser cette fonction comme suit:
$$ octave ... octave:1> [cielBleu, nuit] = projet("1570970041.jpg") cielBleu = 1 nuit = 0