• 大小: 7.81MB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2023-10-05
  • 语言: Matlab
  • 标签: NSCT  图像增强  

资源简介

基于NSCT的图像增强,matlab程序,可以直接运行,对初学着有很大帮助

资源截图

代码片段和文件信息

/******************************************************************
* atrousc.c -  Written by Arthur Cunha. This routine builds up on 
*               zconv2D_OS.c written by Jason Laska
*
* Inputs:   x - A 2D signal
*           h - 2D filter
*           m - separable upsampling matrix
*         
* Outputs:  y - 2D result of convolution with filter 
*           upsampled by a m only the ‘valid‘ part is returned.
*           Similar to conv2(xh‘valid‘) where h is the upsampled
*           filter.
*  
*          
*
* Usage:    y = zconv2D_O(xhm);
*
* Notes:    This function does not actually upsample the filter 
*           it computes the convolution as if the filter had been 
*           upsampled. This is the ultimate optimized version.
*           Further optimized for separable (diagonal) upsampling matrices.
*
* This is a MEX-FILE for matlab
*
/********************************************************/

#include “mex.h“
#include 

//Constants for matlab interfacing
#define OUT     plhs[0]
#define SIGNAL  prhs[0] //flip and shift
#define FILTER  prhs[1] //stationary
#define MMATRIX prhs[2]

//MACRO for converting positions to linear
#define LINPOS(rowcolcollen) (row*collen)+col


void mexFunction(int nlhs mxArray *plhs[] int nrhs const mxArray *prhs[])
{
    //Declarations
   double *FArray*SArray*outArray*M;
/* FArray   - Filter coefficients
   SArray   - Signal coefficients
   outArray - Output coefficients
   M        - upsampling matrix  */
   int SColLengthSRowLengthFColLengthFRowLengthO_SColLengthO_SRowLength;
   int SFColLengthSFRowLength;
   int n1n2l1l2k1k2f1f2 kk2 kk1;
   double sum;   
   int M0M3sM0sM3;

    //Get the input sizes
    SColLength = mxGetM(SIGNAL); 
    SRowLength = mxGetN(SIGNAL);
    FColLength = mxGetM(FILTER); 
    FRowLength = mxGetN(FILTER);
    
    SFColLength = FColLength-1;
    SFRowLength = FRowLength-1;
    

//Get The Data
    FArray = mxGetPr(FILTER);
    SArray = mxGetPr(SIGNAL);
    M = mxGetPr(MMATRIX);
    M0 = (int)M[0];    
    M3 = (int)M[3];   
    sM0 = M0-1;
    sM3 = M3-1;
    

// Corrected Lengths

O_SColLength = SColLength - M0*FColLength + 1;
O_SRowLength = SRowLength - M3*FRowLength + 1;


    //Make output size and Allocate out vector
    
 
    OUT      = mxCreateDoubleMatrix(O_SColLength O_SRowLength mxREAL); 
    outArray = mxGetPr(OUT); //outArray is new vector
 
/* Convoluyion loop */

    for (n1=0;n1 for (n2=0;n2 sum=0;     
    kk1 = n1 + sM0;;
for (k1=0;k1       kk2 = n2 + sM3;
for (k2=0;k2  f1 = SFRowLength - k1; /* flipped index */
 f2 = SFColLength - k2;  
 sum+= FArray[LINPOS(f1f2FColLength)] * SArray[LINPOS(kk1kk2SColLength)];
 kk2+=M3;
}
kk1+=M0;

    outArray[LINPOS(n1n2O_SColLength)] = sum;
}
}

    return;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2969  2004-10-17 16:42  enhancement_basedonnsct\atrousc.c

     文件       7168  2004-10-17 16:45  enhancement_basedonnsct\atrousc.dll

     文件       8664  2005-01-24 21:51  enhancement_basedonnsct\atrousc.mexmac

     文件       7680  2013-06-27 15:27  enhancement_basedonnsct\atrousc.mexw64

     文件       1234  2005-11-03 09:10  enhancement_basedonnsct\atrousdec.m

     文件      19406  2004-09-09 15:01  enhancement_basedonnsct\atrousfilters.m

     文件       1012  2004-10-17 16:45  enhancement_basedonnsct\atrousrec.m

     文件     177851  2003-11-11 01:45  enhancement_basedonnsct\barbara.png

     文件    1456787  2012-07-08 10:07  enhancement_basedonnsct\data.mat

     文件    1456787  2012-07-08 10:09  enhancement_basedonnsct\data3.mat

     文件    1456787  2012-07-08 10:10  enhancement_basedonnsct\data4.mat

     文件    1456787  2012-07-08 10:12  enhancement_basedonnsct\data5.mat

     文件    1456787  2012-07-08 10:13  enhancement_basedonnsct\data6.mat

     文件       7258  2012-10-29 15:08  enhancement_basedonnsct\decdemo.m

     文件       1520  2014-04-04 10:41  enhancement_basedonnsct\dfbdecdemo.m

     文件      13234  2004-10-18 12:28  enhancement_basedonnsct\dfilters.m

     文件       2607  2004-12-22 21:26  enhancement_basedonnsct\dmaxflat.m

     文件       1103  2003-04-10 11:30  enhancement_basedonnsct\efilter2.m

     文件       1861  2003-11-06 00:25  enhancement_basedonnsct\extend2.m

     文件        856  2003-04-10 11:30  enhancement_basedonnsct\ld2quin.m

     文件        662  2003-11-05 10:17  enhancement_basedonnsct\ldfilter.m

     文件        854  2003-11-05 10:19  enhancement_basedonnsct\mctrans.m

     文件        775  2003-04-10 11:30  enhancement_basedonnsct\modulate2.m

     文件     263222  2012-10-08 09:36  enhancement_basedonnsct\nerve.bmp

     文件     263222  2012-10-19 11:41  enhancement_basedonnsct\noiselena.bmp

     文件     263222  2012-10-08 09:37  enhancement_basedonnsct\noisenerve.bmp

     文件       4662  2005-11-03 10:47  enhancement_basedonnsct\nsctdec.m

     文件       3257  2005-11-03 10:33  enhancement_basedonnsct\nsctrec.m

     文件       5046  2005-01-20 23:13  enhancement_basedonnsct\nsdfbdec.m

     文件       4931  2005-01-20 23:14  enhancement_basedonnsct\nsdfbrec.m

............此处省略25个文件信息

评论

共有 条评论