/*************************************************************************************************************************************/ /* */ /* M O D I F I C A T I O N D ' U N E I M A G E P A R P R I S E D U L O G A R I T H M E N E P E R I E N : */ /* */ /* */ /* Definition : */ /* */ /* Une modification logarithme neperien est */ /* definie par l'equation : */ /* */ /* a b c */ /* F(niveau,X,Y) = log(cx.X + cy.Y + cn.niveau ) */ /* */ /* */ /* les parametres etant initialises de facon que : */ /* */ /* 2 2 */ /* F(niveau,X,Y) = log(X + Y ) */ /* */ /* Ainsi, pour prendre tout simplement le */ /* logarithme d'une image, soit : */ /* */ /* F(niveau,X,Y) = log(niveau) */ /* */ /* il faudra faire : */ /* */ /* cx=0 */ /* cy=0 */ /* cn=1 */ /* */ /* pour que cela marche. On notera que le programme */ /* 'v $xci/decibel.01$K' fait cela tout simplement... */ /* */ /* */ /* Author of '$xci/logarithme$K' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 1996??????????). */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* I N T E R F A C E ' listG ' : */ /* */ /* */ /* :Debut_listG: */ /* :Fin_listG: */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* D I R E C T I V E S S P E C I F I Q U E S D E C O M P I L A T I O N : */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* F I C H I E R S D ' I N C L U D E S : */ /* */ /*************************************************************************************************************************************/ #include INCLUDES_BASE #include image_image_IMAGESF_EXT /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* P A R A M E T R E S : */ /* */ /*************************************************************************************************************************************/ #include xci/genere_ch.01.I" /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* M A C R O S U T I L E S : */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* M O D I F I C A T I O N D ' U N E I M A G E P A R P R I S E D U L O G A R I T H M E N E P E R I E N : */ /* */ /*************************************************************************************************************************************/ BCommande(nombre_d_arguments,arguments) /*-----------------------------------------------------------------------------------------------------------------------------------*/ Bblock DEFV(CHAR,INIC(POINTERc(nom_imageR),NOM_PIPE)); DEFV(CHAR,INIC(POINTERc(nom_imageA),NOM_PIPE)); #include xci/genere_ch.02.I" /*..............................................................................................................................*/ #include xci/genere_ch.03.I" EGAL(Fpolynomial_Fermat_____coefficient_polynomial_X,FZERO); EGAL(Fpolynomial_Fermat_____coefficient_polynomial_Y,FZERO); EGAL(Fpolynomial_Fermat_____coefficient_polynomial_niveau,FU); EGAL(Fpolynomial_Fermat_____exposant_polynomial_niveau,FU); /* Initialisations introduites le 20150407115125 afin d'etre en mode "logarithme" par */ /* defaut... */ GET_ARGUMENTSi(nombre_d_arguments ,BLOC(GET_ARGUMENT_C("imageR=""R=",nom_imageR); GET_ARGUMENT_C("imageA=""A=",nom_imageA); GET_ARGUMENT_L("standard=",les_images_sont_standards); GET_ARGUMENT_F("amplificateur=""a=",amplificateur_de_la_fonction); GET_ARGUMENT_F("translateur=",translateur_de_la_fonction); GET_ARGUMENT_F("Tx=",ASD1(translation,dx)); GET_ARGUMENT_F("Ty=",ASD1(translation,dy)); GET_ARGUMENT_F("Ex=",ASD1(echelle,cx)); GET_ARGUMENT_F("Ey=",ASD1(echelle,cy)); GET_ARGUMENT_L("sLOGX=""SLOGX=",Flogarithme_neperien_____utiliser_SLOGX); GET_ARGUMENT_N("LOGX=",Flogarithme_neperien_____utiliser_SLOGX); /* Parametre introduit le 20150407105455... */ GET_ARGUMENT_F("cx=",Fpolynomial_Fermat_____coefficient_polynomial_X); GET_ARGUMENT_F("ex=",Fpolynomial_Fermat_____exposant_polynomial_X); GET_ARGUMENT_F("cy=",Fpolynomial_Fermat_____coefficient_polynomial_Y); GET_ARGUMENT_F("ey=",Fpolynomial_Fermat_____exposant_polynomial_Y); GET_ARGUMENT_F("cn=",Fpolynomial_Fermat_____coefficient_polynomial_niveau); GET_ARGUMENT_F("en=",Fpolynomial_Fermat_____exposant_polynomial_niveau); ) ); #include xci/modifi_ch.04.I" MODIFICATION_DU_CHAMP_DEMANDE(Flogarithme_neperien ,nom_imageR ,nom_imageA ,______________NOIR_NORMALISE ,______________BLANC_NORMALISE ,Zf_ARGUMENT_INUTILE ,BLOC(CALS(Ifloat_std_avec_renormalisation(ImageR,ImageA_modifiee));) ); /* Mis sous cette forme le 20050826160346... */ RETU_Commande; Eblock ECommande