Utility functions


Functions

void conv_TLS_RVB (imarvb *ima_tls, imarvb *ima_rvb)
void conv_RVB_TLS (imarvb *ima_rvb, imarvb *ima_tls)
int alloc_lut_u1 (imau1 *im)
int free_lut_u1 (imau1 *im)
int param_debut (int argc, char **argv, param *ptp)
int param_fin (int argc, char **argv, param *ptp)
void lec_param (char *chaine, param *ptp)
int flec_param (FILE *fp, param *ptp)
void alloc_param (param *ptp)
void lec_int (int *pt_i, char *chaine)
void lec_float (float *pt_f, char *chaine)
void lec_double (double *pt_d, char *chaine)
void lec_nom (char *pt_nom, char *chaine)
int nom_image_suivante (char *nom0, char *nomres)
int alloc_imau1 (imau1 *im)
int alloc_imau1_as (imau1 *modele, imau1 *out)
int free_imau1 (imau1 *im)
short breshenham (imau1 *image, short x1, short y1, short x2, short y2, short intensity)

Detailed Description

ce module contient un ensemble de functions

Function Documentation

int alloc_imau1 ( imau1 im  ) 

TYPES XX = u1 | rvb | u2 | s2 | u4 | s4 | fl | db | cx4 | cx8 | cx16 : allocation d'une image.

\[ V(t,x)=\inf_{(\alpha_s)_s} I\!\! E_{t,x} \left\{\Psi\left(X_\tau\right) \right\} \]

allocation en une fois permettant l'adressage 1D : im->p[0] + j*im->nc + i ou l'adressage 2D : im->p[j][i]

Parameters:
im pointeur image a allouer, nombre de colonnes (im->nc) et nombre de lignes (im->nr) connus
Author:
E. Trouve
Version:
1.0 (19/10/99); Include : proto2D.h

Definition at line 471 of file routines.c.

Referenced by distance_imau1_init(), medhist_init(), and read_imau1_init().

int alloc_imau1_as ( imau1 modele,
imau1 out 
)

allocation �olu� d'une image �partir d'une image de r��ence.\ Le premier param�re est une image d��allou�. Cette fonction alloue l'image de sortie avec des dimensions identiques que l'image de r��ence. De m�e les adresse des palettes couleurs sont copi� dans l'image de sortie. Enfin, l'allocation est r�lis� en une fois permettant l'adressage 1D : im->p[0] + j*im->nc + i ou l'adressage 2D : im->p[j][i], et les valeurs de l'image sont initialis��ZERO.

Parameters:
modele pointeur image de r��ence
out pointeur image �allouer
Author:
L. VALET
Version:
1.0 (21/12/99); Include : proto2D.h

Definition at line 716 of file routines.c.

Referenced by reggrow_init().

int alloc_lut_u1 ( imau1 im  ) 

Allocation d'une colormap pour une image u1.\ Si l'image contenait deja une colormap, l'espace m�oire pour celle-ci est lib�� Une nouvelle lut complete de 3*256 est allouee. On peut ensuite remplir cette colormap par des valeur ici d'un calcul par exemple.

Parameters:
im pointeur sur une image de type u1
Author:
B. Ionescu
Version:
1.0 (11/01/01); Include : proto2D.h

Definition at line 806 of file lread_ima.c.

void alloc_param ( param ptp  ) 

allocation du pointeur next d'une structure parametre.\ entree :\ ptp : pointeur de structure parametre deja allouee.\ sortie :\ ptp->next alloue avec ptp->next->qst[0]='', ptp->next->rep[0]='', ptp->next->next = NULL;

Parameters:
ptp pointeur sur la structure dont on va allouer le ->next
Author:
E. Trouve
Version:
1.0 (19/10/99); Include : proto2D.h

Definition at line 291 of file routines.c.

Referenced by flec_param(), lec_param(), and param_debut().

short breshenham ( imau1 image,
short  x1,
short  y1,
short  x2,
short  y2,
short  intensity 
)

Tracing a discrete line using the breshenham algorithm.

This function is tracing and inserting a discrete straight line connecting two particular points in an image. We consider the straight line segment is a finite set of grid points of the square raster grid, individuated by a straight line segment of the Euclidean plane by making use of the grid intersection digitization criterion; the grid point closest to each intersection between the grid and the Euclidean segment is an element of the digital straight line segment. Normally this point set has two unique end points, it can be ordered as 8-path from one end point to the other, and the digital straight line segment can be identified with this 8-path.\ The computation of a digital straight line segment uses consecutive 'small' steps from pixel to pixel, starting at p1=(x1,y1) and ending at p2=(x2,y2). These elementary steps can be restricted to be parallel to he coordinate axes (4-path), or can also include diagonal steps (8-path). The latter case is mostly used for representing a digital curve, and it is also used in the straight line algorithm given below. Besides the given points p1 and p2 the algorithm generates additional

max{|x1-x2|,|y1-y2|}-1

'new' points in the image for a digital straight line from p1 to p2.\

Parameters:
image image in which the line is traced
x1 first coordinate of the startpoint (column)
y1 second coordinate of the startpoint (row)
x2 first coordinate of the endpoint (column)
y2 second coordinate of the endpoint (row)
intensity intensity (greyvalue) of the line to draw
Author:
C. MAIER
Version:
1.0 (03/04/00); Include : proto2D.h

Definition at line 46 of file traceline.c.

void conv_RVB_TLS ( imarvb ima_rvb,
imarvb ima_tls 
)

conversion d'une image Rouge-Vert-Bleu au format Teinte-Luminance-Saturation.\

Cette fonction convertie une image RVB au format TLS. L'image d'entrée est une image de type imarvb contenant bien les info de rouge, vert et de bleu. ATTENTION l'image de sortie est aussi au format imarvb ou cette fois le champ "r" représente l'information de teinte, "v" la luminance et "b" la saturation. L'image d'entrée est aussi une image de type imarvb contenant bien les info de rouge, vert et de bleu. Ce programme a été écrit le 23 juillet 1993.

Parameters:
ima_rvb pointeur sur une image de type imarvb représentant l'image de sortie au format rvb
ima_tls pointeur sur une image de type imarvb contenant les info de teinte, luminance, saturation (r->t, v->l, b->s)
Author:
T. CARRON, P. LAMBERT, L. VALET
Version:
1.0 (02/12/99); Include : proto2D.h
See also:
conv_TLS_RVB

Definition at line 136 of file conversion.c.

void conv_TLS_RVB ( imarvb ima_tls,
imarvb ima_rvb 
)

conversion d'une image Teinte-Luminance-Saturation au format Rouge-Vert-Bleu.

Cette fonction convertie une image TLS au format RVB. ATTENTION l'image d'entrée est au format imarvb où cette fois le champ "r" représente l'information de teinte, "v" la luminance et "b" la saturation. L'image de sortie est aussi une image de type imarvb contenant bien les information de rouge, vert et de bleu. Ce programme a été écrit le 16 novembre 1992.

Parameters:
ima_tls pointeur sur une image de type imarvb contenant les informations de teinte, luminance, saturation (r->t, v->l, b->s)
ima_rvb pointeur sur une image de type imarvb représentant l'image de sortie au format rvb
Author:
T. CARRON, P. LAMBERT, L. VALET
Version:
1.0 (02/12/99); Include : proto2D.h
See also:
conv_RVB_TLS

Definition at line 38 of file conversion.c.

int flec_param ( FILE *  fp,
param ptp 
)

lecture de parametre (question et reponse) dans un fichier ctrl.\ sortie :\ ptp->qst contient la question (max 199 characteres)\ ptp->rep contient la chaine de la valeur par defaut\ ptp->next est alloue si il ne l'etait pas

Returns:
1 si lecture correcte, 0 sinon
Parameters:
fp pointeur de fichier positionne en debut de ligne
ptp pointeur de la structure parametre (deja allouee)
Author:
E. Trouve
Version:
1.0 (19/10/99); Include : proto2D.h

Definition at line 246 of file routines.c.

Referenced by param_debut().

int free_imau1 ( imau1 im  ) 

TYPES XX = u1 | rvb | u2 | s2 | u4 | s4 | fl | db | cx4 | cx8 | cx16 : desallocation d'une image. \

Parameters:
im pointeur image a desallouer,
Author:
E. Trouve
Version:
1.0 (19/10/99); Include : proto2D.h

Definition at line 753 of file routines.c.

Referenced by confusion_matrix_ferm().

int free_lut_u1 ( imau1 im  ) 

Suppression d'une colormap pour une image u1.\ La colormap, si elle existe, de l'image de type u1 passe en parametre est supprimee.

Parameters:
im pointeur sur une image de type u1
Author:
B. Ionescu
Version:
1.0 (11/01/01); Include : proto2D.h

Definition at line 833 of file lread_ima.c.

void lec_double ( double *  pt_d,
char *  chaine 
)

lecture de reel, type double, avec valeur par defaut.

Parameters:
pt_d pointeur reel a lire
chaine pointeur question a poser
Author:
E. Trouve
Version:
1.0 (19/10/99); Include : proto2D.h

Definition at line 354 of file routines.c.

void lec_float ( float *  pt_f,
char *  chaine 
)

lecture de reel, type float, avec valeur par defaut.

Parameters:
pt_f pointeur reel a lire
chaine pointeur question a poser
Author:
E. Trouve
Version:
1.0 (19/10/99); Include : proto2D.h

Definition at line 334 of file routines.c.

void lec_int ( int *  pt_i,
char *  chaine 
)

lecture d'entier avec valeur par defaut.

Parameters:
pt_i pointeur entier a lire
chaine pointeur question a poser
Author:
E. Trouve
Version:
1.0 (19/10/99); Include : proto2D.h

Definition at line 313 of file routines.c.

void lec_nom ( char *  pt_nom,
char *  chaine 
)

lecture de chaine de characteres avec valeur par defaut.

Parameters:
pt_nom pointeur chaine de characteres a lire
chaine pointeur question a poser
Author:
E. Trouve
Version:
1.0 (19/10/99); Include : proto2D.h

Definition at line 374 of file routines.c.

Referenced by param_fin().

void lec_param ( char *  chaine,
param ptp 
)

lecture de parametre avec valeur par defaut selon les 3 modes.\

Definition at line 189 of file routines.c.

Referenced by add_colormap_lect(), confusion_matrix_lect(), distance_imau1_lect(), histo_lect(), medhist_lect(), read_ima_lect(), reggrow_lect(), and write_ima_lect().

int nom_image_suivante ( char *  nom0,
char *  nomres 
)

generation du nom suivant (le radical) pour les series d'images.\ Convention sur la numerotation des images :\ 1) les numeros se suivent!\ 2) ils sont donnes a la fin du nom de fichier, avant le .imw/.imf...\ 3) si les numero se reduisent a 1 chiffre, c'est le chiffre seul (ex: 0, 1, 2...)\ 4) si des numeros a 2 chiffres (>9) sont utilises, tous les numeros sont ecrits avec 2 digits (ex: 01, 02,...,10, 11...).\ 5) pour le moment, seuls les 2 derniers chiffres sont consideres. Ce principe pourra s'etendre a 3 chiffres le jour ou on traitera des series de plus de 100 images...\ \ NB : si nom0 ne se termine pas par un nombre a 1 ou 2 chiffres, la fonction retourne 0 et nomres = nom0_01\

Returns:
1 ou 2 si le numero de nom0 est sur 1 ou 2 chiffres, 0 si aucun chiffre
Parameters:
nom0 pointeur chaine de characteres du nom image (N), sans extension
nomres pointeur chaine de characteres du nom suivant (N+1)
Author:
E. Trouve
Version:
1.0 (06/09/00); Include : proto2D.h

Definition at line 407 of file routines.c.

int param_debut ( int  argc,
char **  argv,
param ptp 
)

gestion des parametres en debut de main selon les 3 modes.\ \ 1. MANUEL : \

Definition at line 69 of file routines.c.

int param_fin ( int  argc,
char **  argv,
param ptp 
)

sauvegarde des parametres apres lecture. \

Definition at line 130 of file routines.c.


Generated on Tue Apr 22 13:31:04 2008 for ima2D by  doxygen 1.5.3