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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? subbandsymbol.c

?? VC小波應(yīng)用 視頻編碼播放 EZW2 WAVLETS TRANSFORMER
?? C
字號(hào):
/*----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------*/
/* 
 * Mow-Song, Ng 2/9/2002
 * msng@mmu.edu.my
 * http://www.pesona.mmu.edu.my/~msng
 *
 * I do not claim copyright to the code, but if you use them or modify them,
 * please drop me a mail.
 *
 */
/*---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------*/

#include "subbandsymbol.h"

/*----------------------------------------------------------------------------*/	
/*----------------------------------------------------------------------------*/	
SubbandSymbol *SubbandSymbolAlloc(int hsize, int vsize, int nsteps)
{
	SubbandSymbol *symbol;
	int i;
	int *lowHSize, *lowVSize, *highHSize, *highVSize;

	assert(nsteps > 0);

	if ((symbol = (SubbandSymbol *)malloc(sizeof(SubbandSymbol)))==NULL){
		SubbandSymbolError("Fail to allocate symbol.\n");
	}

	symbol->hsize = hsize;
	symbol->vsize = vsize;
	symbol->nsteps = nsteps;

	/* ensure that all status starts with value 0 */
	symbol->symbol = (int *)calloc(symbol->hsize*symbol->vsize, sizeof(int));
	
	symbol->nSubbands		= 3*symbol->nsteps+1;
	symbol->subbandSize	= (int *)calloc(symbol->nSubbands, sizeof(int));
	symbol->subbandHSize = (int *)calloc(symbol->nSubbands, sizeof(int));
	symbol->subbandVSize = (int *)calloc(symbol->nSubbands, sizeof(int));
	symbol->subbandPtr	= (int **)calloc(symbol->nSubbands, sizeof(int *));

	lowHSize = (int *)calloc(symbol->nsteps, sizeof(int));
	lowVSize = (int *)calloc(symbol->nsteps, sizeof(int));
	highHSize = (int *)calloc(symbol->nsteps, sizeof(int));
	highVSize = (int *)calloc(symbol->nsteps, sizeof(int));

	lowHSize[symbol->nsteps-1] = (symbol->hsize+1)/2;
	lowVSize[symbol->nsteps-1] = (symbol->vsize+1)/2;
	highHSize[symbol->nsteps-1] = symbol->hsize/2; 
	highVSize[symbol->nsteps-1] = symbol->vsize/2;
	
	/* set the sizes for each blocks */
	for (i = symbol->nsteps-2; i >= 0; i--) {
		lowHSize[i] = (lowHSize[i+1]+1)/2;
		lowVSize[i] = (lowVSize[i+1]+1)/2;
		highHSize[i] = lowHSize[i+1]/2;
		highVSize[i] = lowVSize[i+1]/2; 
	}
	
	/* subband[0] */
	symbol->subbandPtr[0] = symbol->symbol;
	symbol->subbandHSize[0] = lowHSize[0];
	symbol->subbandVSize[0] = lowVSize[0];
	symbol->subbandSize[0] = symbol->subbandHSize[0]*symbol->subbandVSize[0];
	
	/* all other high pass subbands, do each scale at once */
	for (i = 0; i < symbol->nsteps; i++) {
		symbol->subbandHSize[3*i+1] = highHSize[i];
		symbol->subbandVSize[3*i+1] = lowVSize[i];
		symbol->subbandHSize[3*i+2] = lowHSize[i];
		symbol->subbandVSize[3*i+2] = highVSize[i];
		symbol->subbandHSize[3*i+3] = highHSize[i];
		symbol->subbandVSize[3*i+3] = highVSize[i];
	}
	
	/* set the data pointers */
	for (i = 1; i < symbol->nSubbands; i++) {
		symbol->subbandSize[i] = symbol->subbandHSize[i]*symbol->subbandVSize[i];
		symbol->subbandPtr[i] = symbol->subbandPtr[i-1] + symbol->subbandSize[i-1];
	}
	
	/* release allocated memory */
	free(lowHSize);
	free(lowVSize);
	free(highHSize);
	free(highVSize);
	
	return symbol;
}

/*----------------------------------------------------------------------------*/	
/*----------------------------------------------------------------------------*/	
void SubbandSymbolDealloc(SubbandSymbol *symbol)
{
	if (symbol!=NULL){
		free(symbol->symbol);
		free(symbol->subbandSize);
		free(symbol->subbandHSize);
		free(symbol->subbandVSize);
		free(symbol->subbandPtr);
		free(symbol);
	}
}

/*----------------------------------------------------------------------------*/	
/*----------------------------------------------------------------------------*/	
int SubbandSymbolGetNodeSymbol(SubbandSymbol *symbol, int scale, 
										 int orientation, int x, int y)
{
	int idx;

	if (scale==0){
		idx = 0;	
	}
	else{
		idx = 3*scale - 2 + orientation;
	}
	
	return (symbol->subbandPtr[idx][y*symbol->subbandHSize[idx] + x]);
}

/*----------------------------------------------------------------------------*/	
/*----------------------------------------------------------------------------*/	
void SubbandSymbolSetNodeSymbol(SubbandSymbol *symbol, int scale, 
										  int orientation, int x, int y, int s)
{
	int idx;

	if (scale==0){
		idx = 0;
	}
	else{
		idx = 3*scale - 2 + orientation;
	}

	symbol->subbandPtr[idx][y*symbol->subbandHSize[idx] + x] = s;

	return;
}

/*----------------------------------------------------------------------------*/	
/*----------------------------------------------------------------------------*/	
void SubbandSymbolError(char *fmt, ...)
{
	va_list argptr;
	
	va_start( argptr, fmt );
	fprintf(stderr, "SubbandSymbolError: " );
	vprintf( fmt, argptr );
	va_end( argptr );
	exit( -1 );
}

/*----------------------------------------------------------------------------*/	
/*----------------------------------------------------------------------------*/	

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜臀精品久久久久久蜜臀| 久久午夜色播影院免费高清| 日韩伦理免费电影| 99re热这里只有精品免费视频| 久久精品亚洲一区二区三区浴池 | av在线不卡免费看| 中文字幕一区二区三区不卡在线| 国产69精品久久久久777| 欧美国产1区2区| 色域天天综合网| 亚洲成人三级小说| 精品国产精品网麻豆系列| 国产精品正在播放| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 91免费视频观看| 一二三区精品视频| 欧美成人精精品一区二区频| 国产99久久精品| 亚洲国产色一区| 久久综合久久鬼色| 色欧美日韩亚洲| 久久se这里有精品| 国产精品家庭影院| 日韩午夜在线观看| 91亚洲午夜精品久久久久久| 天堂成人国产精品一区| 久久男人中文字幕资源站| 91精彩视频在线| 国产一区激情在线| 亚洲高清免费在线| 欧美激情一区不卡| 91超碰这里只有精品国产| 国产精品夜夜嗨| 五月婷婷综合在线| 中文字幕中文乱码欧美一区二区 | 欧美成人a视频| 91年精品国产| 精品在线观看免费| 亚洲电影一级黄| 中文字幕一区免费在线观看| 欧美一级二级三级乱码| 色综合久久久久| 国产成人av电影在线观看| 日韩激情视频在线观看| 亚洲人亚洲人成电影网站色| 日韩精品一区二区三区中文不卡| 色88888久久久久久影院野外 | 中文字幕制服丝袜一区二区三区 | 日韩欧美国产一区在线观看| 99久久精品99国产精品| 精品一区二区三区免费| 午夜影院久久久| 国产精品久久久久aaaa| 久久久久一区二区三区四区| 欧美亚洲图片小说| 99久久综合狠狠综合久久| 另类成人小视频在线| 午夜精品久久久久久| 亚洲精品久久嫩草网站秘色| 国产欧美中文在线| 久久免费看少妇高潮| 欧美一级在线免费| 欧美日韩一区二区三区视频| 不卡欧美aaaaa| 成人理论电影网| 成人一二三区视频| 国产精品123| 国产精品自拍毛片| 国产一区二区成人久久免费影院| 奇米影视一区二区三区| 亚洲第一主播视频| 亚洲韩国精品一区| 亚洲一区二区美女| 亚洲成人在线网站| 三级久久三级久久久| 丝袜亚洲另类欧美| 麻豆视频观看网址久久| 久久精品国产亚洲高清剧情介绍| 日本欧美大码aⅴ在线播放| 日韩主播视频在线| 热久久一区二区| 国产真实乱偷精品视频免| 国产一区二区91| 福利电影一区二区| 成人高清在线视频| 色综合天天综合色综合av | 成人免费视频一区| 91一区二区三区在线播放| 91丝袜美腿高跟国产极品老师 | 成人欧美一区二区三区视频网页 | 免费看欧美美女黄的网站| 久久99精品国产麻豆婷婷| 精品一区二区三区免费视频| 国产精品系列在线播放| 国产91精品免费| 91免费在线视频观看| 在线看不卡av| 日韩女优av电影在线观看| 久久久久久久久久久电影| 国产精品二三区| 午夜久久久久久电影| 极品少妇xxxx精品少妇偷拍| 国产福利91精品一区二区三区| 成人精品电影在线观看| 精品视频在线看| 久久久久一区二区三区四区| 国产精品久久久久久久久免费丝袜| 日韩毛片精品高清免费| 日本成人在线一区| 国产白丝精品91爽爽久久| 欧美影视一区在线| 精品福利一二区| 最新国产成人在线观看| 日本不卡免费在线视频| 国产精品自在欧美一区| 在线视频一区二区三区| 日韩美女天天操| 亚洲欧美另类久久久精品| 丰满放荡岳乱妇91ww| 亚洲色图视频免费播放| 99久久免费精品高清特色大片| 男女性色大片免费观看一区二区| 久久女同性恋中文字幕| 欧美一区二区三区视频在线| 欧美电影一区二区| 日韩精品中文字幕在线一区| 中文字幕欧美国产| 日日夜夜免费精品| 不卡av免费在线观看| 欧美一区二区三区视频| 亚洲男人的天堂在线观看| 黄网站免费久久| 日本精品视频一区二区三区| 精品国产91洋老外米糕| 亚洲国产一区视频| 菠萝蜜视频在线观看一区| 欧美一区二区三区成人| 亚洲激情av在线| 91精品国产欧美一区二区18| 亚洲特级片在线| 成人综合婷婷国产精品久久免费| 制服丝袜亚洲网站| 午夜精彩视频在线观看不卡| 一本一道久久a久久精品| 国产三级欧美三级| 国产成人av电影在线| 国产日韩精品一区二区三区| 日韩国产一区二| 日韩免费一区二区三区在线播放| 91视频.com| 亚洲午夜久久久久久久久电影院| 日韩三级精品电影久久久| 91视视频在线观看入口直接观看www | 日韩国产欧美视频| av福利精品导航| 久久一区二区三区四区| 日本视频在线一区| 天天综合日日夜夜精品| 天天亚洲美女在线视频| 久久国产日韩欧美精品| 欧美私人免费视频| 亚洲欧美综合色| 蜜臀91精品一区二区三区| 天天色图综合网| 欧美日本在线视频| 亚洲色图欧洲色图婷婷| 成人午夜精品在线| 久久伊99综合婷婷久久伊| 青青青伊人色综合久久| 日韩成人免费看| 久久免费的精品国产v∧| 欧美aaa在线| 日韩视频在线永久播放| 亚洲成av人片一区二区三区| 91蝌蚪porny成人天涯| 亚洲欧洲综合另类在线| 色噜噜久久综合| 午夜欧美视频在线观看| 欧美日韩一二三区| 日本vs亚洲vs韩国一区三区二区 | 国产精品国产自产拍高清av王其 | 色综合一区二区| 一区二区三区成人| 91福利视频在线| 日韩国产高清影视| 久久综合久久综合九色| 成人精品免费网站| 亚洲一区日韩精品中文字幕| 欧美日韩mp4| 韩国午夜理伦三级不卡影院| 国产欧美一区二区三区网站| 99久久久久久99| 亚洲成人综合网站| 精品国产乱码久久久久久久 | 色狠狠av一区二区三区| 亚洲成人免费影院| 欧美精品一区二区高清在线观看| 国产69精品久久777的优势| 亚洲综合色丁香婷婷六月图片| 欧美一区2区视频在线观看|