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

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

?? ch1_1view.cpp

?? vc++數字圖像處理 ,是一本很不錯的介紹數字圖像方面的書籍,這里有本書的全部源碼
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
		return;	}		// 獲取用戶設定的平移量	fXZoomRatio = dlgPara.m_XZoom;	fYZoomRatio = dlgPara.m_YZoom;		// 刪除對話框	delete dlgPara;			// 創建新DIB	HDIB hNewDIB = NULL;		// 更改光標形狀	BeginWaitCursor();		// 調用ZoomDIB()函數轉置DIB	hNewDIB = (HDIB) ZoomDIB(lpDIB, fXZoomRatio, fYZoomRatio);		// 判斷縮放是否成功	if (hNewDIB != NULL)	{				// 替換DIB,同時釋放舊DIB對象		pDoc->ReplaceHDIB(hNewDIB);		// 更新DIB大小和調色板		pDoc->InitDIBData();				// 設置臟標記		pDoc->SetModifiedFlag(TRUE);				// 重新設置滾動視圖大小		SetScrollSizes(MM_TEXT, pDoc->GetDocSize());		// 更新視圖		pDoc->UpdateAllViews(NULL);	}	else	{		// 提示用戶		MessageBox("分配內存失敗!", "系統提示" , MB_ICONINFORMATION | MB_OK);	}		// 解除鎖定	::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());	// 恢復光標	EndWaitCursor();	}void CCh1_1View::OnGeomRota() {	// 圖像旋轉	// 獲取文檔	CCh1_1Doc* pDoc = GetDocument();		// 指向DIB的指針	LPSTR lpDIB;		// 鎖定DIB	lpDIB = (LPSTR) ::GlobalLock((HGLOBAL) pDoc->GetHDIB());		// 判斷是否是8-bpp位圖(這里為了方便,只處理8-bpp位圖的旋轉,其它的可以類推)	if (::DIBNumColors(lpDIB) != 256)	{		// 提示用戶		MessageBox("目前只支持256色位圖的旋轉!", "系統提示" , MB_ICONINFORMATION | MB_OK);		// 解除鎖定		::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());				// 返回		return;	}		// 縮放比率	int iRotateAngle;		// 創建對話框	CDlgGeoRota dlgPara;		// 初始化變量值	dlgPara.m_iRotateAngle = 90;		// 顯示對話框,提示用戶設定旋轉角度	if (dlgPara.DoModal() != IDOK)	{		// 返回		return;	}		// 獲取用戶設定的平移量	iRotateAngle = dlgPara.m_iRotateAngle;		// 刪除對話框	delete dlgPara;				// 創建新DIB	HDIB hNewDIB = NULL;		// 更改光標形狀	BeginWaitCursor();		// 調用RotateDIB()函數旋轉DIB	hNewDIB = (HDIB) RotateDIB(lpDIB, iRotateAngle);		// 判斷旋轉是否成功	if (hNewDIB != NULL)	{				// 替換DIB,同時釋放舊DIB對象		pDoc->ReplaceHDIB(hNewDIB);		// 更新DIB大小和調色板		pDoc->InitDIBData();				// 設置臟標記		pDoc->SetModifiedFlag(TRUE);				// 重新設置滾動視圖大小		SetScrollSizes(MM_TEXT, pDoc->GetDocSize());				// 更新視圖		pDoc->UpdateAllViews(NULL);	}	else	{		// 提示用戶		MessageBox("分配內存失敗!", "系統提示" , MB_ICONINFORMATION | MB_OK);	}		// 解除鎖定	::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());	// 恢復光標	EndWaitCursor();}////////////////////////////////////////////////////////////////////////////////////////  圖像增強//void CCh1_1View::OnEnhaSmooth() {	// 圖像平滑		// 獲取文檔	CCh1_1Doc* pDoc = GetDocument();		// 指向DIB的指針	LPSTR	lpDIB;		// 指向DIB象素指針	LPSTR   lpDIBBits;		// 模板高度	int		iTempH;		// 模板寬度	int		iTempW;		// 模板系數	FLOAT	fTempC;		// 模板中心元素X坐標	int		iTempMX;		// 模板中心元素Y坐標	int		iTempMY;		// 模板元素數組	FLOAT	aValue[25];		// 鎖定DIB	lpDIB = (LPSTR) ::GlobalLock((HGLOBAL) pDoc->GetHDIB());	// 找到DIB圖像象素起始位置	lpDIBBits = ::FindDIBBits(lpDIB);		// 判斷是否是8-bpp位圖(這里為了方便,只處理8-bpp位圖的平滑,其它的可以類推)	if (::DIBNumColors(lpDIB) != 256)	{		// 提示用戶		MessageBox("目前只支持256色位圖的平滑!", "系統提示" , 			MB_ICONINFORMATION | MB_OK);				// 解除鎖定		::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());				// 返回		return;	}		// 創建對話框	CDlgSmooth dlgPara;		// 給模板數組賦初值(為平均模板)	aValue[0] = 1.0;	aValue[1] = 1.0;	aValue[2] = 1.0;	aValue[3] = 0.0;	aValue[4] = 0.0;	aValue[5] = 1.0;	aValue[6] = 1.0;	aValue[7] = 1.0;	aValue[8] = 0.0;	aValue[9] = 0.0;	aValue[10] = 1.0;	aValue[11] = 1.0;	aValue[12] = 1.0;	aValue[13] = 0.0;	aValue[14] = 0.0;	aValue[15] = 0.0;	aValue[16] = 0.0;	aValue[17] = 0.0;	aValue[18] = 0.0;	aValue[19] = 0.0;	aValue[20] = 0.0;	aValue[21] = 0.0;	aValue[22] = 0.0;	aValue[23] = 0.0;	aValue[24] = 0.0;		// 初始化對話框變量值	dlgPara.m_intType = 0;	dlgPara.m_iTempH  = 3;	dlgPara.m_iTempW  = 3;	dlgPara.m_iTempMX = 1;	dlgPara.m_iTempMY = 1;	dlgPara.m_fTempC  = (FLOAT) (1.0 / 9.0);	dlgPara.m_fpArray = aValue;		// 顯示對話框,提示用戶設定平移量	if (dlgPara.DoModal() != IDOK)	{		// 返回		return;	}		// 獲取用戶設定的平移量	iTempH  = dlgPara.m_iTempH;	iTempW  = dlgPara.m_iTempW;	iTempMX = dlgPara.m_iTempMX;	iTempMY = dlgPara.m_iTempMY;	fTempC  = dlgPara.m_fTempC;		// 刪除對話框	delete dlgPara;			// 更改光標形狀	BeginWaitCursor();		// 調用Template()函數平滑DIB	if (::Template(lpDIBBits, ::DIBWidth(lpDIB), ::DIBHeight(lpDIB), 		  iTempH, iTempW, iTempMX, iTempMY, aValue, fTempC))	{				// 設置臟標記		pDoc->SetModifiedFlag(TRUE);		// 更新視圖		pDoc->UpdateAllViews(NULL);	}	else	{		// 提示用戶		MessageBox("分配內存失敗!", "系統提示" , MB_ICONINFORMATION | MB_OK);	}		// 解除鎖定	::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());	// 恢復光標	EndWaitCursor();	}void CCh1_1View::OnENHAMidianF() {	// 中值濾波		// 獲取文檔	CCh1_1Doc* pDoc = GetDocument();		// 指向DIB的指針	LPSTR	lpDIB;		// 指向DIB象素指針	LPSTR   lpDIBBits;		// 濾波器的高度	int iFilterH;		// 濾波器的寬度	int iFilterW;		// 中心元素的X坐標	int iFilterMX;		// 中心元素的Y坐標	int iFilterMY;		// 鎖定DIB	lpDIB = (LPSTR) ::GlobalLock((HGLOBAL) pDoc->GetHDIB());	// 找到DIB圖像象素起始位置	lpDIBBits = ::FindDIBBits(lpDIB);		// 判斷是否是8-bpp位圖(這里為了方便,只處理8-bpp位圖的中值濾波,其它的可以類推)	if (::DIBNumColors(lpDIB) != 256)	{		// 提示用戶		MessageBox("目前只支持256色位圖的中值濾波!", "系統提示" ,			MB_ICONINFORMATION | MB_OK);				// 解除鎖定		::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());				// 返回		return;	}		// 創建對話框	CDlgMidFilter dlgPara;		// 初始化變量值	dlgPara.m_iFilterType = 0;	dlgPara.m_iFilterH = 3;	dlgPara.m_iFilterW = 1;	dlgPara.m_iFilterMX = 0;	dlgPara.m_iFilterMY = 1;		// 顯示對話框,提示用戶設定平移量	if (dlgPara.DoModal() != IDOK)	{		// 返回		return;	}		// 獲取用戶的設定	iFilterH = dlgPara.m_iFilterH;	iFilterW = dlgPara.m_iFilterW;	iFilterMX = dlgPara.m_iFilterMX;	iFilterMY = dlgPara.m_iFilterMY;		// 刪除對話框	delete dlgPara;			// 更改光標形狀	BeginWaitCursor();		// 調用MedianFilter()函數中值濾波	if (::MedianFilter(lpDIBBits, ::DIBWidth(lpDIB), ::DIBHeight(lpDIB), 		  iFilterH, iFilterW, iFilterMX, iFilterMY))	{				// 設置臟標記		pDoc->SetModifiedFlag(TRUE);		// 更新視圖		pDoc->UpdateAllViews(NULL);	}	else	{		// 提示用戶		MessageBox("分配內存失敗!", "系統提示" , MB_ICONINFORMATION | MB_OK);	}		// 解除鎖定	::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());	// 恢復光標	EndWaitCursor();	}void CCh1_1View::OnEnhaGradsharp() {	// 梯度銳化		// 獲取文檔	CCh1_1Doc* pDoc = GetDocument();		// 指向DIB的指針	LPSTR lpDIB;		// 指向DIB象素指針	LPSTR    lpDIBBits;		// 鎖定DIB	lpDIB = (LPSTR) ::GlobalLock((HGLOBAL) pDoc->GetHDIB());	// 找到DIB圖像象素起始位置	lpDIBBits = ::FindDIBBits(lpDIB);			// 判斷是否是8-bpp位圖(這里為了方便,只處理8-bpp位圖的梯度銳化,其它的可以類推)	if (::DIBNumColors(lpDIB) != 256)	{		// 提示用戶		MessageBox("目前只支持256色位圖的梯度銳化!", "系統提示" , 			MB_ICONINFORMATION | MB_OK);				// 解除鎖定		::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());				// 返回		return;	}		// 閾值	BYTE	bThre;		// 創建對話框	CDlgSharpThre dlgPara;		// 初始化變量值	dlgPara.m_bThre = 10;		// 提示用戶輸入閾值	if (dlgPara.DoModal() != IDOK)	{		// 返回		return;	}		// 獲取用戶的設定	bThre = dlgPara.m_bThre;		// 刪除對話框	delete dlgPara;			// 更改光標形狀	BeginWaitCursor();		// 調用GradSharp()函數進行梯度板銳化	if (::GradSharp(lpDIBBits, ::DIBWidth(lpDIB), ::DIBHeight(lpDIB), bThre))	{				// 設置臟標記		pDoc->SetModifiedFlag(TRUE);		// 更新視圖		pDoc->UpdateAllViews(NULL);	}	else	{		// 提示用戶		MessageBox("分配內存失敗!", "系統提示" , MB_ICONINFORMATION | MB_OK);	}		// 解除鎖定	::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());	// 恢復光標	EndWaitCursor();	}void CCh1_1View::OnEnhaSharp() {	// 圖像銳化		// 獲取文檔	CCh1_1Doc* pDoc = GetDocument();		// 指向DIB的指針	LPSTR lpDIB;		// 指向DIB象素指針	LPSTR    lpDIBBits;		// 模板高度	int		iTempH;		// 模板寬度	int		iTempW;		// 模板系數	FLOAT	fTempC;		// 模板中心元素X坐標	int		iTempMX;		// 模板中心元素Y坐標	int		iTempMY;		// 模板元素數組	FLOAT	aValue[9];		// 鎖定DIB	lpDIB = (LPSTR) ::GlobalLock((HGLOBAL) pDoc->GetHDIB());	// 找到DIB圖像象素起始位置	lpDIBBits = ::FindDIBBits(lpDIB);			// 判斷是否是8-bpp位圖(這里為了方便,只處理8-bpp位圖的銳化,其它的可以類推)	if (::DIBNumColors(lpDIB) != 256)	{		// 提示用戶		MessageBox("目前只支持256色位圖的銳化!", "系統提示" , 			MB_ICONINFORMATION | MB_OK);				// 解除鎖定		::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());				// 返回		return;	}		// 更改光標形狀	BeginWaitCursor();		// 設置拉普拉斯模板參數	iTempW = 3;	iTempH = 3;	fTempC = 1.0;	iTempMX = 1;	iTempMY = 1;	aValue[0] = -1.0;	aValue[1] = -1.0;	aValue[2] = -1.0;	aValue[3] = -1.0;	aValue[4] =  9.0;	aValue[5] = -1.0;	aValue[6] = -1.0;	aValue[7] = -1.0;	aValue[8] = -1.0;		// 調用Template()函數用拉普拉斯模板銳化DIB	if (::Template(lpDIBBits, ::DIBWidth(lpDIB), ::DIBHeight(lpDIB), 		  iTempH, iTempW, iTempMX, iTempMY, aValue, fTempC))	{				// 設置臟標記		pDoc->SetModifiedFlag(TRUE);		// 更新視圖		pDoc->UpdateAllViews(NULL);	}	else	{		// 提示用戶		MessageBox("分配內存失敗!", "系統提示" , MB_ICONINFORMATION | MB_OK);	}		// 解除鎖定	::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());	// 恢復光標	EndWaitCursor();}void CCh1_1View::OnEnhaColor() {	// 偽彩色編碼		// 獲取文檔	CCh1_1Doc* pDoc = GetDocument();		// 保存用戶選擇的偽彩色編碼表索引	int		nColor;		// 指向DIB的指針	LPSTR	lpDIB;		// 鎖定DIB	lpDIB = (LPSTR) ::GlobalLock((HGLOBAL) pDoc->GetHDIB());		// 判斷是否是8-bpp位圖(只處理256色位圖的偽彩色變換,其它的可以類推)	if (::DIBNumColors(lpDIB) != 256)	{		// 提示用戶		MessageBox("目前只支持256色位圖的偽彩色變換!", "系統提示" , 			MB_ICONINFORMATION | MB_OK);				// 解除鎖定		::GlobalUnlock((HGLOBAL) pDoc->GetHDIB());				// 返回		return;	}		// 參數對話框	CDlgColor dlgPara;		// 初始化變量值	if (pDoc->m_nColorIndex >= 0)	{		// 初始選中當前的偽彩色		dlgPara.m_nColor = pDoc->m_nColorIndex;	}	else	{		// 初始選中灰度偽彩色編碼表		dlgPara.m_nColor = 0;	}		// 指向名稱數組的指針	dlgPara.m_lpColorName = (LPSTR) ColorScaleName;		// 偽彩色編碼數目	dlgPara.m_nColorCount = COLOR_SCALE_COUNT;		// 名稱字符串長度	dlgPara.m_nNameLen = sizeof(ColorScaleName) / COLOR_SCALE_COUNT;		// 顯示對話框,提示用戶設定平移量	if (dlgPara.DoModal() != IDOK)	{		// 返回		return;	}		// 獲取用戶的設定	nColor = dlgPara.m_nColor;		// 刪除對話框	delete dlgPara;			// 更改光標形狀	BeginWaitCursor();	

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品一区第一页| 久久精品亚洲麻豆av一区二区| 日本成人在线电影网| 欧美激情综合在线| 欧美日韩精品是欧美日韩精品| 精品一区二区在线免费观看| 一区二区三区国产精华| 久久精品综合网| 欧美一卡二卡在线| 91丨九色丨黑人外教| 国产一区二区三区精品欧美日韩一区二区三区| 亚洲精品一二三| 国产日本亚洲高清| 日韩免费看的电影| 欧美日韩国产乱码电影| 91丨九色丨蝌蚪丨老版| 高清在线观看日韩| 九九九精品视频| 日本成人超碰在线观看| 亚洲激情网站免费观看| 日av在线不卡| 国产精品亲子伦对白| 26uuu另类欧美| 欧美成人激情免费网| 欧美卡1卡2卡| 欧美日韩综合在线| 欧洲av在线精品| 91丨porny丨首页| heyzo一本久久综合| 成人av电影在线| 国产一区二区视频在线播放| 99国产精品一区| 国产91在线观看丝袜| 久久草av在线| 蜜桃一区二区三区在线| 日韩不卡手机在线v区| 亚洲成人av在线电影| 夜夜操天天操亚洲| 亚洲在线一区二区三区| 亚洲一区二区精品3399| 亚洲黄网站在线观看| 亚洲美女免费视频| 亚洲综合一区二区三区| 亚洲国产日韩精品| 日韩黄色片在线观看| 日本成人在线网站| 精品亚洲porn| 国产成人一级电影| 成人av网站在线| 91在线观看一区二区| 一本色道久久综合精品竹菊| 色视频成人在线观看免| 在线看日韩精品电影| 欧美精品日日鲁夜夜添| 日韩女优毛片在线| 久久精品无码一区二区三区| 国产精品少妇自拍| 亚洲激情av在线| 日本vs亚洲vs韩国一区三区二区 | 成人一级视频在线观看| 成人高清在线视频| 色久优优欧美色久优优| 欧美日韩精品一区二区三区蜜桃 | 国产人成亚洲第一网站在线播放 | 国产91精品精华液一区二区三区 | 欧美久久久久久久久中文字幕| 6080亚洲精品一区二区| 亚洲精品一区二区三区99| 国产精品理论在线观看| 亚洲资源中文字幕| 久草在线在线精品观看| 99久精品国产| 欧美浪妇xxxx高跟鞋交| 国产日产亚洲精品系列| 亚洲天堂精品在线观看| 免费成人在线网站| av电影天堂一区二区在线观看| 欧美剧在线免费观看网站 | 欧美日韩精品高清| 91精品国产黑色紧身裤美女| 国产免费观看久久| 三级影片在线观看欧美日韩一区二区| 精品系列免费在线观看| 一本色道久久综合亚洲aⅴ蜜桃 | 国产真实精品久久二三区| www.久久精品| 欧美一区二区三区在线观看视频| 久久久99精品久久| 亚洲成人先锋电影| 不卡视频免费播放| 日韩欧美一区二区免费| 7777精品伊人久久久大香线蕉完整版 | 欧美精选午夜久久久乱码6080| 亚洲精品在线观看视频| 一区二区三区在线免费播放| 乱一区二区av| 在线欧美一区二区| 日本一区二区视频在线观看| 日韩福利电影在线| 欧美最猛黑人xxxxx猛交| 久久久国产一区二区三区四区小说| 一区二区三区小说| 成人午夜私人影院| 精品国产91亚洲一区二区三区婷婷| 亚洲欧美日本在线| 高清不卡一区二区在线| 日韩欧美国产电影| 香港成人在线视频| 91成人在线免费观看| 国产精品美日韩| 国产麻豆精品视频| 日韩免费看的电影| 日本不卡123| 欧美日韩www| 亚洲激情五月婷婷| 色综合天天天天做夜夜夜夜做| 久久这里只有精品视频网| 丝袜亚洲精品中文字幕一区| 在线观看免费亚洲| 亚洲精品中文在线| 91香蕉视频mp4| 中文字幕国产精品一区二区| 国产一区二区视频在线播放| 日韩免费观看高清完整版在线观看 | 中文字幕精品一区二区三区精品 | 成人高清视频免费观看| 久久精品在这里| 国产一区二区精品在线观看| 精品国产网站在线观看| 另类小说色综合网站| 欧美一区二区啪啪| 日本女优在线视频一区二区 | 亚洲天堂中文字幕| 99精品久久只有精品| 中文字幕五月欧美| av成人免费在线| 一区二区三区不卡视频在线观看| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 日韩高清一级片| 欧美刺激脚交jootjob| 久久国产精品第一页| 欧洲av在线精品| 亚洲成av人**亚洲成av**| 欧美色偷偷大香| 日韩精品午夜视频| 欧美大片在线观看一区二区| 激情欧美日韩一区二区| 欧美韩日一区二区三区| 99热这里都是精品| 亚洲综合清纯丝袜自拍| 欧美日韩国产高清一区二区三区| 免费黄网站欧美| 国产亚洲精品7777| 一本色道久久综合精品竹菊| 亚洲成a人片在线不卡一二三区| 欧美久久久久中文字幕| 国产一区二区三区免费| 国产精品理伦片| 欧美日免费三级在线| 狠狠色综合播放一区二区| 国产精品水嫩水嫩| 精品视频一区三区九区| 国模套图日韩精品一区二区| 中文字幕在线观看不卡| 欧美日韩一区二区三区在线| 久热成人在线视频| 国产精品高清亚洲| 欧美日本韩国一区二区三区视频| 美女看a上一区| 中文字幕在线不卡| 制服丝袜国产精品| 国产成人免费网站| 亚洲成人av一区二区| 久久精品人人做人人爽人人| 色欧美日韩亚洲| 久久超级碰视频| 夜夜精品视频一区二区| 久久精品夜色噜噜亚洲aⅴ| 欧美少妇bbb| 成人综合激情网| 日韩高清在线不卡| 亚洲丝袜自拍清纯另类| 日韩精品一区二区三区蜜臀| 91麻豆国产精品久久| 精品在线一区二区三区| 亚洲精品欧美在线| 久久五月婷婷丁香社区| 欧美日精品一区视频| www.亚洲精品| 国产一区视频在线看| 天堂资源在线中文精品| 亚洲欧美一区二区视频| 欧美不卡在线视频| 欧美日韩一二三区| 99亚偷拍自图区亚洲| 国产九色sp调教91| 日本成人超碰在线观看| 亚洲一区二区三区国产| 国产精品进线69影院| 久久综合色之久久综合|