⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dwtrans2d_package.c

📁 LastWave
💻 C
📖 第 1 页 / 共 2 页
字号:
    "e2count", C_Point2Count,"{{{[<wtrans2> = objCur]} \{e2count counts the number of extremas at each level}}}",    "e2copy",C_PointPicCopy,"{{{<wtrans2IN>  <wtrans2OUT>} \{e2copy copy extremas with all pointers and chain included ???}}}",    "e2info",C_PInfo2,"{{{[<wtrans2> = objCur] <level>} \{Print the informatiom of a extlis}}}",    "e2print",C_Point2Print,"{{{[<wtrans2> = objCur] <level> [-c <colmin> <colmax>] [-r <rowmin> <rowmax>]} \{e2print prints the context of the extrema defined in the rectangle  [<colmin> <colmax>] * [<rowmin> <rowmax>] at the level <level>.}}}",    "e2proprint",C_Point2ProPrint,"{{{[<wtrans2> = objCur] <level> [-c <colmin> <colmax>] [-r <rowmin> <rowmax>]} \{Proprint prints all the extremas in a maxline with the coordinates of the extrema  in the finest scale of these maxlines within the region specified by -c <colmin> <colmax> and -r <rowmin> <rowmax>}}}",     "e2norm",C_PointReprNormalize2,"{{{[<wtrans2> = objCur] [-N] } \{e2norm normalizes the extrema modulus in the multiscale edge representation.\n\Due to the discretization of the filter values, the  modulus maxima of a step edge is not the same at all scales. The command is therefore introduced to correct the modulus values of the extrema by multiplying coefficients, obtained from step edge and the filter, in such a way that after the normalization, all the modulus of the extrema for a step edge in each level are the same. It is especially useful in the Lipschitz exponent calculation, since we know that the Lipschitz exponent of a step edge is 0 in our system. In the command extrema2, this normalization process is automatically performed.}}}",    "e2denorm",C_PointReprDenormalize2,"{{{[<wtrans2> = objCur] [-N]} \{The command is an inversion to the command e2norm.\n\Before reconstruction from the extrema representation, we suggest the user make sure that the denormalization of the extrema modulus is done.\n\In the command e2recons, which reconstructs an approximation of the original image from its wavelet transform edge representation, the denormalization is performed automatically.}}}", /*------------------------*/            NULL,NULL,NULL};CProcTable  point2Table = {Point2Commands,  "dwtrans2d", "Commands related to ext used in wavelet 2D transform "};extern void C_ChainCompute2(char **),C_ChainReprCount2(char **);extern void C_ChainReprThresh2(char **), C_ChainPicPrint2(char **), C_ChainPicPredictArg(char **),C_ChainPicBlurAmp(char **),C_ChainPicBlurAbs(char **), C_ChainPicSmoothArg(char **),C_C2Info(char **);CProc Chain2Commands[] = {    "chain2",C_ChainCompute2,"{{{[<dwtrans2>=objCur]} \{Links the maxima into curves referred to as 'chains'. \It applies some smoothness constraints on both the gradient and modulus values along a chain. \(i.e., close maxima are linked only if they have similar gradient and modulus.}}}",/*    "c2thresh",C_ChainReprThresh2,"{{{[<wtrans2> = objCur] <level> [-l <thresh_size>] [-a <thresh_mag>] [-p]} \{c2thresh removes the chains at a level <level> according to its statistical properties.\n\It removes the chain with average modulus no more than <thresh_mag> or with extrema no more than <thresh_size>. Options are \n\ -a  <thresh_mag> :\n\   remove the chains with average modulus no more than <thresh_mag>.\n\ -l  <thresh_size> :\n\   remove the chains with size no more than <thresh_size>.\n\ -p :\n\   remove all the extrema propagating to the chain been removed.}}}",       "c2print",C_ChainPicPrint2,"{{{[<wtrans2> = objCur] <level> [-p <nb>] [-l <length>] [-a <am>]} \{c2print prints the context of chain in the level <level>. Options are :\n\ -a <am> :\n\   c2print prints the chains with average modulus no less than amplitude <am>.\n\ -l <length> :\n\   c2print prints the chains with length no less than length <length>.\n\ -p <nb> :\n\   Without specifying this option, cprints prints out only the chain pic information at the level <level>. When specified, it prints the first <nb> of extrema in each chain of the chain_pic.}}}",    "c2info",C_C2Info,"{{{[<wtrans2> = objCur] <level>} \{Print the information of a chainlis at level <level>}}}",    "c2count",C_ChainReprCount2,"{{{[<wtrans2> = objCur]} \{c2count report the number of chains and the total extrema in the chains at each level}}}",    "c2args", C_ChainPicPredictArg,"{{{[<wtrans2> = objCur] <level> [-e]} \{c2args computes the arguments of the extrema in a chain from their tangents along the chain.\n\   To test whether angle information is robust or not, we remove the argument in all the level and compute their derivative of chain and take its perpedicular direction as gradient and put it into argument in each corresponding level. Since the chain is only defined at integer positions, we first smooth the chain, and take derivative later. \n\Option is :\n\ -e : If -e is set only the first and the last points arguments are modified. }}}",    "c2absblur",C_ChainPicBlurAbs,"{{{[<wtrans2> = objCur] <level> <sigma>} \{c2absblur smoothes the extrema coordinates in a chain at the level <level> by convolving with a Gaussian kernel with standard deviation <sigma>}}}",    "c2ampblur",C_ChainPicBlurAmp,"{{{{{[<wtrans2> = objCur] <level> <sigma>} \{c2ampblur smoothes the modulus of extrema in a chain at the level <level> bu convolving with a Gaussian with standard deviation <sigma>}}}",    "c2argsmooth",C_ChainPicSmoothArg,"{{{[<wtrans2> = objCur] <level>} \{c2argsmooth smooth extrema arguments in a chain at level <level> by convolving with a filter with a filter with weight (1,4,6,4,1)}}}", */   NULL,NULL,NULL};CProcTable chain2Table = {Chain2Commands,"",  "Commands related to chain used in wavelet 2D transform"};extern void C_lipschitz_noise_remove(char **);CProc NoiseDenoiseCommands[] = {    "denoise2",C_lipschitz_noise_remove,"{{{[<dwtrans2>=objCur]} \{Removes the white noise in images by thresholding extrema chains corresponding to particular values of Lipschitz exponents. \Lipschitz exponents are calculated from the decay of the wavelet transform modulus local extrema along chains. \The denoising process proceeds as follows : \n\1. thresholds all the extrema in a chain whose Lipschitz exponent is smaller than a given threshold. \n\2. thresholds all the chains at any level according to their lengths or average amplitudes. \n\3. removes all the extrema not propagating to a given scale. \n\4. rechains the chains such that all the chains in a fine scale corresponding to the same coarser chain \are grouped together. We know that a contour has chains at many scales. Moreover, the white noise's energy \distributes mostly in fine scales. Thus, the chains in fine scales are distorted more severely than those in coarse scales. \This is the reason why we need to rechain the chains (in fine scales) by making use of the chains in a coarse scales. \n\5. smoothes the abscissa and amplitude along the chains at some scales by a Gaussian kernel with a given standard deviation. \n\6. predicts a chain's phases in fine scales from the abscissa of the chain and smoothes the resultant phases. \n\The denoising process is interactive. It means that when you type in the 'denoise2' command, it is up to you to decide \whether any of the step above will be proceeded. \You will be asked questions you need to answer (if you type 'X' it will exit the denoising process, if you are asked for an \integer, it will be printed 'int' moreover a default answer will be always suggest in between brackets. Just hit the 'return' key \to select it).}}}",      NULL,NULL,NULL};CProcTable noise2Table = {NoiseDenoiseCommands,  "dwtrans2d", "Commands related to the noise in pictures "};/*********************************** *  * Loading/Adding the dwtrans2d package * ***********************************/int tWTRANS2, tWTRANS2_;extern TypeStruct tsDWtrans2;void LoadDWtrans2d(void) {   tWTRANS2 = AddVariableTypeValue(dwtrans2Type,&tsDWtrans2, NULL);  tWTRANS2_ = tWTRANS2+1;    AddCProcTable(&wtrans2Table);  AddCProcTable(&point2Table);  AddCProcTable(&chain2Table);  AddCProcTable(&noise2Table);    InitDFilter2();} void DeclareDWtrans2dPackage(void){  DeclarePackage("dwtrans2d",LoadDWtrans2d,1998,"2.1","E.Bacry, J.Fraleu, J.Kalifa, E.LePennec, S.Mallat, W.L.Hwang, S.Zhong",  "Package allowing to perform 2d dyadic wavelet transform decomposition, reconstruction and extrema reconstruction");} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -