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

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

?? makecolordib.cpp

?? 圖像處理算法相關VC程序 VC++圖像處理程序設計配套光盤
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
				+h[1][1]*(*(p_data+(height-j-2)*DibWidth+i+3))
				+h[1][2]*(*(p_data+(height-j-2)*DibWidth+i+6))
				//對應的第0行的值乘以矩陣對應值,再相加
				+h[2][0]*(*(p_data+(height-j-3)*DibWidth+i))
				+h[2][1]*(*(p_data+(height-j-3)*DibWidth+i+3))
				+h[2][2]*(*(p_data+(height-j-3)*DibWidth+i+6));
			*(p_temp+(height-j-2)*DibWidth+i+3)=abs(int(pby_pt));
		}
	}
	memcpy(p_data,p_temp,height*DibWidth);  // 復制處理后的圖像
	delete []p_temp;  //刪除暫時分配內存
}

/***************************************************************/
/*函數名稱:LowLVBObig()                                       */
/*函數類型:void                                               */
/*功能:實現圖像低通濾波(5x5)。                                */
/***************************************************************/
void MakeColorDib::LowLVBObig()   //低通濾波(5x5)
{
	BYTE *p_data;     //原圖數據區指針
	int wide,height,DibWidth;    //原圖長、寬、字節寬
	p_data=this->GetData ();   //取得原圖的數據區指針
    wide=this->GetWidth ();  //取得原圖的數據區寬度
    height=this->GetHeight ();   //取得原圖的數據區高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節數
	int h[5][5];//定義(5x5)矩陣
	h[0][0] = 1;  h[0][1] = 1; h[0][2] = 1; h[0][3] = 1; h[0][4] = 1;
	h[1][0] = 1;  h[1][1] = 2; h[1][2] = 2; h[1][3] = 2; h[1][4] = 1;
	h[2][0] = 1;  h[2][1] = 2; h[2][2] = 3; h[2][3] = 2; h[2][4] = 1;
	h[3][0] = 1;  h[3][1] = 2; h[3][2] = 2; h[3][3] = 2; h[3][4] = 1;
	h[4][0] = 1;  h[4][1] = 1; h[4][2] = 1; h[4][3] = 1; h[4][4] = 1;
	BYTE *p_temp=new BYTE[height*DibWidth];	// 暫時分配內存,以保存新圖像
	for(int j=0;j<height-4;j++)	// 每行
	{
		for(int i=0;i<DibWidth-14;i++)	// 每列
		{
	        int pby_pt=0;
	        //對應的第0行的值乘以矩陣對應值,再相加
			pby_pt=h[0][0]*(*(p_data+(height-j-1)*DibWidth+i))
				  +h[0][1]*(*(p_data+(height-j-1)*DibWidth+i+3))
				  +h[0][2]*(*(p_data+(height-j-1)*DibWidth+i+6))
			      +h[0][3]*(*(p_data+(height-j-1)*DibWidth+i+9))
				  +h[0][4]*(*(p_data+(height-j-1)*DibWidth+i+12))
                  //對應的第1行的值乘以矩陣對應值,再相加
			      +h[1][0]*(*(p_data+(height-j-2)*DibWidth+i))
			      +h[1][1]*(*(p_data+(height-j-2)*DibWidth+i+3))
				  +h[1][2]*(*(p_data+(height-j-2)*DibWidth+i+6))
				  +h[1][3]*(*(p_data+(height-j-2)*DibWidth+i+9))
				  +h[1][4]*(*(p_data+(height-j-2)*DibWidth+i+12))
                  //對應的第2行的值乘以矩陣對應值,再相加
			      +h[2][0]*(*(p_data+(height-j-3)*DibWidth+i))
				  +h[2][1]*(*(p_data+(height-j-3)*DibWidth+i+3))
				  +h[2][2]*(*(p_data+(height-j-3)*DibWidth+i+6))
				  +h[2][3]*(*(p_data+(height-j-3)*DibWidth+i+9))
				  +h[2][4]*(*(p_data+(height-j-3)*DibWidth+i+12))
                  //對應的第3行的值乘以矩陣對應值,再相加
			      +h[3][0]*(*(p_data+(height-j-4)*DibWidth+i))
			      +h[3][1]*(*(p_data+(height-j-4)*DibWidth+i+3))
				  +h[3][2]*(*(p_data+(height-j-4)*DibWidth+i+6))
				  +h[3][3]*(*(p_data+(height-j-4)*DibWidth+i+9))
				  +h[3][4]*(*(p_data+(height-j-4)*DibWidth+i+12))
                  //對應的第4行的值乘以矩陣對應值,再相加
			      +h[4][0]*(*(p_data+(height-j-5)*DibWidth+i))
				  +h[4][1]*(*(p_data+(height-j-5)*DibWidth+i+3))
				  +h[4][2]*(*(p_data+(height-j-5)*DibWidth+i+6))
				  +h[4][3]*(*(p_data+(height-j-5)*DibWidth+i+9))
				  +h[4][4]*(*(p_data+(height-j-5)*DibWidth+i+12));
                  //為了計算方便我們把除以35(矩陣權和)放在求總和之后
			*(p_temp+(height-j-3)*DibWidth+i+6)=abs(int(pby_pt/35));
		}
	}
	memcpy(p_data,p_temp,height*DibWidth);  // 復制處理后的圖像
	delete []p_temp;  //刪除暫時分配內存
}

/***************************************************************/
/*函數名稱:ShuiPingGROW()                                     */
/*函數類型:void                                               */
/*功能:使圖像水平增強。                                       */
/***************************************************************/
void MakeColorDib::ShuiPingGROW()   //水平增強
{
	BYTE *p_data;     //原圖數據區指針
	int wide,height,DibWidth;    //原圖長、寬、字節寬
	p_data=this->GetData ();   //取得原圖的數據區指針
    wide=this->GetWidth ();  //取得原圖的數據區寬度
    height=this->GetHeight ();   //取得原圖的數據區高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節數
	int h[3][1];//定義(3x1)矩陣
	h[0][0] = -1;  
	h[1][0] = 2; 
	h[2][0] = -1;
	BYTE *p_temp=new BYTE[height*DibWidth];	// 暫時分配內存,以保存新圖像
	for(int j=0;j<height-2;j++)	// 每行
	{
		for(int i=0;i<DibWidth-8;i++)	// 每列
		{
			int pby_pt=0;
			//對應的3行的值乘分別以矩陣對應值,再相加
			pby_pt= h[0][0]*(*(p_data+(height-j-1)*DibWidth+i))
				+h[1][0]*(*(p_data+(height-j-2)*DibWidth+i))
				+h[2][0]*(*(p_data+(height-j-3)*DibWidth+i));
			if(pby_pt>20)
				*(p_temp+(height-j-2)*DibWidth+i)=abs(pby_pt)+100;
			else
				*(p_temp+(height-j-2)*DibWidth+i)=abs(pby_pt);
		}
	}
	memcpy(p_data,p_temp,height*DibWidth);  // 復制處理后的圖像
    delete []p_temp;  //刪除暫時分配內存
}

/***************************************************************/
/*函數名稱:ChuiZhiGROW()                                      */
/*函數類型:void                                               */
/*功能:使圖像垂直增強。                                       */
/***************************************************************/
void MakeColorDib::ChuiZhiGROW()   //垂直增強
{
	BYTE *p_data;     //原圖數據區指針
	int wide,height,DibWidth;    //原圖長、寬、字節寬
	p_data=this->GetData ();   //取得原圖的數據區指針
    wide=this->GetWidth ();  //取得原圖的數據區寬度
    height=this->GetHeight ();   //取得原圖的數據區高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節數
	int h[1][3];//定義(1x3)矩陣
	h[0][0] = -1; 
	h[0][1] = 2;
	h[0][2] = -1;
	BYTE *p_temp=new BYTE[height*DibWidth];	// 暫時分配內存,以保存新圖像
	for(int j=0;j<height-2;j++)	// 每行
	{
		for(int i=0;i<DibWidth-8;i++)	// 每列
		{
			int pby_pt=0;
			//對應的第0行的值乘以矩陣對應值,再相加
			pby_pt= h[0][0]*(*(p_data+(height-j-1)*DibWidth+i))
				+h[0][1]*(*(p_data+(height-j-1)*DibWidth+i+3))
				+h[0][2]*(*(p_data+(height-j-1)*DibWidth+i+6));
			if(pby_pt>20)
				*(p_temp+(height-j-2)*DibWidth+i)=abs(pby_pt)+100;
			else
				*(p_temp+(height-j-2)*DibWidth+i)=abs(pby_pt);
		}
	}
	memcpy(p_data,p_temp,height*DibWidth);  // 復制處理后的圖像
	delete []p_temp;  //刪除暫時分配內存
}

/***************************************************************/
/*函數名稱:ShuangXiangGROW()                                  */
/*函數類型:void                                               */
/*功能:使圖像雙向增強。                                       */
/***************************************************************/
void MakeColorDib::ShuangXiangGROW()    //雙向增強
{
	BYTE *p_data;     //原圖數據區指針
	int wide,height,DibWidth;    //原圖長、寬、字節寬
	p_data=this->GetData ();   //取得原圖的數據區指針
    wide=this->GetWidth ();  //取得原圖的數據區寬度
    height=this->GetHeight ();   //取得原圖的數據區高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節數
	int h[3][3];//定義(3x3)矩陣
	h[0][0] = -1;  h[0][1] = -1; h[0][2] = -1;
	h[1][0] = -1;  h[1][1] =  8; h[1][2] = -1;
	h[2][0] = -1;  h[2][1] = -1; h[2][2] = -1; 
	BYTE *p_temp=new BYTE[height*DibWidth];	// 暫時分配內存,以保存新圖像
	for(int j=0;j<height-2;j++)	// 每行
	{	
		for(int i=0;i<DibWidth-8;i++)	// 每列
		{
			int pby_pt=0;
			//對應的第0行的值乘以矩陣對應值,再相加
			pby_pt= h[0][0]*(*(p_data+(height-j-1)*DibWidth+i))
				+h[0][1]*(*(p_data+(height-j-1)*DibWidth+i+3))
				+h[0][2]*(*(p_data+(height-j-1)*DibWidth+i+6))
				//對應的第1行的值乘以矩陣對應值,再相加
				+h[1][0]*(*(p_data+(height-j-2)*DibWidth+i))
				+h[1][1]*(*(p_data+(height-j-2)*DibWidth+i+3))
				+h[1][2]*(*(p_data+(height-j-2)*DibWidth+i+6))
				//對應的第2行的值乘以矩陣對應值,再相加
				+h[2][0]*(*(p_data+(height-j-3)*DibWidth+i))
				+h[2][1]*(*(p_data+(height-j-3)*DibWidth+i+3))
				+h[2][2]*(*(p_data+(height-j-3)*DibWidth+i+6));
			if(pby_pt>20)
				*(p_temp+(height-j-2)*DibWidth+i)=abs(pby_pt)+100;
			else
				*(p_temp+(height-j-2)*DibWidth+i)=abs(pby_pt);
		}
	}	
	memcpy(p_data,p_temp,height*DibWidth);  // 復制處理后的圖像
	delete []p_temp;  //刪除暫時分配內存
}

/***************************************************************/
/*函數名稱:Mosaic()                                           */
/*函數類型:void                                               */
/*功能:使圖像產生馬賽克效果。                                 */
/***************************************************************/
void MakeColorDib::Mosaic()    //馬賽克
{
	BYTE *p_data;     //原圖數據區指針
	int wide,height,DibWidth;    //原圖長、寬、字節寬
	p_data=this->GetData ();   //取得原圖的數據區指針
    wide=this->GetWidth ();  //取得原圖的數據區寬度
    height=this->GetHeight ();   //取得原圖的數據區高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節數
	BYTE *p_temp=new BYTE[height*DibWidth];	// 暫時分配內存,以保存新圖像
	for(int j=0;j<height-4;j+=5)	// 每行
	{	
	    for(int i=0;i<DibWidth-14;i+=15)	// 每列
		{   //對應周圍(5x5)矩陣藍色值求和平均
			int pby_pt=0;
			for(int m=0;m<5;m++)
				for(int n=0;n<15;n+=3)
				{   
					pby_pt+=*(p_data+(height-j-1-m)*DibWidth+i+n);
				}
				
			for(m=0;m<5;m++)
				for(int n=0;n<14;n+=3)
				{
					*(p_temp+(height-j-1-m)*DibWidth+i+n)=int(pby_pt/25);
				}	
            //對應周圍(5x5)矩陣綠色值求和平均
			pby_pt=0;
			for(m=0;m<5;m++)
				for(int n=0;n<15;n+=3)
				{
					pby_pt+=*(p_data+(height-j-1-m)*DibWidth+i+n+1);
				}
			for(m=0;m<5;m++)
				for(int n=0;n<14;n+=3)
				{
					*(p_temp+(height-j-1-m)*DibWidth+i+n+1)=int(pby_pt/25);
				}
            //對應周圍(5x5)矩陣紅色值求和平均
			pby_pt=0;
			for(m=0;m<5;m++)
				for(int n=0;n<15;n+=3)
				{
					pby_pt+=*(p_data+(height-j-1-m)*DibWidth+i+n+2);
				}
			for(m=0;m<5;m++)
				for(int n=0;n<14;n+=3)
				{
					*(p_temp+(height-j-1-m)*DibWidth+i+n+2)=int(pby_pt/25);
				}
		}			
	}
	memcpy(p_data,p_temp,height*DibWidth);  // 復制處理后的圖像
	delete []p_temp;  //刪除暫時分配內存
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人app下载| 国产成人精品一区二区三区四区| 久久午夜老司机| 久久久91精品国产一区二区三区| 日韩一区二区精品葵司在线| 欧美色成人综合| 欧美肥妇free| 久久久久久久av麻豆果冻| 久久综合色8888| 最新国产精品久久精品| 国产精品情趣视频| 亚洲自拍偷拍av| 青青草国产精品亚洲专区无| 激情国产一区二区| 91福利在线免费观看| 在线免费观看一区| 欧美一区二区三区四区高清| 久久蜜臀中文字幕| 亚洲综合在线电影| 国产精品正在播放| 欧美女孩性生活视频| 国产精品入口麻豆九色| 一区二区三区四区不卡视频| 美脚の诱脚舐め脚责91| 色婷婷综合激情| 国产精品污www在线观看| 视频一区二区三区在线| 成人综合在线网站| 欧美哺乳videos| 丝袜亚洲精品中文字幕一区| 成人av网站在线| 欧美国产一区二区在线观看| 亚洲va韩国va欧美va| 成人黄色国产精品网站大全在线免费观看| 在线视频综合导航| 亚洲色图视频网| av亚洲产国偷v产偷v自拍| 精品国产乱码久久久久久夜甘婷婷| 尤物视频一区二区| 99国产精品久久久久久久久久 | 国产亚洲成年网址在线观看| 亚洲精品自拍动漫在线| 国产福利91精品一区| 精品成人一区二区三区四区| 热久久久久久久| 欧美变态tickling挠脚心| 久久精品国产澳门| 久久婷婷国产综合精品青草| 国内不卡的二区三区中文字幕| 日韩欧美的一区| 国产专区综合网| 亚洲三级电影网站| 欧美在线视频日韩| 日韩av一级片| 久久久午夜精品理论片中文字幕| 国产成人自拍网| 亚洲欧美视频在线观看| 欧美高清视频一二三区| 久久国产尿小便嘘嘘尿| 国产精品视频在线看| 91国产成人在线| 国产在线观看免费一区| 亚洲日本va午夜在线电影| 欧美日韩国产一级二级| 国产激情精品久久久第一区二区| 国产精品免费av| 欧美xfplay| 欧美视频一区二| 波波电影院一区二区三区| 日本免费新一区视频| 一区二区中文字幕在线| 日韩欧美高清在线| 91久久精品午夜一区二区| 国产a精品视频| 国产一区在线观看麻豆| 舔着乳尖日韩一区| 亚洲综合另类小说| 亚洲天堂成人在线观看| 欧美国产日本视频| 久久精品欧美一区二区三区麻豆| 在线成人av网站| 91网站黄www| 在线免费观看日本欧美| 99re热视频精品| 色综合久久久久网| 色婷婷一区二区| 在线精品视频免费播放| 99精品久久免费看蜜臀剧情介绍| 国内精品伊人久久久久av影院| 麻豆91精品91久久久的内涵| 蜜桃久久av一区| 狠狠色狠狠色合久久伊人| 免费观看91视频大全| 九色|91porny| av在线不卡网| 欧美日韩一区二区欧美激情| 8x福利精品第一导航| 精品少妇一区二区三区免费观看 | 免费观看成人av| 国产成人在线电影| 99久久精品免费精品国产| 欧美系列亚洲系列| 精品国产免费视频| 亚洲色欲色欲www在线观看| 天天色图综合网| 99国产一区二区三精品乱码| 欧美视频自拍偷拍| 国产欧美日韩精品a在线观看| 亚洲人成在线观看一区二区| 日精品一区二区三区| 国产成人免费在线| 欧美一区二区三区视频在线| 国产亚洲视频系列| 日韩精品视频网| 色综合久久久网| 中文成人综合网| 久久成人av少妇免费| 欧美亚洲国产一区二区三区va | 一本大道久久a久久综合婷婷| 欧美一区三区二区| 亚洲电影你懂得| 欧美日本免费一区二区三区| 国产欧美日韩精品在线| 国内精品嫩模私拍在线| 欧美体内she精高潮| 亚洲自拍偷拍网站| 色婷婷综合久久久| 一区二区三区四区视频精品免费| 韩国成人福利片在线播放| 日韩视频国产视频| 美女在线一区二区| 欧美xfplay| 成人中文字幕合集| 国产精品成人一区二区三区夜夜夜| 国产精品综合一区二区三区| 欧美xxx久久| 大陆成人av片| 亚洲欧美另类小说视频| 色av成人天堂桃色av| 亚洲一级二级三级| 欧美精品视频www在线观看| 老汉av免费一区二区三区| 久久久久久久综合色一本| 国产成人av电影在线| 亚洲美女偷拍久久| 久久综合九色欧美综合狠狠| 成人午夜免费电影| 天天av天天翘天天综合网色鬼国产| 91麻豆精品国产| 国产白丝网站精品污在线入口| 亚洲天堂a在线| 日韩欧美资源站| 色婷婷亚洲婷婷| 成人精品视频一区二区三区 | 日本黄色一区二区| 蜜臀久久99精品久久久画质超高清| 国产欧美日韩三级| 欧美高清你懂得| 99re成人在线| 国产精品一区三区| 日本成人在线看| 亚洲国产成人va在线观看天堂| 久久久久国产精品厨房| 在线播放一区二区三区| 97久久超碰国产精品| 国产91精品免费| 国产传媒久久文化传媒| 丝袜美腿亚洲色图| 亚洲妇女屁股眼交7| 一区二区三区欧美日韩| 国产日韩精品视频一区| 久久亚洲精华国产精华液| 91精品国产乱码| 日韩欧美中文字幕精品| 91精品国产综合久久精品图片 | 偷拍一区二区三区四区| 亚洲精品ww久久久久久p站 | 成人av资源站| www.在线欧美| 在线免费观看日韩欧美| 欧美优质美女网站| 欧美日本不卡视频| 欧美sm美女调教| 国产精品天干天干在观线| 中文字幕不卡一区| 亚洲综合在线免费观看| 亚洲永久精品大片| 免费高清在线一区| 国产成人夜色高潮福利影视| 春色校园综合激情亚洲| 91久久精品国产91性色tv| 欧美精品高清视频| 中文字幕成人网| 亚洲已满18点击进入久久| 午夜精品久久久久久久99樱桃| 国产酒店精品激情| 欧美视频一区在线观看| 国产亚洲成aⅴ人片在线观看 | 国产精品国产a级| 国产精品久久久久一区二区三区 |