Fichier d'implémentation de la commande overlayNtiff.
Plus de détails...
#include <iostream>
#include <cstdlib>
#include <stdio.h>
#include <stdlib.h>
#include <vector>
#include <algorithm>
#include <string>
#include <fstream>
#include <tiffio.h>
#include <tiff.h>
#include <boost/log/core.hpp>
#include <boost/log/trivial.hpp>
#include <boost/log/utility/setup/common_attributes.hpp>
#include <boost/log/utility/setup/console.hpp>
#include <rok4/image/file/FileImage.h>
#include <rok4/image/MergeImage.h>
#include <rok4/enums/Format.h>
#include <math.h>
#include "config.h"
|
| void | usage () |
| | Affiche l'utilisation et les différentes options de la commande overlayNtiff help. Plus de détails...
|
| |
| void | error (std::string message, int error_code) |
| | Affiche un message d'erreur, l'utilisation de la commande et sort en erreur. Plus de détails...
|
| |
| int | parse_command_line (int argc, char **argv) |
| | Récupère les valeurs passées en paramètres de la commande, et les stocke dans les variables globales. Plus de détails...
|
| |
| int | read_configuration_line (std::ifstream &configuration_file, char *image_path, bool *has_mask, char *mask_path) |
| | Lit une ligne du fichier de configuration. Plus de détails...
|
| |
| int | load_images (FileImage **output_image, FileImage **output_mask, MergeImage **merged_image) |
| | Charge les images en entrée et en sortie depuis le fichier de configuration. Plus de détails...
|
| |
| int | main (int argc, char **argv) |
| | Fonction principale de l'outil overlayNtiff. Plus de détails...
|
| |
Fichier d'implémentation de la commande overlayNtiff.
Le fonctionnement général est décrit dans la page Commande overlayNtiff .
◆ error()
| void error |
( |
std::string |
message, |
|
|
int |
error_code |
|
) |
| |
Affiche un message d'erreur, l'utilisation de la commande et sort en erreur.
- Paramètres
-
| [in] | message | message d'erreur |
| [in] | error_code | code de retour |
◆ load_images()
| int load_images |
( |
FileImage ** |
output_image, |
|
|
FileImage ** |
output_mask, |
|
|
MergeImage ** |
merged_image |
|
) |
| |
Charge les images en entrée et en sortie depuis le fichier de configuration.
On va récupérer toutes les informations de toutes les images et masques présents dans le fichier de configuration et créer les objets LibtiffImage correspondant. Toutes les images ici manipulées sont de vraies images (physiques) dans ce sens où elles sont des fichiers soit lus, soit qui seront écrits.
- Paramètres
-
| [out] | output_image | image résultante de l'outil |
| [out] | output_mask | masque résultat de l'outil, si demandé |
| [out] | merged_image | ensemble des images en entrée |
- Renvoie
- code de retour, 0 si réussi, -1 sinon
◆ main()
| int main |
( |
int |
argc, |
|
|
char ** |
argv |
|
) |
| |
Fonction principale de l'outil overlayNtiff.
- Paramètres
-
| [in] | argc | nombre de paramètres |
| [in] | argv | tableau des paramètres |
- Renvoie
- code de retour, 0 si réussi, -1 sinon
◆ parse_command_line()
| int parse_command_line |
( |
int |
argc, |
|
|
char ** |
argv |
|
) |
| |
Récupère les valeurs passées en paramètres de la commande, et les stocke dans les variables globales.
- Paramètres
-
| [in] | argc | nombre de paramètres |
| [in] | argv | tableau des paramètres |
- Renvoie
- code de retour, 0 si réussi, -1 sinon
◆ read_configuration_line()
| int read_configuration_line |
( |
std::ifstream & |
configuration_file, |
|
|
char * |
image_path, |
|
|
bool * |
has_mask, |
|
|
char * |
mask_path |
|
) |
| |
Lit une ligne du fichier de configuration.
Une ligne contient le chemin vers une image, potentiellement suivi du chemin vers le masque associé.
- Paramètres
-
| [in,out] | configuration_file | flux de lecture vers le fichier de configuration |
| [out] | image_path | chemin de l'image lu dans le fichier de configuration |
| [out] | has_mask | précise si l'image possède un masque |
| [out] | mask_path | chemin du masque lu dans le fichier de configuration |
- Renvoie
- code de retour, 0 en cas de succès, -1 si la fin du fichier est atteinte, 1 en cas d'erreur
◆ usage()
Affiche l'utilisation et les différentes options de la commande overlayNtiff help.
L'affichage se fait dans le niveau de logger INFO
◆ background
Couleur à utiliser comme fond. Doit comporter autant de valeur qu'on veut de canaux dans l'image finale. Si un canal alpha est présent, il ne doit pas être prémultiplié aux autres canaux
◆ compression
| Compression::eCompression compression = Compression::NONE |
Compression de l'image de sortie
◆ configuration_path
| char configuration_path[256] |
Chemin du fichier de configuration des images
◆ debug_logger
Activation du niveau de log debug. Faux par défaut
◆ help
Message d'usage de la commande overlayNtiff
◆ merge_method
| Merge::eMergeType merge_method = Merge::UNKNOWN |
Mode de fusion des images
◆ photometric
| Photometric::ePhotometric photometric = Photometric::RGB |
Photométrie (rgb, gray), pour les images en sortie
◆ sampleformat
| SampleFormat::eSampleFormat sampleformat |
Format du canal (entier, flottant, signé ou non...), dans les images en entrée et celle en sortie
◆ samplesperpixel
| uint16_t samplesperpixel = 0 |
Nombre de canaux par pixel de l'image en sortie
◆ transparent
Couleur à considérer comme transparent dans le images en entrée. Vrai couleur (sur 3 canaux). Peut ne pas être définie