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

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

?? fretrans.cpp

?? vc++數(shù)字圖像處理 ,是一本很不錯(cuò)的介紹數(shù)字圖像方面的書籍,這里有本書的全部源碼
?? CPP
?? 第 1 頁 / 共 2 頁
字號(hào):
		int		wp;	int		hp;		// 圖像每行的字節(jié)數(shù)	LONG	lLineBytes;		// 計(jì)算圖像每行的字節(jié)數(shù)	lLineBytes = WIDTHBYTES(lWidth * 8);		// 賦初值	w = 1;	h = 1;	wp = 0;	hp = 0;		// 計(jì)算進(jìn)行離散余弦變換的寬度和高度(2的整數(shù)次方)	while(w * 2 <= lWidth)	{		w *= 2;		wp++;	}		while(h * 2 <= lHeight)	{		h *= 2;		hp++;	}		// 分配內(nèi)存	double *f = new double[w * h];	double *F = new double[w * h];		// 行	for(i = 0; i < h; i++)	{		// 列		for(j = 0; j < w; j++)		{			// 指向DIB第i行,第j個(gè)象素的指針			lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 1 - i) + j;						// 給時(shí)域賦值			f[j + i * w] = *(lpSrc);		}	}		for(i = 0; i < h; i++)	{		// 對(duì)y方向進(jìn)行離散余弦變換		DCT(&f[w * i], &F[w * i], wp);	}		// 保存計(jì)算結(jié)果	for(i = 0; i < h; i++)	{		for(j = 0; j < w; j++)		{			f[j * h + i] = F[j + w * i];		}	}		for(j = 0; j < w; j++)	{		// 對(duì)x方向進(jìn)行離散余弦變換		DCT(&f[j * h], &F[j * h], hp);	}		// 行	for(i = 0; i < h; i++)	{		// 列		for(j = 0; j < w; j++)		{			// 計(jì)算頻譜			dTemp = fabs(F[j*h+i]);						// 判斷是否超過255			if (dTemp > 255)			{				// 對(duì)于超過的,直接設(shè)置為255				dTemp = 255;			}						// 指向DIB第y行,第x個(gè)象素的指針			lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 1 - i) + j;						// 更新源圖像			* (lpSrc) = (BYTE)(dTemp);		}	}		// 釋放內(nèi)存	delete f;	delete F;	// 返回	return TRUE;}/************************************************************************* * * 函數(shù)名稱: *   WALSH() * * 參數(shù): *   double * f				- 指向時(shí)域值的指針 *   double * F				- 指向頻域值的指針 *   r						-2的冪數(shù) * * 返回值: *   無。 * * 說明: *   該函數(shù)用來實(shí)現(xiàn)快速沃爾什-哈達(dá)瑪變換。 * ************************************************************************/VOID WINAPI WALSH(double *f, double *F, int r){	// 沃爾什-哈達(dá)瑪變換點(diǎn)數(shù)	LONG	count;		// 循環(huán)變量	int		i,j,k;		// 中間變量	int		bfsize,p;		double *X1,*X2,*X;		// 計(jì)算快速沃爾什變換點(diǎn)數(shù)	count = 1 << r;		// 分配運(yùn)算所需的數(shù)組	X1 = new double[count];	X2 = new double[count];		// 將時(shí)域點(diǎn)寫入數(shù)組X1	memcpy(X1, f, sizeof(double) * count);		// 蝶形運(yùn)算	for(k = 0; k < r; k++)	{		for(j = 0; j < 1<<k; j++)		{			bfsize = 1 << (r-k);			for(i = 0; i < bfsize / 2; i++)			{				p = j * bfsize;				X2[i + p] = X1[i + p] + X1[i + p + bfsize / 2];				X2[i + p + bfsize / 2] = X1[i + p] - X1[i + p + bfsize / 2];			}		}				// 互換X1和X2  		X = X1;		X1 = X2;		X2 = X;	}		// 調(diào)整系數(shù)	for(j = 0; j < count; j++)	{		p = 0;		for(i = 0; i < r; i++)		{			if (j & (1<<i))			{				p += 1 << (r-i-1);			}		}		F[j] = X1[p] / count;	}		// 釋放內(nèi)存	delete X1;	delete X2;}/************************************************************************* * * 函數(shù)名稱: *   IWALSH() * * 參數(shù): *   double * F				- 指向頻域值的指針 *   double * f				- 指向時(shí)域值的指針 *   r						-2的冪數(shù) * * 返回值: *   無。 * * 說明: *   該函數(shù)用來實(shí)現(xiàn)快速沃爾什-哈達(dá)瑪反變換。 * ************************************************************************/VOID WINAPI IWALSH(double *F, double *f, int r){	// 變換點(diǎn)數(shù)	LONG	count;		// 循環(huán)變量	int		i;		// 計(jì)算變換點(diǎn)數(shù)	count = 1 << r;		// 調(diào)用快速沃爾什-哈達(dá)瑪變換進(jìn)行反變換	WALSH(F, f, r);		// 調(diào)整系數(shù)	for(i = 0; i < count; i++)	{		f[i] *= count;	}}/************************************************************************* * * 函數(shù)名稱: *   DIBWalsh() * * 參數(shù): *   LPSTR lpDIBBits    - 指向源DIB圖像指針 *   LONG  lWidth       - 源圖像寬度(象素?cái)?shù)) *   LONG  lHeight      - 源圖像高度(象素?cái)?shù)) * * 返回值: *   BOOL               - 成功返回TRUE,否則返回FALSE。 * * 說明: *   該函數(shù)用來對(duì)圖像進(jìn)行沃爾什-哈達(dá)瑪變換。函數(shù)首先對(duì)圖像每列進(jìn)行一維 * 沃爾什-哈達(dá)瑪變換,然后對(duì)變換結(jié)果的每行進(jìn)行一維沃爾什-哈達(dá)瑪變換。 * ************************************************************************/BOOL WINAPI DIBWalsh(LPSTR lpDIBBits, LONG lWidth, LONG lHeight){		// 指向源圖像的指針	unsigned char*	lpSrc;		// 循環(huán)變量	LONG	i;	LONG	j;		// 進(jìn)行付立葉變換的寬度和高度(2的整數(shù)次方)	LONG	w;	LONG	h;		// 中間變量	double	dTemp;		int		wp;	int		hp;		// 圖像每行的字節(jié)數(shù)	LONG	lLineBytes;		// 計(jì)算圖像每行的字節(jié)數(shù)	lLineBytes = WIDTHBYTES(lWidth * 8);		// 賦初值	w = 1;	h = 1;	wp = 0;	hp = 0;		// 計(jì)算進(jìn)行離散余弦變換的寬度和高度(2的整數(shù)次方)	while(w * 2 <= lWidth)	{		w *= 2;		wp++;	}		while(h * 2 <= lHeight)	{		h *= 2;		hp++;	}		// 分配內(nèi)存	double *f = new double[w * h];	double *F = new double[w * h];		// 行	for(i = 0; i < h; i++)	{		// 列		for(j = 0; j < w; j++)		{			// 指向DIB第i行,第j個(gè)象素的指針			lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 1 - i) + j;						// 給時(shí)域賦值			f[j + i * w] = *(lpSrc);		}	}		for(i = 0; i < h; i++)	{		// 對(duì)y方向進(jìn)行沃爾什-哈達(dá)瑪變換		WALSH(f + w * i, F + w * i, wp);	}		// 保存計(jì)算結(jié)果	for(i = 0; i < h; i++)	{		for(j = 0; j < w; j++)		{			f[j * h + i] = F[j + w * i];		}	}		for(j = 0; j < w; j++)	{		// 對(duì)x方向進(jìn)行沃爾什-哈達(dá)瑪變換		WALSH(f + j * h, F + j * h, hp);	}		// 行	for(i = 0; i < h; i++)	{		// 列		for(j = 0; j < w; j++)		{			// 計(jì)算頻譜			dTemp = fabs(F[j * h + i] * 1000);						// 判斷是否超過255			if (dTemp > 255)			{				// 對(duì)于超過的,直接設(shè)置為255				dTemp = 255;			}						// 指向DIB第i行,第j個(gè)象素的指針			lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 1 - i) + j;						// 更新源圖像			* (lpSrc) = (BYTE)(dTemp);		}	}		//釋放內(nèi)存	delete f;	delete F;	// 返回	return TRUE;}/************************************************************************* * * 函數(shù)名稱: *   DIBWalsh1() * * 參數(shù): *   LPSTR lpDIBBits    - 指向源DIB圖像指針 *   LONG  lWidth       - 源圖像寬度(象素?cái)?shù)) *   LONG  lHeight      - 源圖像高度(象素?cái)?shù)) * * 返回值: *   BOOL               - 成功返回TRUE,否則返回FALSE。 * * 說明: *   該函數(shù)用來對(duì)圖像進(jìn)行沃爾什-哈達(dá)瑪變換。于上面不同的是,此處是將二維 * 矩陣轉(zhuǎn)換成一個(gè)列向量,然后對(duì)該列向量進(jìn)行一次一維沃爾什-哈達(dá)瑪變換。 * ************************************************************************/BOOL WINAPI DIBWalsh1(LPSTR lpDIBBits, LONG lWidth, LONG lHeight){		// 指向源圖像的指針	unsigned char*	lpSrc;		// 循環(huán)變量	LONG	i;	LONG	j;		// 進(jìn)行付立葉變換的寬度和高度(2的整數(shù)次方)	LONG	w;	LONG	h;		// 中間變量	double	dTemp;		int		wp;	int		hp;		// 圖像每行的字節(jié)數(shù)	LONG	lLineBytes;		// 計(jì)算圖像每行的字節(jié)數(shù)	lLineBytes = WIDTHBYTES(lWidth * 8);		// 賦初值	w = 1;	h = 1;	wp = 0;	hp = 0;		// 計(jì)算進(jìn)行離散余弦變換的寬度和高度(2的整數(shù)次方)	while(w * 2 <= lWidth)	{		w *= 2;		wp++;	}		while(h * 2 <= lHeight)	{		h *= 2;		hp++;	}		// 分配內(nèi)存	double *f = new double[w * h];	double *F = new double[w * h];		// 列	for(i = 0; i < w; i++)	{		// 行		for(j = 0; j < h; j++)		{			// 指向DIB第j行,第i個(gè)象素的指針			lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 1 - j) + i;						// 給時(shí)域賦值			f[j + i * w] = *(lpSrc);		}	}		// 調(diào)用快速沃爾什-哈達(dá)瑪變換	WALSH(f, F, wp + hp);		// 列	for(i = 0; i < w; i++)	{		// 行		for(j = 0; j < h; j++)		{			// 計(jì)算頻譜			dTemp = fabs(F[i * w + j] * 1000);						// 判斷是否超過255			if (dTemp > 255)			{				// 對(duì)于超過的,直接設(shè)置為255				dTemp = 255;			}						// 指向DIB第j行,第i個(gè)象素的指針			lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight - 1 - j) + i;						// 更新源圖像			* (lpSrc) = (BYTE)(dTemp);		}	}		//釋放內(nèi)存	delete f;	delete F;	// 返回	return TRUE;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本不卡在线视频| 亚洲国产一区二区三区| 麻豆视频一区二区| 国产精品三级av| 欧美在线小视频| 国产91精品精华液一区二区三区 | 韩国av一区二区三区| 国产亚洲精品久| 91色综合久久久久婷婷| 日本在线不卡一区| 中文字幕一区二区三区蜜月 | 18欧美亚洲精品| 日韩免费高清电影| 色综合天天综合在线视频| 经典三级视频一区| 亚洲一线二线三线视频| 一区二区三区欧美视频| 中文字幕免费不卡在线| 91精品在线观看入口| 国产成人午夜精品影院观看视频| 日欧美一区二区| 综合久久给合久久狠狠狠97色| 日韩三级中文字幕| 欧美性xxxxxxxx| 亚洲精品日日夜夜| 国产 日韩 欧美大片| 亚洲激情校园春色| 国产精品素人一区二区| 日韩欧美精品三级| 日韩午夜精品视频| 欧美日韩一级视频| 一个色在线综合| 依依成人综合视频| 自拍视频在线观看一区二区| 国产农村妇女精品| 26uuu国产一区二区三区| 欧美大黄免费观看| 在线综合视频播放| 色综合天天性综合| 一本一本大道香蕉久在线精品| 国产精品18久久久久久久久久久久| 人人爽香蕉精品| 天天操天天干天天综合网| 亚洲综合一区二区| 夜夜嗨av一区二区三区网页 | 亚洲一区二区三区国产| 国产精品久久久久精k8 | 中文字幕精品一区| 亚洲精品一区二区三区99| 欧美日韩国产首页在线观看| 欧美在线视频不卡| 欧美美女一区二区三区| 欧美一区二区精品| 日韩限制级电影在线观看| 精品国产第一区二区三区观看体验 | 国产精品久久久久永久免费观看| 精品久久久久久久久久久久久久久久久 | 韩国中文字幕2020精品| 亚洲永久精品国产| 五月天亚洲精品| 日韩成人av影视| 狠狠色丁香久久婷婷综| 国产一区 二区| 国产精品中文欧美| 国产精品一区二区久久不卡| 国产美女精品在线| 一本久道中文字幕精品亚洲嫩| 色天使色偷偷av一区二区| 欧美日本高清视频在线观看| 日韩一二三区视频| 欧美一区中文字幕| 国产精品久久久久久久久免费樱桃| 国产精品成人免费在线| 亚洲妇女屁股眼交7| 免费观看成人av| 成人午夜精品一区二区三区| 91伊人久久大香线蕉| 欧美日本视频在线| 久久人人爽爽爽人久久久| 国产精品久久看| 美女网站色91| 国产电影精品久久禁18| 欧美性感一类影片在线播放| 日韩一区二区三区免费观看| 中文字幕av一区二区三区免费看 | 欧美一级黄色录像| 久久精品一区二区三区不卡| 日韩欧美国产一二三区| 中文字幕视频一区| 日日夜夜精品视频免费| 91在线观看免费视频| 欧美肥妇毛茸茸| 亚洲欧洲无码一区二区三区| 图片区日韩欧美亚洲| 国产**成人网毛片九色| 7777精品伊人久久久大香线蕉| 精品国产91亚洲一区二区三区婷婷| 亚洲视频每日更新| 另类专区欧美蜜桃臀第一页| 一本在线高清不卡dvd| 精品欧美乱码久久久久久| 亚洲欧美另类综合偷拍| 美女视频网站黄色亚洲| 99精品国产91久久久久久 | 精品捆绑美女sm三区| 亚洲免费av高清| 激情图片小说一区| 欧美日韩不卡视频| 综合自拍亚洲综合图不卡区| 国产一区二区三区视频在线播放| 91老师片黄在线观看| 日韩一区二区在线看| 亚洲一区二区在线免费观看视频| 精品午夜久久福利影院| 欧美人xxxx| 最新日韩av在线| 国产91在线看| 精品sm捆绑视频| 亚洲桃色在线一区| 成人涩涩免费视频| 日韩欧美成人一区| 免费人成精品欧美精品| 在线观看一区二区精品视频| 中文字幕一区二区三区四区不卡| 日韩经典中文字幕一区| 色哟哟日韩精品| 欧美一级二级在线观看| 五月天精品一区二区三区| 色狠狠av一区二区三区| 国产精品久久久久毛片软件| 国产精品自拍一区| 国产日产欧产精品推荐色| 蓝色福利精品导航| 欧美电影免费观看高清完整版在线 | 亚洲欧美激情一区二区| 成人听书哪个软件好| 国产日产欧美一区二区视频| 精品一区二区三区在线观看| 久久天天做天天爱综合色| 日本在线不卡视频| 欧美一区二区三区电影| 香蕉av福利精品导航| 欧美一区二区精品在线| 热久久久久久久| 日韩一二三四区| 久久成人免费日本黄色| 在线观看视频91| 一区二区三区美女| www.性欧美| 亚洲欧美偷拍卡通变态| 色噜噜夜夜夜综合网| 亚洲欧美日韩一区二区 | 91福利小视频| 丝袜国产日韩另类美女| 欧美猛男gaygay网站| 蜜臀va亚洲va欧美va天堂| 91麻豆精品国产91久久久| 久久综合综合久久综合| 欧美成人艳星乳罩| 成人教育av在线| 中文字幕在线一区| 不卡电影免费在线播放一区| 亚洲桃色在线一区| 欧美无乱码久久久免费午夜一区 | 欧美优质美女网站| 视频一区在线视频| 日韩欧美123| 99久久精品国产网站| 亚洲欧美怡红院| 在线播放视频一区| 久久草av在线| 国产精品久久久久久久久果冻传媒 | 成年人国产精品| 亚洲女厕所小便bbb| 91精品国产丝袜白色高跟鞋| 久久99久久精品| 一区二区三区毛片| 91麻豆精品国产自产在线| 成人夜色视频网站在线观看| 中文字幕日韩一区二区| 欧美精品在线观看一区二区| 国内精品第一页| 欧美精品123区| 国产91丝袜在线18| 亚洲精品国久久99热| 精品久久久久久久久久久久久久久久久| 国产在线一区二区综合免费视频| 亚洲精品写真福利| 欧美草草影院在线视频| 色综合激情五月| 蜜臀91精品一区二区三区| 亚洲欧洲日韩综合一区二区| 欧美另类z0zxhd电影| 精品在线视频一区| 一区二区在线观看视频| 欧美日韩一区三区四区| 高清不卡在线观看| 性做久久久久久久久| 亚洲欧美国产毛片在线| 欧美mv日韩mv亚洲|