亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mallat.c

?? 大師寫的二代小波經典之作
?? C
字號:
/* *  -*- Mode: ANSI C -*- *  $Id: mallat.c,v 1.5 1996/10/06 09:24:54 fernande Exp $ *  $Source: /sgi.acct/sweldens/cvs/liftpack/Lifting/mallat.c,v $ *  Author: Gabriel Fernandez, Senthil Periaswamy * *  This file contains routines to manipulate the results of an in-place *  transform in order to re-arrange the coefficients in Mallat format. *//* do not edit anything above this line *//* System header files */#include <stdio.h>#include <math.h>/* FLWT header files */#include <flwtdef.h>#include <mallat.h>#include <mem.h>#include <util.h>/* code *//* * FLWTChangeFormat function: changes a given image from the Lifting format *                            to the Mallat format, and viceversa. */voidFLWTChangeFormat ( Matrix Data, const int width, const int height,                                const int N, const int nTilde,                                const int levels, const boolean inverse ){    int i, x, y,        lenX, lenX2,	lenY, lenY2, /* widths and heights at each level of calculations */        n,           /* maximum number levels */        nX, nY;      /* number of iterations in X and Y directions */    Flt maxN;        /* maximum number of vanishing moments */    /* Calculate number of iterations n. It is the maximum  */    /* value such that the following relation is satisfied. */    /*        (2^n)*(N-1) <= L < (2^(n+1))*(N-1) + 1        */    /* Where L = max (signal's length in X-Y direction).    */    /* and N = max (# dual vanish mom & # real vanish mom)  */    /* Hence, solving for n, we have the following equation */    /* for all the cases:  n = floor (log_2((L-1)/(N-1))    */    if ( N==1 || nTilde==1 ) {   /* Haar wavelets */        /* Iterations in X */        nX = (width==1) ? 0 :             (int)ceil((Flt)logBaseN((Flt)width,2.0));        /* Iterations is Y */        nY = (height==1) ? 0 :             (int)ceil((Flt)logBaseN((Flt)height,2.0));    } else {   /* Biorthogonal wavelets */        /* Max vanishing moments */        maxN = (Flt)MAX(N, nTilde) - (Flt)1;        /* Iterations in X */        nX = (width==1) ? 0 :             (int)logBaseN((Flt)(width-1)/maxN,2.0);        /* Iterations in Y */        nY = (height==1) ? 0 :             (int)logBaseN((Flt)(height-1)/maxN,2.0);    }    /* Find lowest levels */    nX = (nX < 0) ? 0 : MIN (levels, nX);    nY = (nY < 0) ? 0 : MIN (levels, nY);    /* Total number of iterations */    n  = MAX(nX, nY);    if ( !inverse ) {        /* Initial lengths */        lenX = lenX2 = width;        lenY = lenY2 = height;        /* Apply Mallat ordering to rows and columns */        for ( i=0 ; i<n ; i++ ) {            /* For the rows */            if (nX-- > 0) {                for ( y=0 ; y<lenY2 ; y++ ) {                    InplaceChange1D( &Data[y][0], lenX, 1, inverse );                }	        lenX  -= (lenX  >> 1);	        lenY2 -= (lenY2 >> 1);            }            /* For the columns */            if (nY-- > 0) {                for ( x=0 ; x<lenX2 ; x++ ) {                    InplaceChange1D( &Data[0][x], lenY, width, inverse );                }	        lenY  -= (lenY  >> 1);	        lenX2 -= (lenX2 >> 1);            }        }    } else {   /* inverse */        /* Apply Lifting ordering to rows and columns */        for ( i=n-1 ; i>=0 ; i-- ) {            int j;            /* Initial lengths */            lenX = lenX2 = width;            lenY = lenY2 = height;            /* For the columns */            if (nY-- > 0) {                /* Calculate new length */                for ( j=0 ; j<i ; j++ ) {                    lenY  -= (lenY  >> 1);                    lenX2 -= (lenX2 >> 1);                }                /* Reorganize coeffs */                for ( x=0 ; x<lenX2 ; x++ ) {                    InplaceChange1D( &Data[0][x], lenY, width, inverse );                }            }            /* For the rows */            if (nX-- > 0) {                /* Calculate new length */                for ( j=0 ; j<i ; j++ ) {                    lenX  -= (lenX  >> 1);                    lenY2 -= (lenY2 >> 1);                }                /* Reorganize coeffs */                for ( y=0 ; y<lenY2 ; y++ ) {                    InplaceChange1D( &Data[y][0], lenX, 1, inverse );                }            }        }    } }/* * InplaceChange1D function: arranges the wavelet coefficients in the given *                           vector to put them in Mallat or Lifting format, *                           depending on the value of the inverse variable. */void InplaceChange1D ( Vector Data, const int len, const int offset,                       const boolean inverse ){    register int i;    int noLambdas, noGammas;    Vector lPtr, gPtr, bufPtr;    Vector buffer;    /* Allocate memory for buffer vector */    buffer = vector( 0, (long)(len-1) );    /* Number of Gamma coefficients */    noGammas  = len>>1;    noLambdas = len - noGammas;        /* Check whether to do Lifting format or Mallat format */    if ( !inverse ) {        /* Set lambda and gamma pointers */        lPtr = buffer;            /* point at the beginning of vector */        gPtr = buffer + (noLambdas);   /* point at half of the vector */        /* Move all lambdas to the left and all gammas to the right */        for ( i=0 ; i<len-2 ; i+=2 ) {	    *(lPtr) = Data[i*offset];            *(gPtr) = Data[(i+1)*offset];	    lPtr ++;	    gPtr ++;        }        if ( ODD(len) ) {            i = len-1;            *(lPtr) = Data[i*offset];        } else {            i = len-2;	    *(lPtr) = Data[i*offset];            *(gPtr) = Data[(i+1)*offset];        }    } else {        /* Set lambda and gamma pointers */        lPtr = Data;                   /* point at the beginning of vector */        gPtr = Data + (noLambdas)*offset;   /* point at half of the vector */        /* Alternate lambdas and gammas */        for ( i=0 ; i<len-2 ; i+=2 ) {	    buffer[i]   = *(lPtr);            buffer[i+1] = *(gPtr);	    lPtr += offset;	    gPtr += offset;        }        if ( ODD(len) ) {            i = len-1;	    buffer[i] = *(lPtr);        } else {            i = len-2;	    buffer[i]   = *(lPtr);            buffer[i+1] = *(gPtr);        }    }        /* Write results in original vector */    bufPtr = buffer;    for ( i=0 ; i<len*offset ; i+=offset ) {	Data[i] = *(bufPtr++);    }        /* Free allocated memory */    free_vector( buffer, 0, (long)(len-1) );}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91国偷自产一区二区开放时间 | 夜夜嗨av一区二区三区中文字幕| 精品国产乱码久久久久久久久| 欧美日韩精品免费观看视频 | 成人精品国产免费网站| 国产一区二区三区四区五区入口 | 亚洲欧美日韩在线不卡| 国产精品夫妻自拍| 亚洲在线中文字幕| 日韩电影免费在线观看网站| 奇米影视一区二区三区| 国产伦精品一区二区三区免费 | 亚洲va在线va天堂| 水野朝阳av一区二区三区| 久久91精品久久久久久秒播| 国内外成人在线| 成人毛片老司机大片| 91行情网站电视在线观看高清版| 欧美精品在线视频| 日韩欧美国产精品一区| 国产日韩欧美在线一区| 一区二区三区四区av| 日本最新不卡在线| 国产精品一卡二卡| 色噜噜狠狠成人网p站| 欧美一级午夜免费电影| 欧美激情综合网| 亚洲二区视频在线| 国产成人av资源| 欧美色视频在线| 久久久久久久久一| 亚洲国产精品一区二区久久| 韩国三级在线一区| 亚洲激情av在线| 欧洲一区二区三区在线| 日韩欧美国产精品| 18欧美乱大交hd1984| 日韩高清不卡一区二区三区| 国产v综合v亚洲欧| 欧美美女黄视频| 国产精品久久久爽爽爽麻豆色哟哟 | 久久看人人爽人人| 亚洲高清视频的网址| 国产经典欧美精品| 欧美一区二区三区在线视频| 成人免费在线观看入口| 久久精品国产亚洲5555| 欧洲一区二区三区在线| 国产精品日韩精品欧美在线| 免费在线视频一区| 欧美系列在线观看| 中文字幕亚洲欧美在线不卡| 韩国欧美一区二区| 欧美一级在线观看| 亚洲成人午夜电影| 成人中文字幕电影| 久久久久久久久久久久久久久99 | 亚洲欧美激情一区二区| 国产丶欧美丶日本不卡视频| 日韩欧美卡一卡二| 亚洲国产一区二区视频| 在线观看av不卡| 亚洲男人的天堂在线观看| 成人久久久精品乱码一区二区三区| 欧美变态tickling挠脚心| 日韩avvvv在线播放| 欧美日韩国产成人在线91| 亚洲一二三区视频在线观看| 91视频观看视频| 亚洲三级在线免费| 91天堂素人约啪| 亚洲视频免费看| 色伊人久久综合中文字幕| 17c精品麻豆一区二区免费| 成人黄色软件下载| 一区免费观看视频| 一本高清dvd不卡在线观看| 亚洲免费资源在线播放| 91视频一区二区| 亚洲综合色在线| 91福利社在线观看| 三级成人在线视频| 欧美成人福利视频| 国产成人精品免费在线| 日本一区二区三区四区在线视频| 国产精品一区在线| 日韩理论电影院| 欧美日韩一区二区电影| 奇米精品一区二区三区在线观看| 精品理论电影在线| 成人免费视频一区| 亚洲欧美另类图片小说| 在线电影一区二区三区| 国产激情一区二区三区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 91在线免费播放| 视频一区中文字幕国产| 久久久蜜桃精品| 91理论电影在线观看| 亚洲成人精品影院| 国产午夜精品久久久久久久| 色婷婷av一区二区三区gif| 午夜电影一区二区三区| 欧美国产日产图区| 欧美日韩一级片在线观看| 精品一区二区三区蜜桃| 一区二区高清视频在线观看| 91精品国产高清一区二区三区| 国产jizzjizz一区二区| 亚洲国产精品久久不卡毛片| 久久精品一级爱片| 欧美伊人久久大香线蕉综合69| 极品少妇xxxx偷拍精品少妇| 亚洲欧美日韩中文播放| www国产成人免费观看视频 深夜成人网| 成人福利电影精品一区二区在线观看| 亚洲成人av免费| 国产精品久久久久久久久果冻传媒 | 日韩精品国产精品| 国产精品欧美精品| 日韩欧美一二区| 欧美日韩在线观看一区二区| 成人精品视频网站| 精彩视频一区二区三区| 亚洲国产综合91精品麻豆| 国产精品久久久久四虎| 久久久另类综合| 在线成人午夜影院| 欧美综合在线视频| av爱爱亚洲一区| 国产精品中文字幕欧美| 麻豆成人久久精品二区三区小说| 樱花影视一区二区| 中文字幕一区二区三区视频| 久久免费电影网| 欧美成人女星排名| 日韩精品中文字幕一区 | hitomi一区二区三区精品| 蜜桃av噜噜一区| 日韩精品电影在线观看| 伊人性伊人情综合网| 亚洲天堂av一区| 中文字幕一区免费在线观看| 久久免费视频色| 久久久综合九色合综国产精品| 精品久久一区二区| 欧美一卡二卡在线| 日韩一级视频免费观看在线| 3d成人h动漫网站入口| 91精品国模一区二区三区| 欧洲另类一二三四区| 欧美日韩中文字幕一区| 精品视频在线免费看| 欧美日韩精品一区二区天天拍小说| 91传媒视频在线播放| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 91啦中文在线观看| 色久综合一二码| 欧美另类一区二区三区| 欧美日韩一区二区在线观看视频| 欧美色区777第一页| 在线成人免费视频| 久久综合久久99| 国产精品成人一区二区艾草| 亚洲综合在线免费观看| 亚洲国产sm捆绑调教视频| 日本亚洲视频在线| 国产精品77777| 色综合中文综合网| 91精品国产综合久久精品麻豆| 欧美精品在线观看一区二区| 日韩欧美国产一区二区三区| 久久先锋影音av鲁色资源网| 国产精品你懂的| 亚洲第一狼人社区| 国产剧情一区二区| 色婷婷综合久久久久中文| 欧美二区三区91| 久久久天堂av| 亚洲v日本v欧美v久久精品| 国内偷窥港台综合视频在线播放| 成人永久免费视频| 在线播放国产精品二区一二区四区 | eeuss国产一区二区三区| 欧美日韩国产大片| 国产精品欧美综合在线| 亚洲大型综合色站| 成人免费不卡视频| 欧美日本在线播放| 日本一区二区三区高清不卡| 午夜精品久久久久久| 成人丝袜18视频在线观看| 欧美日韩国产精选| 中文字幕精品一区二区三区精品| 亚洲丰满少妇videoshd| 成人福利视频网站| 久久午夜色播影院免费高清| 亚洲五码中文字幕| 97se狠狠狠综合亚洲狠狠| 久久综合九色综合欧美亚洲|