【正文】
則處理圖像耗時由決定。當局部窗口增大時,對時間消耗的影響與窗口尺寸成平方關系。(2)有偽影現(xiàn)象。采用Bernsen算法時,常常在背景區(qū)域出現(xiàn)偽筆畫,這叫做偽影現(xiàn)象。出現(xiàn)這種現(xiàn)象是因為Bernsen算法以局部窗口內極大、極小值作為考察點的鄰域,當考察窗口內無目標點時,個別噪聲點將引起閾值的突變,背景灰度的非均勻性也將影響局部閾值的變化,從而使得本應是背景的點被二值化為目標點。(3)有筆畫斷裂現(xiàn)象。 Bernsen算法考察窗口內均為目標點時,局部閾值被拉升,于是部分目標點被二值化為背景,致使信息丟失,從而出現(xiàn)筆畫斷裂現(xiàn)象。結束語在兩個多月的畢業(yè)設計中,通過廣泛查閱與課題有關的內容,我掌握了許多與計算機有關的東西。為此,、方法及思路有了一個全新的認識。,同時也了解到數(shù)字圖像處理如在模式識別,醫(yī)學,軍事等方面都有廣泛運用,我受益非淺。通過這次的畢業(yè)設計,我不僅拓寬了自己的知識面,還在實踐過程中鞏固和加深了自己所學的理論知識,使自己的技術素質和實踐能力有了進一步的提高。在圖像處理方面也累積了不少經(jīng)驗,特別是在對軟件開發(fā)工具和圖像處理不很熟悉的情況下,通過自己的學習和導師的指導完成了設計任務。并在設計過程中,自己分析問題和解決問題的能力都得到了鍛煉和提高,完善了自己的知識結構,加深了對知識的理解。這次畢業(yè)設計完成后,體會頗多,在學與做的過程中,取長補短,不斷學習新的知識,吸取經(jīng)驗,達到進步的目的。在學與做的過程中老師的指導以及相關圖書資料的幫助,我順利完成了這次論文。,但由于自己的理論知識水平有限,實踐知識和設計經(jīng)驗不足,在設計過程中難免存在一些不足,甚至錯誤。懇請老師批評指正,致使我在以后的工作和實踐中加以改進和提高。參考文獻[1] Liu Jieping,Yu flexible method for image noise removal[J].Joural of South China University Technology,2000,28(2):60~63.[2] A Piva, M Barni,F Bartolini, V Cappellini. DCTbased watermark recovering without resorting to the uncorrupted original image[A].Proceedings of 4th IEEE International Conference on Image Processing ICIP’97[C].Santa Barbara,CA,USA:ICIP,1997.[3] Zhong watermarking using Legendre array[J].Journal of china institute of munications,2001,22(1):1~6.[4] 潘梅森,[J].光學精密工程,2007,15(3):99~104.[5] 潘梅森,[J].計算機工程與應用,2006,42(10):62~64.[6] [J].哈爾濱商業(yè)大學大學報:,22(4):67~69.[7] 李文舉,梁德群,[J].計算機輔助設計與圖形學學報,2004,16(5):697~700.[8] 郝永杰,劉文耀,[J].西南交通大學學報,2002, 4(37): 417~420.[9] 陳丹,張蜂,[J].計算機工程,2003,29(13):85~86.[10] [J].華僑大學學報(自然科學版),2002,23(4):427~430.[11] A Hashizume, P S Yeh, A Rosenfeld. A Method of Detecting the Orientation of Aligned Components[J]. Pattern Recognition Letters, 1986,4:125~132.[12] ’Gorman. The Document Spectrum for Page Layout Analysis. IEEE Transactions. PAMI, , 1993:~1173.[13] 鄭咸義,[J].計算機輔助設計與圖形學學報,1997,9(4):335~338.致 謝畢業(yè)即將完成,本次畢業(yè)設計我最想感謝,最應該感謝的人是潘老師。嚴肅的科學態(tài)度,嚴謹?shù)闹螌W精神,精益求精的工作作風,這是別人用來形容潘老師的,一點都不錯。但是詞真是官方,我自己應該想不出來,當然與自己文學水平也有關系??傊?,如果不是潘老師有計劃按步驟的催促我們交東西,我想自己現(xiàn)在連開題報告都可能還沒完成;如果不是潘老師看重的設計過程中知識的學習,我想自己一開始就會說老師,給我一個模板吧!圖像處理太難了,我不會做;如果不是老師耐心的講解,我想我會說老師你給我程序吧,雖然到最后還是向老師開口了。如果不是老師有標準有要求,我想我應該會很混亂,也不會發(fā)現(xiàn)原來這些煩瑣復雜的過程中也會許多收獲。更重要的是對比潘老師的認真負責、專業(yè)強勢。反觀自己大學四年又做或學了些什么呢?什么都沒有,有得是碰到課程設計、程序就抓耳撓腮,學了這么多語言沒有真正的掌握好一門。逃避退縮不敢面對放棄,寧愿相信自己比人笨,也不愿一步一步地積累知識的。逝者已矣,不想去追悔什么。從潘老師身上學到的更是一種對生活對工作的態(tài)度,令我受益非淺。此次畢業(yè)設計可能沒有達到老師的要求,但是我自己還是很有收獲的。感謝潘老師! 感謝和我一起共同走過大學四年的同學,老師!附錄:源代碼Otsu算法代碼:time=now。 %取當前時間I=imread(39。39。)。%讀取圖像imshow(I)。[N,M]=size(I)。%用N,M分別存儲圖像數(shù)組的行數(shù)和列數(shù)length=N*M。 %取得圖像數(shù)組的像素點個數(shù)L=256。%設定圖像的灰度為256count=0。 %用來記錄出現(xiàn)灰度值相同的個數(shù)for k=0:L1 for i=1:N for j=1:M if I(i,j)==k count=count+1。 %個數(shù)加一 end endend %求出每個像素出現(xiàn)的次數(shù)P(k+1)=count/length。%記錄像素值為K出現(xiàn)的概率count=0。 %再次賦予0進入下一個像素的個數(shù)記錄endfor i=1:L if P(i)~=0 first=i。%找出第一個概率不連續(xù)為0的像素 break endend for i=L:1:1 if P(i)~=0 last=i。%找出最后一個出現(xiàn)概率不連續(xù)為0的像素 break endend entropy1=0。 %記錄灰度圖像的熵值for i=first:last if (P(i)~=0) entropy1=entropy1+P(i)*log2(1/P(i))。 %求取熵值的公式 end endep=0。%用來記錄每個灰度級的概率averF=0。 %記錄目標均值的疊加值averB=0。 %記錄背景均值的疊加值for t=0:L y=t+1。%好做標記 if (yfirst)amp。amp。(ylast) %防止w0(y)和w1(y)取0的情況出現(xiàn)for k=1:y ep=ep+P(k)。%存儲選取閾值為t時目標點的概率endw0(y)=ep。w1(y)=1w0(y)。 %總概率為1for i=1:t ep=averF+(i)*P(i)/w0(y)。 %求出目標均值endu0(y)=averF。 %賦予目標均值for i=t:L averB=averB+(i)*P(i)/w1(y)。% 求出背景均值 end u1(y)=averB。 u=w0(y)*u0(y)+w1(y)*u1(y)。 %總均值 arg(y)=w0(y)*(u0(y)u)*(u0(y)u)+w1(y)*(u1(y)u)*(u1(y)u)。 %算出每一個t對應的方差值end ep=0。 averF=0。 averB=0。 %用完一次需賦0,以保證進入下一個t的計算的正確性endhigh=arg(1)。for i=2:lastfirst3 %因為firsttlast,所以t可取值的個數(shù)為lastfirst2 if higharg(i) high=arg(i)。 %把大值賦予max(x) x=i。 %記錄大值的下標 endend t=x1。%記錄t是從下標1開始的,此時的t就是我們所求的閾值I0=0。I1=0。for i=1:N for j=1:M if (I(i,j)=t) y1(i,j)=255。 I1=I1+1。%統(tǒng)計目標像素點的個數(shù) else y1(i,j)=0。 I0=I0+1。%統(tǒng)計背景像素點的個數(shù) end endendfigure,imshow(y1)。 %顯示二值化圖像entropy1。 %求出二值化圖像的熵值back=(I0/(N*M))*log2(N*M/I0)。 %求出背景像素的熵值fore=(I1/(N*M))*log2(N*M/I1)。 %求出目標像素的熵值entropy2=back+fore %求出二值化圖像的熵值exetime=second(nowtime) %求得程序運行所需時間,并轉化成秒顯示t %閾值顯示Bernsen算法代碼:time=now。 %取當前時間I=imread(39。39。)。 %讀取圖像imshow(I)。 %顯示圖像[N,M]=size(I)。 %計算圖像大小,matlab中圖像以二維矩陣形式存儲for i=1:N for j=1:M extend(i+1,j+1)=I(i,j)。%把I數(shù)組的灰度賦給extend數(shù)組 endendextend(N+2,M+2)=0。 %擴展為N+2,M+2 for i=1:N+1:N+2 %因只需填充第一行和最后一行,所以i的步長為N+1 for j=2:M+1if i==1extend(i,j)=extend(i+2,j)。 %以第二行做坐標軸,填充第一行end if i==N+2 %以倒數(shù)第二行做坐標軸,填充最后一行 extend(i,j)=extend(i2,j)。 end %先填充行 endend for i=1:N+2 for j=1:M+1:M+2 %因只需填充第一列和最后一列,所以j的步長為M+1if j==1 extend(i,j)=extend(i,j+2)。 %填充第一列endif j==M+2 extend(i,j)=extend(i,j2)。 %填充最后一列end endend % 再填充列 ,填充完畢%extend=double(extend)。%for i=2:N+1 for j=2:M+1 high=max(max(extend(i1:i+1,j1:j+1)))。 %求出3*3矩陣的最大值 low=min(min(extend(i1:i+1,j1:j+1)))。 %求出3*3矩陣的最小值 t=*(high+low)。 % 依據(jù)公式算出局部閾值 if extend(i,j)t b(i1,j1)=0。%i1,j1 表示從第一個位置存儲 else b(i1,j1)=255。 %大于閾值的為目標像素 end endendfigure,imshow(b)。I0=0。I1=0。for i=1:N for j=1:M if b(i,j)==0 I0=I0+1。 else I1=I1+1。 end endendback=(I0/(N*M))*log2(N*M/I0)。%求出背景像素的熵值fore=(I1/(N*M))*log2(N*M/I1)。%求出目標像素熵值entropy=back+fore %求出二值化圖像熵值exetime=second(nowtime) %求得程序運行所需時間,并轉化成秒顯示