fshrink2.c

来自「image processing including fourier,wavel」· C语言 代码 · 共 44 行

C
44 行
字号
/*--------------------------- Commande MegaWave -----------------------------*//* mwcommand   name = {fshrink2};   version = {"1.0"};   author = {"Lionel Moisan"};   function = {"Shrink a Fimage to dimensions power of two"};   usage = {           in->in       "input Fimage",           out<-out     "shrinked Fimage"   };*/#include <stdio.h>#include "mw.h"/* NB : calling this module with out=in is nonsense */void fshrink2(in,out)Fimage in,out;{    int n,p,nn,pp,tmp,i,j,iofs,jofs;    n = in->nrow;    p = in->ncol;    /* Compute new image size */    nn = 1; tmp = n>>1;    while (tmp) {tmp>>=1; nn<<=1;}    pp = 1; tmp = p>>1;    while (tmp) {tmp>>=1; pp<<=1;}    /* copy center part of input image */    out = mw_change_fimage(out,nn,pp);    if (!out) mwerror(FATAL,1,"Not enough memory.");    iofs = (n-nn)>>1;    jofs = (p-pp)>>1;    for (i=0;i<nn;i++) for (j=0;j<pp;j++)       out->gray[i*pp+j] = in->gray[(i+iofs)*p+j+jofs];}

⌨️ 快捷键说明

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