(完整版)數(shù)字圖像處理C++MFC_第1頁
(完整版)數(shù)字圖像處理C++MFC_第2頁
(完整版)數(shù)字圖像處理C++MFC_第3頁
(完整版)數(shù)字圖像處理C++MFC_第4頁
(完整版)數(shù)字圖像處理C++MFC_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、數(shù)字圖像處理學(xué)院:計算機科學(xué)與技術(shù)學(xué)院專業(yè):信息與計算科學(xué)專業(yè)學(xué)號:1108060223姓名:姜圣濤2014年5月13日一、實驗內(nèi)容:主要是圖像的幾何變換的編程實現(xiàn),具體包括圖像的顯示,圖像平移,圖像的鏡像,圖像的旋轉(zhuǎn),圖像的銳化,以及簡單的處理等,例如:灰度處理、減小灰度處理、逆反處理、霓虹處理等。具體實現(xiàn)的功能圖為:顯示顯示原圖像處理鏡像變換I灰度處理減小灰度增加灰度逆反處理霓虹處理垂直鏡像水平鏡像圖像的銳化r梯度增加法梯度增加法梯度增加法LoadBitmap(IDB_BITMAP3);CDC*pDC=GetDC();mypDC-CreateCompatibleDC(pDC);mypDC-

2、SelectObject(bitmap);3、加入位圖將待處理的照片格式轉(zhuǎn)化成bmp格式,具體轉(zhuǎn)化過程可借助畫圖工具完成,插入后的結(jié)果為:z開6匚匚C|畫國嘗鈿錮立口S細(xì)嚼磴盍吞叨播扎工屈E讎回IiD咅二呦翌豹凹躍txc-l-MicrosoftVisualO+t?GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclr;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jGetPixel(j,i);intr=GetRValue(clr);intg=GetGValue(clr);intb=G

3、etBValue(clr);pDC-SetPixel(j,i,RGB(r,g,b);結(jié)果為:Untitled-txcl文件舊福竭巳査吾M熬肪(巴顯示處理養(yǎng)底穽臨罔陰的說化臉轉(zhuǎn)日|為麗於|魯鬣,Lr|ii喊i屢*“黑雄二才2)圖像的簡單灰度處理、逆反處理以、減小灰度處理、霓虹處理、增加灰度處理:A、灰度處理核心代碼:clr=mypDC-GetPixel(j,i);voidCTxclView:Onhuidu()/TODO:AddyourcommandhandlercodehereBITMAPbmp;bitmap-GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclr

4、;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jGetPixel(j,i);intr=GetRValue(clr);intg=GetGValue(clr);intb=GetBValue(clr);inteva=(r+g+b)/3;pDC-SetPixel(j,i,RGB(eva,eva,eva);B、逆反處理核心代碼:voidCTxclView:Onnifan()/TODO:AddyourcommandhandlercodehereBITMAPbmp;bitmap-GetBitmap(&bmp);CDC*pDC=

5、GetDC();COLORREFclr;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jSetPixel(j+300,i,RGB(r,g,b);C、減小灰度處理核心代碼:voidCTxclView:Onjianxiaohuidu()/TODO:AddyourcommandhandlercodehereBITMAPbmp;bitmap-GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclr;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy

6、;+i)for(intj=0;jGetPixel(j,i);intr=GetRValue(clr)*GetRValue(clr)/255;intg=GetGValue(clr)*GetRValue(clr)/255;intb=GetBValue(clr)*GetRValue(clr)/255;pDC-SetPixel(j+600,i,RGB(r,g,b);D、圖形的霓虹處理核心代碼:voidCTxclView:Onnihong()/TODO:AddyourcommandhandlercodehereBITMAPbmp;intr,g,b;bitmap-GetBitmap(&bmp);CDC*pD

7、C=GetDC();COLORREFclra;COLORREFclrb;COLORREFclrc;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jGetPixel(j,i);clrb=mypDC-GetPixel(j,i+1);clrc=mypDC-GetPixel(j+1,i);r=(int)sqrt(GetRValue(clra)-GetRValue(clrb)*(GetRValue(clra)-GetRValue(clrb)+(GetRValue(clra)-GetRValue(clrc)*(GetRValu

8、e(clra)-GetRValue(clrc);g=(int)sqrt(GetRValue(clra)-GetRValue(clrb)*(GetRValue(clra)-GetRValue(clrb)+(GetRValue(clra)-GetRValue(clrc)*(GetRValue(clra)-GetRValue(clrc);b=(int)sqrt(GetRValue(clra)-GetRValue(clrb)*(GetRValue(clra)-GetRValue(clrb)+(GetRValue(clra)-GetRValue(clrc)*(GetRValue(clra)-GetRVa

9、lue(clrc);pDC-SetPixel(j,i+300,RGB(r,g,b);E、圖形增大灰度處理核心代碼:voidCTxclView:OnZenghuidu()/TODO:AddyourcommandhandlercodehereBITMAPbmp;intr,g,b;bitmap-GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclr;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jSetPixel(j+300,i+300,RGB(r,g,b);圖像的簡單灰度處理、逆反處理以

10、、減小灰度處理、霓虹處理、增加灰度處理結(jié)果對比:(3)圖像的鏡像變換A、垂直鏡像變換的核心代碼voidCTxclView:Onchuizhijx()/TODO:AddyourcommandhandlercodehereBITMAPbmp;bitmap-GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclr;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jGetPixel(x-j,i);intr=GetRValue(clr);intg=GetGValue(clr);intb=GetBV

11、alue(clr);pDC-SetPixel(j+300,i,RGB(r,g,b);B、水平鏡像變換的核心代碼voidCTxclView:Onshuipingjx()/TODO:AddyourcommandhandlercodehereBITMAPbmp;bitmap-GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclr;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jGetPixel(j,y-i);intr=GetRValue(clr);intg=GetGValue(clr);i

12、ntb=GetBValue(clr);pDC-SetPixel(j+600,i,RGB(r,g,b);垂直鏡像變換、水平鏡像變換與原圖對比結(jié)果:EnUntxtlcd-txd立唄FJ觸舊iSMfttUi.H55立昌耀菱BS耳(4)圖像的銳化處理A、圖像梯度增加方法一銳化處理核心代碼:voidCTxclView:OnTiDuZengqiangyi()/TODO:AddyourcommandhandlercodehereBITMAPbmp;intr,g,b;bitmap-GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclra;COLORREFclrb;COLORRE

13、Fclrc;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jGetPixel(j,i);clrb=mypDC-GetPixel(j,i+1);clrc=mypDC-GetPixel(j+1,i);/intb=GetBValue(clra);intr=abs(GetRValue(clra)-GetRValue(clrb)+abs(GetRValue(clra)-GetRValue(clrc);pDC-SetPixel(j,i,RGB(r,r,r);B、圖像梯度增加方法二銳化處理核心代碼:voidCTxclView:O

14、nTiDuZengEr()/TODO:AddyourcommandhandlercodehereBITMAPbmp;intr,g,b;bitmap-GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclrb;COLORREFclra;COLORREFclrc;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jGetPixel(j,i);clrb=mypDC-GetPixel(j,i+1);clrc=mypDC-GetPixel(j+1,i);/intb=GetBValue(clra);i

15、ntr=abs(GetRValue(clra)-GetRValue(clrb)+abs(GetRValue(clra)-GetRValue(clrc);if(rSetPixel(j+300,i,RGB(r,r,r);C、圖像梯度增加方法一銳化處理核心代碼:voidCTxclView:OnTiduZengSan()/TODO:AddyourcommandhandlercodehereBITMAPbmp;intr,g,b;bitmap-GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclra;COLORREFclrb;COLORREFclrc;intx=bmp.bm

16、Width;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jGetPixel(j,i);clrb=mypDC-GetPixel(j,i+1);clrc=mypDC-GetPixel(j+1,i);/intb=GetBValue(clra);intr=abs(GetRValue(clra)-GetRValue(clrb)+abs(GetRValue(clra)-GetRValue(clrc);if(r50)r=0;elser=GetRValue(clra);pDC-SetPixel(j+600,i,RGB(r,r,r);D、Sobel算子銳化處理核心

17、代碼:voidCTxclView:OnSobelSuanZi()/TODO:AddyourcommandhandlercodehereBITMAPbmp;intr,g,b;bitmap-GetBitmap(&bmp);CDC*pDC=GetDC();COLORREFclra,clrb,clrc;COLORREFclra1,clrb1,clrc1;COLORREFclra2,clrb2;intx=bmp.bmWidth;inty=bmp.bmHeight;for(inti=0;iy;+i)for(intj=0;jGetPixel(j-1,i+1);clrb=mypDC-GetPixel(j,i+

18、1);clrc=mypDC-GetPixel(j+1,i+1);clra1=mypDC-GetPixel(j-1,i-1);clrb1=mypDC-GetPixel(j,i-1);clrc1=mypDC-GetPixel(j+1,i-1);clra2=mypDC-GetPixel(j+1,i);clrb2=mypDC-GetPixel(j-1,i);intm=abs(GetRValue(clra)+2*GetRValue(clrb)+GetRValue(clrc)-GetRValue(clra1)-2*GetRValue(clrb1)-GetRValue(clrc1);intn=abs(GetRValue(clrc1)+2*GetRValue(clra2)+GetRValue(clrc)-GetRValue(clra1)-2*GetRValue(clrb2)-GetRValue(clra);intr=m+n;pDC-SetPixel(j,i+300,RGB(r,r,r);四種銳化處理結(jié)果為:5)旋轉(zhuǎn)變化采用的是45度角旋轉(zhuǎn)正變換,核心代碼為voidCTxclVie

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論