圖像增強(qiáng)實(shí)驗(yàn)(共12頁(yè))_第1頁(yè)
圖像增強(qiáng)實(shí)驗(yàn)(共12頁(yè))_第2頁(yè)
圖像增強(qiáng)實(shí)驗(yàn)(共12頁(yè))_第3頁(yè)
圖像增強(qiáng)實(shí)驗(yàn)(共12頁(yè))_第4頁(yè)
圖像增強(qiáng)實(shí)驗(yàn)(共12頁(yè))_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)字圖像處理實(shí)驗(yàn)報(bào)告1 - 圖像(t xin)增強(qiáng)(zngqing)學(xué)生(xu sheng)姓名: 學(xué)號(hào): 實(shí)驗(yàn)時(shí)間: 地點(diǎn): 指導(dǎo)教師: 實(shí)驗(yàn)名稱(chēng):圖像增強(qiáng)試驗(yàn)?zāi)康?MATLAB中的實(shí)驗(yàn)驗(yàn)證。通過(guò)在MATLAB環(huán)境中相關(guān)函數(shù)的調(diào)用,驗(yàn)證圖像增強(qiáng)的結(jié)果,增強(qiáng)感性認(rèn)識(shí),促進(jìn)對(duì)課程內(nèi)容的理解。通過(guò)編寫(xiě)C+程序。進(jìn)一步理解算法的實(shí)現(xiàn)過(guò)程,為在實(shí)際項(xiàng)目軟件中的應(yīng)用打下基礎(chǔ)。實(shí)驗(yàn)內(nèi)容MATLAB中的實(shí)驗(yàn)驗(yàn)證灰度線性變換,利用imadjust等直方圖均衡化,利用 histeq等基于模版的平滑濾波驗(yàn), 證各種濾波模板對(duì)椒鹽噪聲的濾波效果。filter2, imfilter 等函數(shù)。中值濾波,驗(yàn)證對(duì)中值濾波椒

2、鹽噪聲的濾波效 。 medfilt2 等函數(shù)。圖像銳化。驗(yàn)證圖像銳化效果。 edge, filter2, gradient 等函數(shù)。c語(yǔ)言直方圖均衡化編程用VC+編寫(xiě)程序,將自己的YUV格式的照片轉(zhuǎn)換成灰度圖像,并進(jìn)行直方圖均衡化處理,結(jié)果存放到res.yuv文件。 后附參考程序代碼。實(shí)驗(yàn)記錄 與 結(jié)果分析:(1)利用imadjust函數(shù)來(lái)實(shí)現(xiàn)灰度的線性化。先讀出圖像finley.jpg,然后調(diào)用matlab函數(shù)imadjust,實(shí)現(xiàn)灰度線性化。程序詳見(jiàn)附錄1.1,調(diào)整結(jié)果如下:調(diào)整前: 調(diào)整后: 由此可見(jiàn)視覺(jué)效果得到(d do)明顯改善。利用(lyng) histeq函數(shù)(hnsh)實(shí)現(xiàn)直方

3、圖均衡化。 先讀出圖像finley.jpg,然后調(diào)用matlab函數(shù)histeq,實(shí)現(xiàn)直方圖均衡化,最后在顯示圖像。程序詳見(jiàn)附錄1.2。其圖像變化結(jié)果和直方圖如下:均衡前: 均衡后: 由此可見(jiàn),直方圖均衡化后,圖像均勻性得到了很好的改善?;谀0娴钠交瑸V波驗(yàn)。先讀出圖像finley.jpg,然后調(diào)用matlab函數(shù)imnoise給圖像加上高斯白噪聲(為什么加高斯白噪聲,因?yàn)檫@種噪聲最常見(jiàn)),用書(shū)上的P116頁(yè)的相關(guān)模板,構(gòu)造濾波器來(lái)實(shí)現(xiàn)相關(guān)濾波。程序詳見(jiàn)附錄1.3.結(jié)果如下:原圖像:加過(guò)噪聲(zoshng)以及濾波圖像(t xin)如下:中值濾波(lb)。先讀出圖像finley.jpg,然后調(diào)

4、用matlab函數(shù)imnoise給圖像加上高斯白噪聲,再通過(guò)中值濾波函數(shù)medfilt2來(lái)給圖像進(jìn)行中值濾波。程序詳見(jiàn)1.4.結(jié)果如下:圖像銳化。先讀出圖像finley.jpg,然后調(diào)用matlab函數(shù)edge對(duì)圖像進(jìn)行邊緣銳化。程序詳見(jiàn)附錄1.5.結(jié)果如下:(2)c語(yǔ)言(yyn)直方圖均衡化編程。根據(jù)(gnj)公式(gngsh)以及理論對(duì)圖像的均衡化進(jìn)行C語(yǔ)言的實(shí)現(xiàn),首先把finley.jpg轉(zhuǎn)成finley.yuv格式然后對(duì)文件讀取,處理,最后放回原文件。程序詳見(jiàn)2。結(jié)果如下:處理前: 處理后: 實(shí)驗(yàn)小結(jié)本次實(shí)驗(yàn)可謂是收貨頗多,我不僅學(xué)會(huì)了用matlab簡(jiǎn)單的處理數(shù)字圖像,還會(huì)用c語(yǔ)言創(chuàng)建

5、exe軟件了并且能自己做一些簡(jiǎn)單的圖像處理并把它做成想要的軟件,如果再加以學(xué)習(xí),就可以成功的編出像Photoshop一樣的軟件,在這高速發(fā)展的社會(huì)能掌握這樣的技能還是非常不錯(cuò)的。附錄(源程序等)程序1.1:%=讀出圖像finley.jpg=%i=imread(E:電力數(shù)字圖像處理實(shí)驗(yàn)實(shí)驗(yàn)二finley.jpg);i=rgb2gray(i); %轉(zhuǎn)成灰度圖像figure(1);subplot(121)imshow(i); %顯示原圖像subplot(122)imhist(i); %畫(huà)出頻率分布直方圖j=imadjust(i,0.3,0.7,); %圖像的均衡化調(diào)整figure(2)subplot

6、(121)imshow(j); %畫(huà)出均衡化調(diào)整之后的圖像subplot(122)imhist(j) %畫(huà)出調(diào)整之后的頻率分布直方圖程序(chngx)1.2:%=讀出圖像(t xin)finley.jpg=%i=imread(E:電力(dinl)數(shù)字圖像處理實(shí)驗(yàn)實(shí)驗(yàn)二finley.jpg);i=rgb2gray(i); %轉(zhuǎn)成灰度圖像j=histeq(i); %直方圖的均衡化%=均衡化之前的圖像=%subplot(121)imshow(i);subplot(122)imhist(i);%=均衡化之后的圖像=%figure(2);subplot(121);imshow(j);subplot(12

7、2)imhist(j);程序1.3:%=讀出圖像finley.jpg=%i=imread(E:電力數(shù)字圖像處理實(shí)驗(yàn)實(shí)驗(yàn)二finley.jpg);i=rgb2gray(i); %轉(zhuǎn)成灰度圖像figure(1)imshow(i);I=imnoise(i,gaussian);%給圖像見(jiàn)高斯白噪聲%定義相關(guān)模板h0=1/9.*1 1 1; 1 1 1; 1 1 1;h1=1/10.*1 1 1; 1 2 1; 1 1 1;h2=1/16.*1 2 1; 2 4 2; 1 2 1;h3=1/8.*1 1 1; 1 0 1; 1 1 1;h4=1/2.*0 1/4 0; 1/4 1 1/4; 0 1/4

8、0;%用上述模板進(jìn)行濾波g0=imfilter(I,h0);g1=imfilter(I,h1);g2=imfilter(I,h2);g3=imfilter(I,h3);g4=imfilter(I,h4);%畫(huà)圖顯示figure(2)subplot(231)imshow(I);title(噪聲圖像)subplot(232)imshow(g0);title(平滑(pnghu)濾波)subplot(233)imshow(g1);title(h1模板(mbn)處理結(jié)果)subplot(234)imshow(g2);title(高斯(o s)模板處理結(jié)果)subplot(235)imshow(g3);t

9、itle(h3模板處理結(jié)果)subplot(236)imshow(g4);title(用h4模板處理結(jié)果)程序1.4:%=讀出圖像finley.jpg=%i=imread(E:電力數(shù)字圖像處理實(shí)驗(yàn)實(shí)驗(yàn)二finley.jpg);i=rgb2gray(i); %轉(zhuǎn)成灰度圖像I=imnoise(i,gaussian);%給圖像見(jiàn)高斯白噪聲k=medfilt2(I);%中值濾波%畫(huà)圖像subplot(121)imshow(I);title(噪聲圖像);subplot(122);imshow(k);title(中值濾波后圖像);程序1.5:%=讀出圖像finley.jpg=%i=imread(E:電力數(shù)

10、字圖像處理實(shí)驗(yàn)實(shí)驗(yàn)二finley.jpg);i=rgb2gray(i); %轉(zhuǎn)成灰度圖像BW=edge(i,roberts,0.1);%求羅伯茨梯度f(wàn)igure;imshow(BW);title(圖像銳化);程序2:(其中黑體部分是程序功能部分其他為建立對(duì)話框的輔助部分)/ adjustDlg.cpp : implementation file/#include stdafx.h#include adjust.h#include adjustDlg.h#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE

11、= _FILE_;#endif/ CAboutDlg dialog used for App Aboutclass CAboutDlg : public CDialogpublic:CAboutDlg();/ Dialog Data/AFX_DATA(CAboutDlg)enum IDD = IDD_ABOUTBOX ;/AFX_DATA/ ClassWizard generated virtual function overrides/AFX_VIRTUAL(CAboutDlg)protected:virtual void DoDataExchange(CDataExchange* pDX)

12、; / DDX/DDV support/AFX_VIRTUAL/ Implementationprotected:/AFX_MSG(CAboutDlg)/AFX_MSGDECLARE_MESSAGE_MAP();CAboutDlg:CAboutDlg() : CDialog(CAboutDlg:IDD)/AFX_DATA_INIT(CAboutDlg)/AFX_DATA_INITvoid CAboutDlg:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CAboutDlg)/AFX_DAT

13、A_MAPBEGIN_MESSAGE_MAP(CAboutDlg, CDialog)/AFX_MSG_MAP(CAboutDlg)/ No message handlers/AFX_MSG_MAPEND_MESSAGE_MAP()/ CAdjustDlg dialogCAdjustDlg:CAdjustDlg(CWnd* pParent /*=NULL*/): CDialog(CAdjustDlg:IDD, pParent)/AFX_DATA_INIT(CAdjustDlg)/ NOTE: the ClassWizard will add member initialization here/

14、AFX_DATA_INIT/ Note that LoadIcon does not require a subsequent DestroyIcon in Win32m_hIcon = AfxGetApp()-LoadIcon(IDR_MAINFRAME);void CAdjustDlg:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CAdjustDlg)/ NOTE: the ClassWizard will add DDX and DDV calls here/AFX_DATA_MA

15、PBEGIN_MESSAGE_MAP(CAdjustDlg, CDialog)/AFX_MSG_MAP(CAdjustDlg)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDC_BUTTON1, adjust)/AFX_MSG_MAPEND_MESSAGE_MAP()/ CAdjustDlg message handlersBOOL CAdjustDlg:OnInitDialog()CDialog:OnInitDialog();/ Add About. menu item to system menu./

16、IDM_ABOUTBOX must be in the system command range.ASSERT(IDM_ABOUTBOX & 0 xFFF0) = IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX AppendMenu(MF_SEPARATOR);pSysMenu-AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);/ Set the icon for this dialog. The framework does this automatically/ when the applications main wi

17、ndow is not a dialogSetIcon(m_hIcon, TRUE);/ Set big iconSetIcon(m_hIcon, FALSE);/ Set small icon/ TODO: Add extra initialization herereturn TRUE; / return TRUE unless you set the focus to a controlvoid CAdjustDlg:OnSysCommand(UINT nID, LPARAM lParam)if (nID & 0 xFFF0) = IDM_ABOUTBOX)CAboutDlg dlgAb

18、out;dlgAbout.DoModal();elseCDialog:OnSysCommand(nID, lParam);/ If you add a minimize button to your dialog, you will need the code below/ to draw the icon. For MFC applications using the document/view model,/ this is automatically done for you by the framework.void CAdjustDlg:OnPaint() if (IsIconic(

19、)CPaintDC dc(this); / device context for paintingSendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);/ Center icon in client rectangleint cxIcon = GetSystemMetrics(SM_CXICON);int cyIcon = GetSystemMetrics(SM_CYICON);CRect rect;GetClientRect(&rect);int x = (rect.Width() - cxIcon + 1) / 2;int

20、y = (rect.Height() - cyIcon + 1) / 2;/ Draw the icondc.DrawIcon(x, y, m_hIcon);elseCDialog:OnPaint();/ The system calls this to obtain the cursor to display while the user drags/ the minimized window.HCURSOR CAdjustDlg:OnQueryDragIcon()return (HCURSOR) m_hIcon;void CAdjustDlg:adjust() / TODO: Add your control notification handler code hereunsigned char *pic_from=NULL,*pic_to=NULL;int w=352,h=288,Pixels=w*h,ImgBytes=Pixels*1.5;double n256=0.0,N=Pixels;double p256

溫馨提示

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

評(píng)論

0/150

提交評(píng)論