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

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

?? makecolordib.cpp

?? 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;  //刪除暫時分配內(nèi)存
}

/***************************************************************/
/*函數(shù)名稱:LowLVBObig()                                       */
/*函數(shù)類型:void                                               */
/*功能:實現(xiàn)圖像低通濾波(5x5)。                                */
/***************************************************************/
void MakeColorDib::LowLVBObig()   //低通濾波(5x5)
{
	BYTE *p_data;     //原圖數(shù)據(jù)區(qū)指針
	int wide,height,DibWidth;    //原圖長、寬、字節(jié)寬
	p_data=this->GetData ();   //取得原圖的數(shù)據(jù)區(qū)指針
    wide=this->GetWidth ();  //取得原圖的數(shù)據(jù)區(qū)寬度
    height=this->GetHeight ();   //取得原圖的數(shù)據(jù)區(qū)高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節(jié)數(shù)
	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];	// 暫時分配內(nèi)存,以保存新圖像
	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(矩陣權(quán)和)放在求總和之后
			*(p_temp+(height-j-3)*DibWidth+i+6)=abs(int(pby_pt/35));
		}
	}
	memcpy(p_data,p_temp,height*DibWidth);  // 復制處理后的圖像
	delete []p_temp;  //刪除暫時分配內(nèi)存
}

/***************************************************************/
/*函數(shù)名稱:ShuiPingGROW()                                     */
/*函數(shù)類型:void                                               */
/*功能:使圖像水平增強。                                       */
/***************************************************************/
void MakeColorDib::ShuiPingGROW()   //水平增強
{
	BYTE *p_data;     //原圖數(shù)據(jù)區(qū)指針
	int wide,height,DibWidth;    //原圖長、寬、字節(jié)寬
	p_data=this->GetData ();   //取得原圖的數(shù)據(jù)區(qū)指針
    wide=this->GetWidth ();  //取得原圖的數(shù)據(jù)區(qū)寬度
    height=this->GetHeight ();   //取得原圖的數(shù)據(jù)區(qū)高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節(jié)數(shù)
	int h[3][1];//定義(3x1)矩陣
	h[0][0] = -1;  
	h[1][0] = 2; 
	h[2][0] = -1;
	BYTE *p_temp=new BYTE[height*DibWidth];	// 暫時分配內(nèi)存,以保存新圖像
	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;  //刪除暫時分配內(nèi)存
}

/***************************************************************/
/*函數(shù)名稱:ChuiZhiGROW()                                      */
/*函數(shù)類型:void                                               */
/*功能:使圖像垂直增強。                                       */
/***************************************************************/
void MakeColorDib::ChuiZhiGROW()   //垂直增強
{
	BYTE *p_data;     //原圖數(shù)據(jù)區(qū)指針
	int wide,height,DibWidth;    //原圖長、寬、字節(jié)寬
	p_data=this->GetData ();   //取得原圖的數(shù)據(jù)區(qū)指針
    wide=this->GetWidth ();  //取得原圖的數(shù)據(jù)區(qū)寬度
    height=this->GetHeight ();   //取得原圖的數(shù)據(jù)區(qū)高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節(jié)數(shù)
	int h[1][3];//定義(1x3)矩陣
	h[0][0] = -1; 
	h[0][1] = 2;
	h[0][2] = -1;
	BYTE *p_temp=new BYTE[height*DibWidth];	// 暫時分配內(nèi)存,以保存新圖像
	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;  //刪除暫時分配內(nèi)存
}

/***************************************************************/
/*函數(shù)名稱:ShuangXiangGROW()                                  */
/*函數(shù)類型:void                                               */
/*功能:使圖像雙向增強。                                       */
/***************************************************************/
void MakeColorDib::ShuangXiangGROW()    //雙向增強
{
	BYTE *p_data;     //原圖數(shù)據(jù)區(qū)指針
	int wide,height,DibWidth;    //原圖長、寬、字節(jié)寬
	p_data=this->GetData ();   //取得原圖的數(shù)據(jù)區(qū)指針
    wide=this->GetWidth ();  //取得原圖的數(shù)據(jù)區(qū)寬度
    height=this->GetHeight ();   //取得原圖的數(shù)據(jù)區(qū)高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節(jié)數(shù)
	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];	// 暫時分配內(nèi)存,以保存新圖像
	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;  //刪除暫時分配內(nèi)存
}

/***************************************************************/
/*函數(shù)名稱:Mosaic()                                           */
/*函數(shù)類型:void                                               */
/*功能:使圖像產(chǎn)生馬賽克效果。                                 */
/***************************************************************/
void MakeColorDib::Mosaic()    //馬賽克
{
	BYTE *p_data;     //原圖數(shù)據(jù)區(qū)指針
	int wide,height,DibWidth;    //原圖長、寬、字節(jié)寬
	p_data=this->GetData ();   //取得原圖的數(shù)據(jù)區(qū)指針
    wide=this->GetWidth ();  //取得原圖的數(shù)據(jù)區(qū)寬度
    height=this->GetHeight ();   //取得原圖的數(shù)據(jù)區(qū)高度
	DibWidth=this->GetDibWidthBytes();   //取得原圖的每行字節(jié)數(shù)
	BYTE *p_temp=new BYTE[height*DibWidth];	// 暫時分配內(nèi)存,以保存新圖像
	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;  //刪除暫時分配內(nèi)存
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品一区二| 欧洲精品在线观看| 精品福利二区三区| 久久精品国产久精国产爱| 欧美一区二区在线播放| 久久激情综合网| 久久蜜臀中文字幕| 91视频免费播放| 亚洲国产你懂的| 日韩视频免费观看高清完整版| 狂野欧美性猛交blacked| 久久久www免费人成精品| eeuss鲁片一区二区三区 | 不卡大黄网站免费看| 亚洲欧洲日韩女同| 欧美日韩亚洲另类| 精品一区二区在线看| 国产欧美日韩综合精品一区二区| 91在线观看成人| 亚洲成人免费电影| 精品国精品国产尤物美女| 国产成人三级在线观看| 亚洲激情图片qvod| 欧美videofree性高清杂交| 成人国产电影网| 日韩精品一区第一页| 国产日韩欧美不卡| 欧美视频一二三区| 国产一区欧美二区| 亚洲午夜久久久久中文字幕久| 精品欧美一区二区在线观看| 99精品欧美一区二区三区小说 | 国产精品日日摸夜夜摸av| 日本久久一区二区| 精品一区二区三区免费观看| 最近日韩中文字幕| 精品欧美一区二区久久| 91久久精品网| 东方欧美亚洲色图在线| 丝袜美腿亚洲色图| 亚洲手机成人高清视频| 久久色在线观看| 欧美日韩国产影片| 大胆欧美人体老妇| 久久黄色级2电影| 亚洲一区二区美女| 久久国产精品免费| 欧美在线观看你懂的| 亚洲一卡二卡三卡四卡五卡| 日韩一区二区视频在线观看| 99精品欧美一区| 国产一区二区久久| 五月激情六月综合| 亚洲欧美国产三级| 国产色一区二区| 成人午夜电影久久影院| 久久69国产一区二区蜜臀| 国产资源精品在线观看| 成人国产精品免费网站| 日本乱码高清不卡字幕| 91麻豆精品国产91久久久使用方法| 欧美一区二区三区四区高清| 精品少妇一区二区| 国产精品久久久99| 亚洲专区一二三| 久久99久久久欧美国产| 成人午夜视频在线观看| 91福利精品第一导航| 日韩欧美一区电影| 中文字幕国产一区| 亚洲电影一区二区三区| 黄色小说综合网站| 色婷婷av一区二区三区大白胸 | 国产精选一区二区三区| 99久久国产综合精品女不卡 | 国产亚洲欧美在线| |精品福利一区二区三区| 亚洲v日本v欧美v久久精品| 国内精品免费**视频| 色婷婷精品大在线视频| 精品成人一区二区| 亚洲精品午夜久久久| 久久国产日韩欧美精品| 91在线观看美女| 欧美videos大乳护士334| 亚洲男人的天堂一区二区| 蜜桃av噜噜一区| 一本高清dvd不卡在线观看| 精品日韩在线一区| 亚洲综合清纯丝袜自拍| 国产精品99精品久久免费| 欧美日韩中文字幕一区| 欧美国产日韩精品免费观看| 天天综合色天天综合色h| 成人性视频网站| 日韩欧美精品在线视频| 亚洲男人电影天堂| 国产suv精品一区二区三区| 欧美精品日韩一本| 亚洲欧美视频在线观看| 国产成人日日夜夜| 日韩精品一区国产麻豆| 一区二区高清在线| 成人精品高清在线| 欧美精品一区二区三区蜜桃视频| 亚洲午夜一区二区| 99精品在线观看视频| 国产日韩三级在线| 激情文学综合丁香| 在线播放欧美女士性生活| 亚洲人午夜精品天堂一二香蕉| 国产成人综合精品三级| 欧美成人伊人久久综合网| 午夜视频久久久久久| 97se亚洲国产综合在线| 久久精品夜色噜噜亚洲aⅴ| 日本麻豆一区二区三区视频| 在线日韩一区二区| 亚洲视频网在线直播| 成人黄色软件下载| 国产精品丝袜在线| 福利一区二区在线观看| 久久网站最新地址| 激情六月婷婷久久| 精品999久久久| 精品午夜久久福利影院| 日本一区二区免费在线| 国产一二精品视频| 久久久夜色精品亚洲| 国产精品综合久久| 久久久精品国产99久久精品芒果| 另类调教123区| 日韩精品资源二区在线| 美国av一区二区| 精品美女在线播放| 国产精品77777竹菊影视小说| 久久蜜桃香蕉精品一区二区三区| 国产综合久久久久久鬼色| 久久久久久久久伊人| 国产电影一区在线| 国产精品不卡在线观看| 91在线视频免费观看| 一区二区三区在线视频免费| 欧美性受xxxx| 日本视频一区二区| 精品欧美一区二区久久| 国产成人亚洲综合a∨婷婷| 亚洲国产成人私人影院tom| 成人av电影在线网| 亚洲精品一二三| 欧美日韩美女一区二区| 日欧美一区二区| 久久午夜羞羞影院免费观看| 懂色av中文一区二区三区| **性色生活片久久毛片| 欧美综合一区二区| 蜜桃免费网站一区二区三区| 国产色婷婷亚洲99精品小说| 99视频一区二区| 五月激情丁香一区二区三区| 日韩精品中文字幕一区二区三区| 国产91精品一区二区| 亚洲激情自拍偷拍| 欧美一区三区二区| 高清不卡一区二区在线| 亚洲伊人伊色伊影伊综合网| 欧美一卡2卡3卡4卡| 国产精品888| 亚洲图片欧美综合| 日韩免费高清av| 成人一级视频在线观看| 亚洲一区二区三区中文字幕在线| 日韩女优电影在线观看| 91丨porny丨在线| 免费观看日韩电影| 亚洲色图清纯唯美| 欧美一区二区性放荡片| 成人一区在线观看| 午夜精品视频在线观看| 国产亚洲1区2区3区| 欧美视频在线不卡| 国产伦精品一区二区三区免费迷| 一区二区在线电影| 久久一留热品黄| 欧美色图一区二区三区| 韩国三级电影一区二区| 一二三区精品福利视频| 国产欧美日韩激情| 欧美高清激情brazzers| av日韩在线网站| 九九精品一区二区| 一区二区三区四区中文字幕| 精品国产欧美一区二区| 色婷婷国产精品| 粉嫩久久99精品久久久久久夜| 免费高清在线视频一区·| 一区二区三区中文在线| 日本一二三四高清不卡| 精品成人私密视频| 欧美精品久久天天躁|