- 相關推薦
圖像拼接算法及實現
論文關鍵詞:圖像拼接 圖像配準 圖像融合 全景圖
論文摘要:圖像拼接(image mosaic)技術是將一組相互間重疊部分的圖像序列進行空間匹配對準,經重采樣合成后形成一幅包含各圖像序列信息的寬視角場景的、完整的、高清晰的新圖像的技術。圖像拼接在攝影測量學、視覺、遙感圖像處理、圖像分析、計算機圖形學等領域有著廣泛的應用價值。 一般來說,圖像拼接的過程由圖像獲取,圖像配準,圖像合成三步驟組成,其中圖像配準是整個圖像拼接的基礎。本文研究了兩種圖像配準算法:基于特征和基于變換域的圖像配準算法。 在基于特征的配準算法的基礎上,提出一種穩健的基于特征點的配準算法。首先改進Harris角點檢測算法,有效提高所提取特征點的速度和精度。然后利用相似測度NCC(normalized cross correlation——歸一化互相關),通過用雙向最大相關系數匹配的方法提取出初始特征點對,用隨機采樣法RANSAC(Random Sample Consensus)剔除偽特征點對,實現特征點對的精確匹配。最后用正確的特征點匹配對實現圖像的配準。本文提出的算法適應性較強,在重復性紋理、旋轉角度比較大等較難自動匹配場合下仍可以準確實現圖像配準。
Abstract:Image mosaic is a technology that carries on the spatial matching to a series of image which are overlapped with each other, and finally builds a seamless and high quality image which has high resolution and big eyeshot. Image mosaic has widely applications in the fields of photogrammetry, computer vision, remote sensing image processing, medical image analysis, computer graphic and so on. 。In general, the process of image mosaic by the image acquisition, image registration, image synthesis of three steps, one of image registration are the basis of the entire image mosaic. In this paper, two image registration algorithm: Based on the characteristics and transform domain-based image registration algorithm. In feature-based registration algorithm based on a robust feature-based registration algorithm points. First of all, to improve the Harris corner detection algorithm, effectively improve the extraction of feature points of the speed and accuracy. And the use of a similar measure of NCC (normalized cross correlation - Normalized cross-correlation), through the largest correlation coefficient with two-way matching to extract the feature points out the initial right, using random sampling method RANSAC (Random Sample Consensus) excluding pseudo-feature points right, feature points on the implementation of the exact match. Finally with the correct feature point matching for image registration implementation. In this paper, the algorithm adapted, in the repetitive texture, such as relatively large rotation more difficult to automatically match occasions can still achieve an accurate image registration.
Key words: image mosaic, image registration, image fusion, panorama
第一章 緒論
1.1 圖像拼接技術的研究背景及研究意義
圖像拼接(image mosaic)是一個日益流行的研究領域,他已經成為照相繪圖學、計算機視覺、圖像處理和計算機圖形學研究中的熱點。圖像拼接解決的問題一般式,通過對齊一系列空間重疊的圖像,構成一個無縫的、高清晰的圖像,它具有比單個圖像更高的分辨率和更大的視野。
早期的圖像拼接研究一直用于照相繪圖學,主要是對大量航拍或衛星的圖像的整合。近年來隨著圖像拼接技術的研究和發展,它使基于圖像的繪制(IBR)成為結合兩個互補領域——計算機視覺和計算機圖形學的堅決焦點,在計算機視覺領域中,圖像拼接成為對可視化場景描述(Visual Scene Representaions)的主要研究方法:在計算機形學中,現實世界的圖像過去一直用于貼圖,即合成靜態的背景和增加合成物體真實感的貼圖,圖像拼接可以使IBR從一系列真是圖像中快速繪制具有真實感的新視圖。
在軍事領域網的夜視成像技術中,無論夜視微光還是紅外成像設備都會由于攝像器材的限制而無法拍攝視野寬闊的圖片,更不用說360 度的環形圖片了。但是在實際應用中,很多時候需要將360 度所拍攝的很多張圖片合成一張圖片,從而可以使觀察者可以觀察到周圍的全部情況。使用圖像拼接技術,在根據拍攝設備和周圍景物的情況進行分析后,就可以將通過轉動的拍攝器材拍攝的涵蓋周圍360 度景物的多幅圖像進行拼接,從而實時地得到超大視角甚至是360 度角的全景圖像。這在紅外預警中起到了很大的作用。
微小型履帶式移動機器人項目中,單目視覺不能滿足機器人的視覺導航需要,并且單目視覺機器人的視野范圍明顯小于雙目視覺機器人的視野。利用圖像拼接技術,拼接機器人雙目采集的圖像,可以增大機器人的視野,給機器人的視覺導航提供方便。在虛擬現實領域中,人們可以利用圖像拼接技術來得到寬視角的圖像或360 度全景圖像,用來虛擬實際場景。這種基于全景圖的虛擬現實系統,通過全景圖的深度信息抽取,恢復場景的三維信息,進而建立三維模型。這個系統允許用戶在虛擬環境中的一點作水平環視以及一定范圍內的俯視和仰視,同時允許在環視的過程中動態地改變焦距。這樣的全景圖像相當于人站在原地環顧四周時看到的情形。在醫學圖像處理方面,顯微鏡或超聲波的視野較小,醫師無法通過一幅圖像進行診視,同時對于大目標圖像的數據測量也需要把不完整的圖像拼接為一個整體。所以把相鄰的各幅圖像拼接起來是實現遠程數據測量和遠程會診的關鍵環節圓。在遙感技術領域中,利用圖像拼接技術中的圖像配準技術可以對來自同一區域的兩幅或多幅圖像進行比較,也可以利用圖像拼接技術將遙感衛星拍攝到的有失真地面圖像拼接成比較準確的完整圖像,作為進一步研究的依據。
從以上方面可以看出,圖像拼接技術的應用前景十分廣闊,深入研究圖像拼接技術有著很重要的意義
1.2圖像拼接算法的分類
圖像拼接作為這些年來圖像研究方面的重點之一,國內外研究人員也提出了很多拼接算法。圖像拼接的質量,主要依賴圖像的配準程度,因此圖像的配準是拼接算法的核心和關鍵。根據圖像匹配方法的不同仁闊,一般可以將圖像拼接算法分為以下兩個類型:
(1) 基于區域相關的拼接算法。
這是最為傳統和最普遍的算法;趨^域的配準方法是從待拼接圖像的灰度值出發,對待配準圖像中一塊區域與參考圖像中的相同尺寸的區域使用最小二乘法或者其它方法計算其灰度值的差異,對此差異比較后來判斷待拼接圖像重疊區域的相似程度,由此得到待拼接圖像重疊區域的范圍和位置,從而實現圖像拼接。也可以通過FFT 變換將圖像由時域變換到頻域,然后再進行配準。對位移量比較大的圖像,可以先校正圖像的旋轉,然后建立兩幅圖像之間的映射關系。
當以兩塊區域像素點灰度值的差別作為判別標準時,最簡單的一種方法是直接把各點灰度的差值累計起來。這種辦法效果不是很好,常常由于亮度、對比度的變化及其它原因導致拼接失敗。另一種方法是計算兩塊區域的對應像素點灰度值的相關系數,相關系數越大,則兩塊圖像的匹配程度越高。該方法的拼接效果要好一些,成功率有所提高。
(2) 基于特征相關的拼接算法。
基于特征的配準方法不是直接利用圖像的像素值,而是通過像素導出圖像的特征,然后以圖像特征為標準,對圖像重疊部分的對應特征區域進行搜索匹配,該類拼接算法有比較高的健壯性和魯棒性。
基于特征的配準方法有兩個過程:特征抽取和特征配準。首先從兩幅圖像中提取灰度變化明顯的點、線、區域等特征形成特征集岡。然后在兩幅圖像對應的特征集中利用特征匹配算法盡可能地將存在對應關系的特征對選擇出來。一系列的圖像分割技術都被用到特征的抽取和邊界檢測上。如canny 算子、拉普拉斯高斯算子、區域生長。抽取出來的空間特征有閉合的邊界、開邊界、交叉線以及其他特征。特征匹配的算法有:交叉相關、距離變換、動態編程、結構匹配、鏈碼相關等算法。
1.3本文的主要工作和組織結構
本文的主要工作:
(1) 了前人在圖像拼接方面的技術發展歷程和研究成果。
(2) 學習和研究了前人的圖像配準算法。
(3) 學習和研究了常用的圖像融合算法。
(4) 用matlab實現本文中的圖像拼接算法
(5) 總結了圖像拼接中還存在的問題,對圖像拼接的發展方向和應用前景進行展望。
本文的組織結構:
第一章主要對圖像拼接技術作了整體的概述,介紹了圖像拼接的研究背景和應用前景,以及圖像拼接技術的大致過程、圖像拼接算法的分類和其技術難點。第二章主要介紹討論了圖像預處理中的兩個步驟,即圖像的幾何校正和噪聲點的抑制。第三章主要介紹討論了圖像配準的多種算法。第四章主要介紹討論了圖像融合的一些算法。第五章主要介紹圖像拼接軟件實現本文的算法。第六章主要對圖像拼接中還存在的問題進行總結,以及對圖像拼接的發展進行展望。
1.4 本章小結
本章主要對圖像拼接技術作了整體的概述,介紹了圖像拼接的研究背景和應用前景,以圖像拼接算法的分類和其技術難點,并且對全文研究內容進行了總體介紹。
第二章 圖像拼接的基礎理論及圖像預處理
2.1圖像拼接
圖像拼接技術主要有三個主要步驟:圖像預處理、圖像配準、圖像融合與邊界平滑,
如圖。
圖像拼接技術主要分為三個主要步驟:圖像預處理、圖像配準、圖像融合與邊界平滑,圖像預處理主要指對圖像進行幾何畸變校正和噪聲點的抑制等,讓參考圖像和待拼接圖像不存在明顯的幾何畸變。在圖像質量不理想的情況下進行圖像拼接,如果不經過圖像預處理,很容易造成一些誤匹配。圖像預處理主要是為下一步圖像配準做準備,讓圖像質量能夠滿足圖像配準的要求。圖像配準主要指對參考圖像和待拼接圖像中的匹配信息進行提取,在提取出的信息中尋找最佳的匹配,完成圖像間的對齊。圖像拼接的成功與否主要是圖像的配準。待拼接的圖像之間,可能存在平移、旋轉、縮放等多種變換或者大面積的同色區域等很難匹配的情況,一個好的圖像配準算法應該能夠在各種情況下準確找到圖像間的對應信息,將圖像對齊。圖像融合指在完成圖像匹配以后,對圖像進行縫合,并對縫合的邊界進行平滑處理,讓縫合自然過渡。由于任何兩幅相鄰圖像在采集條件上都不可能做到完全相同,因此,對于一些本應該相同的圖像特性,如圖像的光照特性等,在兩幅圖像中就不會表現的完全一樣。圖像拼接縫隙就是從一幅圖像的圖像區域過渡到另一幅圖像的圖像區域時,由于圖像中的某些相關特性發生了躍變而產生的。圖像融合就是為了讓圖像間的拼接縫隙不明顯,拼接更自然
2.2 圖像的獲取方式
圖像拼接技術原理是根據圖像重疊部分將多張銜接的圖像拼合成一張高分辨率全景圖 。這些有重疊部分的圖像一般由兩種方法獲得 : 一種是固定照相機的轉軸 ,然后繞軸旋轉所拍攝的照片 ;另一種是固定照相機的光心 ,水平搖動鏡頭所拍攝的照片。其中 ,前者主要用于遠景或遙感圖像的獲取 ,后者主要用于顯微圖像的獲取 ,它們共同的特點就是獲得有重疊的二維圖像。
2.3 圖像的預處理
2.3.1 圖像的校正
當照相系統的鏡頭或者照相裝置沒有正對著待拍攝的景物時候,那么拍攝到的景物圖像就會產生一定的變形。這是幾何畸變最常見的情況。另外,由于光學成像系統或掃描系統的限制而產生的枕形或桶形失真,也是幾何畸變的典型情況。幾何畸變會給圖像拼接造成很大的問題,原本在兩幅圖像中相同的物體會因為畸變而變得不匹配,這會給圖像的配準帶來很大的問題。因此,解決幾何畸變的問題顯得很重要。
圖象校正的基本思路是,根據圖像失真原因,建立相應的模型,從被污染或畸變的圖象信號中提取所需要的信息,沿著使圖象失真的逆過程恢復圖象本來面貌。實際的復原過程是設計一個濾波器,使其能從失真圖象中計算得到真實圖象的估值,使其根據預先規定的誤差準則,最大程度地接近真實圖象。
2.3.2 圖像噪聲的抑制
圖像噪聲可以理解為妨礙人的視覺感知,或妨礙系統傳感器對所接受圖像源信息進行理解或分析的各種因素,也可以理解成真實信號與理想信號之間存在的偏差。一般來說,噪聲是不可預測的隨機信號,通常采用概率的方法對其進行分析。噪聲對圖像處理十分重要,它影響圖像處理的各個環節,特別在圖像的輸入、采集中的噪聲抑制是十分關鍵的問題。若輸入伴有較大的噪聲,必然影響圖像拼接的全過程及輸出的結果。根據噪聲的來源,大致可以分為外部噪聲和內部噪聲;從統計數學的觀點來定義噪聲,可以分為平穩噪聲和非平穩噪聲。各種類型的噪聲反映在圖像畫面上,大致可以分為兩種類型。一是噪聲的幅值基本相同,但是噪聲出現的位置是隨機的,一般稱這類噪聲為椒鹽噪聲。另一種是每一點都存在噪聲,但噪聲的幅值是隨機分布的,從噪聲幅值大小的分布統計來看,其密度函數有高斯型、瑞利型,分別成為高斯噪聲和瑞利噪聲,又如頻譜均勻分布的噪聲稱為白噪聲等。
1.均值濾波
所謂均值濾波實際上就是用均值替代原圖像中的各個像素值。均值濾波的方法是,對將處理的當前像素,選擇一個模板,該模板為其鄰近的若干像素組成,用模板中像素的均值來替代原像素的值。如圖2.4所示,序號為0是當前像素,序號為1至8是鄰近像素。求模板中所有像素的均值,再把該均值賦予當前像素點((x, y),作為處理后圖像在該點上的灰度g(x,y),即
g(x,y)= (2-2-2-1)
其中,s為模板,M為該模板中包含像素的總個數。
圖2.2.2.1模板示意圖
2.中值濾波
中值濾波是基于排序統計理論的一種能有效抑制噪聲的非線性信號處理技術。它的核心算法是將模板中的數據進行排序,這樣,如果一個亮點(暗點)的噪聲,就會在排序過程中被排在數據序列的最右側或者最左側,因此,最終選擇的數據序列中見位置上的值一般不是噪聲點值,由此便可以達到抑制噪聲的目的。
取某種結構的二維滑動模板,將模板內像素按照像素值的大小進行排序,生成單調上升(或下降)的二維數據序列。二維德中值濾波輸出為
( 2-2-2-2 )
其中,f(x,y),g (x,y)分別為原圖像和處理后的圖像,w二維模板,k ,l為模板的長寬,Med 為取中間值操作,模板通常為3 3 、5 5 區域,也可以有不同形狀,如線狀、圓形、十字形、圓環形。
2.4 本章小結
本章主要介紹了圖像幾何畸變校正和圖像噪聲抑制兩種圖像預處理.
第三章 圖像配準算法
3.1 圖像配準的概念
圖像配準簡而言之就是圖像之間的對齊。圖像配準定義為:對從不同傳感器或不同時間或不同角度所獲得的兩幅或多幅圖像進行最佳匹配的處理過程。為了更清楚圖像配準的任務,我們將圖像配準問題用更精確的數學描述出來。配準可以用描述為如下的問題:
給定同一景物的從不同的視角或在不同的時間獲取的兩個圖像I ,I 和兩個圖像間的相似度量S(I ,I ),找出I ,I 中的同名點,確定圖像間的最優變換T,使得S(T(I ),I )達到最大值。
圖像配準總是相對于多幅圖像來講的,在實際工作中,通常取其中的一幅圖像作為配準的基準,稱它為參考圖,另一幅圖像,為搜索圖。圖像配準的一般做法是,首先在參考圖上選取以某一目標點為中心的圖像子塊,并稱它為圖像配準的模板,然后讓模板在搜索圖上有秩序地移動,每移到一個位置,把模板與搜索圖中的對應部分進行相關比較,直到找到配準位置為止。
如果在模板的范圍內,同一目標的兩幅圖像完全相同,那么完成圖像配準并不困難。然而,實際上圖像配準中所遇到的同一目標的兩幅圖像常常是在不同條件下獲得的,如不同的成像時間、不同的成像位置、甚至不同的成像系統等,再加上成像中各種噪聲的影響,使同一目標的兩幅圖像不可能完全相同,只能做到某種程度的相似,因此圖像配準是一個相當復雜的技術過程。
3.2 基于區域的配準
3.2.1 逐一比較法
設搜索圖為s待配準模板為T,如圖3.1所示,S大小為M N,T大小為U V,如圖所示。
圖3.1搜索圖S與模板T示意圖
逐一比較法的配準思想是:
在搜索圖S中以某點為基點(i,j),截取一個與模板T大小一樣的分塊圖像,這樣的基點有(M-U+1) (N-V+1)個,配準的目標就是在(M-U+1) (N-V+1)個分塊圖像中找一個與待配準圖像最相似的圖像,這樣得到的基準點就是最佳配準點。
設模板T在搜索圖s上移動,模板覆蓋下的那塊搜索圖叫子圖S ,(i,j)為這塊子圖的左上角點在S圖中的坐標,叫做參考點。然后比較T和S 的內容。若兩者一致,則T和S 之差為零。在現實圖像中,兩幅圖像完全一致是很少見的,一般的判斷是在滿足一定條件下,T和S 之差最小。
根據以上原理,可采用下列兩種測度之一來衡量T和S 的相似程度。D(i,j)的值越小,則該窗口越匹配。
D(i,j)= [S (m,n)-T(m,n)] (3-1)
或
D(i,j)= [S (m,n)-T(m,n) (3-2)
或者利用歸一化相關函數。將式(3-1)展開可得:
D(i,j)= [S (m,n)] -2 S (m,n)*T(m,n)+ [T(m,n)] (3-3)
式中等號右邊第三項表示模板總能量,是一常數,與(i,j)無關;第一項是與模板匹配區域的能量,它隨((i,j)的改變而改變,當T和S 匹配時的取最大值。因此相
關函數為:
R(i,j)= (3-4)
當R(i,j)越大時,D(i,j)越小,歸一化后為:
R(i,j)= (3-5)
根據Cauchy-Schwarz不等式可知式(3-5)中0 R(i,j) 1,并且僅當值S (m, n)/T (m, n)=常數時,R(i,j)取極大值。
該算法的優點:
(1)算法思路比較簡單,容易理解,易于編程實現。
(2)選用的模板越大,包含的信息就越多,匹配結果的可信度也會提高,同時能夠對參考圖像進行全面的掃描。
該算法的缺點:
(1)很難選擇待配準圖像分塊。因為一個如果分塊選擇的不正確,缺少信息量,則不容易正確的匹配,即發生偽匹配。同時,如果分塊過大則降低匹配速度,如果分塊過小則容易降低匹配精度。
(2)對圖像的旋轉變形不能很好的處理。算法本身只是把待配準圖像分塊在標準參考圖像中移動比較,選擇一個最相似的匹配塊,但是并不能夠對圖像的旋轉變形進行處理,因此對照片的拍攝有嚴格的要求。
3.2.2 分層比較法
圖像處理的塔形(或稱金字塔:Pyramid)分解方法是由Burt和Adelson首先提出的,其早期主要用于圖像的壓縮處理及機器人的視覺特性研究。該方法把原始圖像分解成許多不同空間分辨率的子圖像,高分辨率(尺寸較大)的子圖像放在下層,低分辨率(尺寸較小)的圖像放在上層,從而形成一個金字塔形狀。
在逐一比較法的思想上,為減少運算量,引入了塔形處理的思想,提出了分層比較法。利用圖像的塔形分解,可以分析圖像中不同大小的物體。同時,通過對低分辨率、尺寸較小的上層進行分析所得到的信息還可以用來對高分辨率、尺寸較大的下層進行分析,從而大大簡化分析和計算。在搜索過程中,首先進行粗略匹配,每次水平或垂直移動一個步長,計算對應像素點灰度差的平方和,記錄最小值的網格位置。其次,以此位置為中心進行精確匹配。每次步長減半,搜索當前最小值,循環這個過程,直到步長為零,最后確定出最佳匹配位置。
算法的具體實現步驟如下:
(1)將待匹配的兩幅圖像中2 2鄰域內的像素點的像素值分別取平均,作為這一區域(2 2)像素值,得到分辨率低一級的圖像。然后,將此分辨率低一級的圖像再作同樣的處理,也就是將低一級的圖像4 4鄰域內的像素點的像素值分別取平均,作為這一區域(4 4)點的像素值,得到分辨率更低一級的圖像。依次處理,得到一組分辨率依次降低的圖像。
(2)從待匹配的兩幅圖像中分辨率最低的開始進行匹配搜索,由于這兩幅圖像像素點的數目少,圖像信息也被消除一部分,因此,此匹配位置是不精確的。所以,在分辨率更高一級的圖像中搜索時,應該在上一次匹配位置的附近進行搜索。依次進行下去,直到在原始圖像中尋找到精確的匹配位置。
算法的優點:
(1)該算法思路簡單,容易理解,易于編程實現。
(2)該算法的搜索空間比逐一比較要少,在運算速度較逐一比較法有所提高。
算法的缺點:
(1)算法的精度不高。在是在粗略匹配過程中,移動的步長較大,很有可能將第一幅圖像上所取的網格劃分開,這樣將造成匹配中無法取出與第一幅圖像網格完全匹配的最佳網格,很難達到精確匹配。
(2)對圖像的旋轉變形仍然不能很好的處理。與逐一比較法一樣,該算法只是對其運算速度有所改進,讓搜索空間變小,并無本質變化,因此對圖像的旋轉變形并不能進行相應處理。
3.2.3 相位相關法
相位相關度法是基于頻域的配準常用算法。它將圖像由空域變換到頻域以后再進行配準。該算法利用了互功率譜中的相位信息進行圖像配準,對圖像間的亮度變化不敏感,具有一定的抗干擾能力,而且所獲得的相關峰尖銳突出,位移檢測范圍大,具有較高的匹配精度。
相位相關度法思想是利用傅立葉變換的位移性質,對于兩幅數字圖像s,t,其對應的傅立葉變換為S,T,即:
S=F{s}= e T=F{t}= e (3-6)
若圖像s,t相差一個平移量(x ,y ),即有:
s(x,y) = t(x-x ,y-y ) (3-7)
根據傅立葉變換的位移性質,上式的傅立葉變換為:
S( )=e T( ) (3-8)
也就是說,這兩幅圖像在頻域中具有相同的幅值,只是相位不同,他們之間的相位差可以等效的表示為互功率譜的相位。兩幅圖的互功率譜為:
=e (3-9)
其中*為共扼符號, 表示頻譜幅度。通過對互功率譜式(3-9)進行傅立葉逆變換,在((x,y)空間的(x ,y ),即位移處,將形成一個單位脈沖函數 ,脈沖位置即為兩幅被配準圖像間的相對平移量x 和y
式(3-9)表明,互功率譜的相位等價于圖像間的相位差,故該方法稱作相位相關法。
相位相關度法的優點:
(1)該算法簡單速度快,因此經常被采用。對于其核心技術傅立葉變換,現在己經出現了很多有關的快速算法,這使得該算法的快速性成為眾多算法中的一大優勢。另外,傅立葉變換的硬件實現也比其它算法容易。
(2)該算法抗干擾能力強,對于亮度變化不敏感。
相位相關度法的缺點:
(1)該算法要求圖像有50%左右的重疊區域,在圖像重疊區域很小的時,算法的結果很難保證,容易造成誤匹配。
(2)由于Fourier變換依賴于自身的不變屬性,所以該算法只適用于具有旋轉、平移、比例縮放等變換的圖像配準問題。對于任意變換模型,不能直接進行處理,而要使用控制點方法,控制點方法可以解決諸如多項式、局部變形等問題。
3.3 基于特征的配準
3.3.1 比值匹配法
比值匹配法算法思路是利用圖像中兩列上的部分像素的比值作為模板,即在參考圖像T的重疊區域中分別在兩列上取出部分像素,用它們的比值作為模板,然后在搜索圖S中搜索最佳的匹配。匹配的過程是在搜索圖S中,由左至右依次從間距相同的兩列上取出部分像素,并逐一計算其對應像素值比值;然后將這些比值依次與模板進行比較,其最小差值對應的列就是最佳匹配。這樣在比較中只利用了一組數據,而這組數據利用了兩列像素及其所包含的區域的信息。
該算法的具體實現步驟如下:
(1)在參考圖像T中間隔為c個像素的距離上的兩列像素中,各取m個像素,計算這m個像素的比值,將m個比值存入數組中,將其作為比較的模板。
(2)從搜索圖S中在同樣相隔c個像素的距離上的兩列,各取出m+n個像素,計算其比值,將m+n個比值存入數組。假定垂直錯開距離不超過n個像素,多取的n個像素則可以解決圖像垂直方向上的交錯問題。
(3)利用參考圖像T中的比值模板在搜索圖S中尋找相應的匹配。首先進行垂直方向上的比較,即記錄下搜索圖S中每個比值數組內的最佳匹配。再將每個數組的組內最佳匹配進行比較,即進行水平方向的比較,得到的最小值就認為是全局最佳匹配。此時全局最佳匹配即為圖像間在水平方向上的偏移距離,該全局最佳匹配隊應的組內最佳匹配即為圖像間垂直方向上的偏移距離。
比值匹配法的優點:
(1)算法思路清晰簡單,容易理解,實現起來比較方便。
(2)在匹配計算的時候,計算量小,速度快。
比值匹配法的缺點:
(1)利用圖像的特征信息太少。只利用了兩條豎直的平行特征線段的像素的信息,沒有能夠充分利用了圖像重疊區域的大部分特征信息。雖然算法提到,在搜索圖S中由左至右依次從間距相同的兩列上取出部分像素,計算其對應像素的比值,然后將這些比值依次與模版進行比較,好像是利用了搜索圖S中的重疊區域的大部分圖像信息,但在參考圖像T中,只是任意選擇了兩條特征線,沒有充分利用到參考圖像T的重疊區域的特征信息。
(2)對圖片的采集提出了較高的要求。此算法對照片先進行垂直方向上的比較,然后再進行水平方向上的比較,這樣可以解決上下較小的錯開問題。在采集的時候只能使照相機在水平方向上移動。然而,有時候不可避免的照相機鏡頭會有小角度的旋轉,使得拍攝出來的照片有一定的旋轉,在這個算法中是無法解決的。而且對重疊區域無明顯特征的圖像,比較背景是海洋或者天空,這樣在選取特征模版的時候存在很大的問題。由于照片中存在大塊紋理相同的部分,所以與模版的差別就不大,這樣有很多匹配點,很容易造成誤匹配。
(3)不易對兩條特征線以及特征線之間的距離進行確定。算法中在參考圖像T的重疊區域中取出兩列像素上的部分像素,并沒有給出選擇的限制。然而在利用拼接算法實現自動拼接的時候,如果選取的特征線不是很恰當,那么這樣的特征線算出來的模版就失去了作為模版的意義。同時,在確定特征線間距時,選的過大,則不能充分利用重疊區域的圖像信息。選擇的過小,則計算量太大。
3.3.2 特征點匹配法
比值匹配法利用圖像特征較少,而且在圖像發生小角度旋轉的時候容易發生誤匹配。基于特征點的匹配法可以很好的解決這類問題。特征點主要指圖像中的明顯點,如房屋角點、圓點等。用于點特征提取得算子稱為有利算子或興趣算子。自七十年代以來出現一系列各不相同、各有特色的興趣算子,較知名的有Moravec算子、Hannah算子與Foistner等。
本文采用Moravec算子進行特征點提取:
Moravec算子的基本思想是,以像素點的四個主要方向上最小灰度方差表示該像素點與鄰近像素點的灰度變化情況,即像素點的興趣值,然后在圖像的局部選擇具有最大的興趣值得點(灰度變化明顯得點)作為特征點,具體算法如下:
(1)計算各像素點的興趣值IV (interest value),例如計算像素點(c,r)的興趣值,先在以像素點((cr)為中心的n n的影像窗口中(如圖3.3.2所示的5 5的窗口),計算四個主要方向相鄰像元灰度差的平方和。
圖3.3.2 Moravec 算子特征點提取示意圖
V =
V =
V =
V =
其中k=INT(n/2)。取其中最小者為像元((c,r)的興趣值:
IV(c,r)=V=min{ V , V , V , V }
(2)根據給定的閡值,選擇興趣值大于該闡值的點作為特征點的候選點。設V 為事先設定好的閉值,如果V > V ,則V為特征點的候選點。
闌值得選擇應以候選點中包括需要的特征點,而又不含過多的非特征點。
(3)在候選點中選取局部極大值點作為需要的特征點。在一定大小的窗口內(可不同于興趣值計算窗口),去掉所有不是最大興趣值的候選點,只留下興趣值最大者,該像素即為一個特征點。
在有了以上的特征點提取的基礎上,基于特征點匹配算法主要步驟如下:
(1)在參考圖像T的重疊部分中選取4個區域,每個區域利用Moravec算子找出特征點。
(2)選取以特征點為中心的區域,本文大小選擇7X7的區域,在搜索圖S中尋找最相似的匹配。因為有4個特征點,故有4個特征區域,找到相應的特征區域的匹配也有4塊。
(3)利用這4組匹配的特征區域的中心點,也就是4對匹配的特征點,代入方程式(3-2-2)求解,所求的解即為兩幅圖像間的變換系數。
(3-2-2)
該算法的主要優點:
(1)圖像的特征信息得到了利用,能夠有的放矢,不是在盲目的搜索。
(2)誤匹配發生的概率小,因為利用了參考圖像T包含特征點的特征區域來尋找相應匹配,因此在搜索圖S中相應的特征區域容易確認。
該算法的主要缺點:
(1)計算的代價高,計算量大。該算法需要計算出特征點以及特征點的匹配點,同時還要將所有4對特征點帶入式3-2-2求解變換系數,計算量大。
3.4 本章小結
本章分析了現有的多種圖像配準算法以及圖像配準中的難點。
第四章 圖像融合技術
4.1 圖像融合技術的基本概念
數字圖像融合(Digital Image Fusion)是以圖像為主要研究內容的數據融合技術,是把多個不同模式的圖像傳感器獲得的同一場景的多幅圖像或同一傳感器在不同時刻獲得的同一場景的多幅圖像合成為一幅圖像的過程。由于不同模式的圖像傳感器的成像機理不同,工作電磁波的波長不同,所以不同圖像傳感器獲得的同一場景的多幅圖像之間具有信息的冗余性和互補性,經圖像融合技術得到的合成圖像則可以更全面、更精確地描述所研究的對象。正是由于這一特點,圖像融合技術現已廣泛地應用于軍事、遙感、視覺、圖像處理等領域中。
數字圖像融合是圖像分析的一項重要技術,該技術在數字地圖拼接、全景圖、虛擬現實等領域有著重要應用。雖然Photoshop等圖像處現軟件提供了圖像處理功能,可以通過拖放的方式進行圖像拼接,但由于完全是手工操作,單調乏味,且精度不高,因此,有必要尋找一種方便可行的圖像融合方法。Matlab具有強大的計算功能和豐富的工具箱函數,例如圖像處理和小波工具箱包含了大多數經典算法,并且它提供了一個非常方便快捷的算法研究平臺,可讓用戶把精力集中在算法上而不是編程上,從而能大大提高研究效率。
4.2 手動配準與圖象融合
圖像融合包含圖像配準和無縫合成兩個部分.由于成像時受到各種變形因素的影響,得到的各幅圖像間存在著相對的幾何差異。圖像配準是通過模擬來對圖像間存在著的幾何差異進行校正,把相鄰兩幅圖像合成到同一坐標系下,并使得相同景物在不同的局部圖像中對應起來,以便于圖像無縫合成。本文采用Matlab中的cpselect、cp2tform函數完成幾何配準。cpselect函數顯示圖像界面,手動在兩幅圖像的重疊部分選取配準控制點,Matlab自動進行亞像素分析,由cp2tform函數值正重疊部分的幾何差異。Matlab中的cp2tform函數能修正6種變形,分別是圖(b):線性相似;圖(c):仿射;圖(d):投影;圖(e):多頂式;圖(o:分段線性;圖(g):局部加權平均。前4種為全局變換,后兩種為局部變換,如圖I所示,圖(a)為修正結果;圖(b)至圖(g)為對應的變形。
圖1-1 cp2tform函數能修正的6種幾何變形
圖像配準之后,由于圖像重疊區域之間差異的存在,如果將圖像象素簡單疊加,拼按處就會出現明顯的拼接縫,因此需要一種技術修正待拼接圖像拼接縫附近的顏色值,使之平滑過渡,實現無縫合成。傳統的融合方法多是在時間域對圖像進行算術運算,沒有考慮處理圖像時其相應頻率域的變化。從上講,拼接縫的消除相當于圖像顏色或灰度曲面的光滑連接,但實際上圖像的拼接與曲面的光滑不同,圖像顏色或灰度曲面的光滑表現為對圖像的模糊化,從而導致圖像模糊不清。
4.3 圖像融合規則
圖像的融合規則(Fusion rule)是圖像融合的核心,融合規則的好壞直接影響融合圖像的速度和質量。
Burt提出了基于像素選取的融合規則,在將原圖像分解成不同分辨率圖像的基礎上,選取絕對值最大的像素值(或系數)作為融合后的像素值(或系數)。這是基于在不同分辨率圖像中,具有較大值的像素(或系數)包含更多的圖像信息。
Petrovic和Xydeas提出了考慮分解層內各圖像(若存在多個圖像)及分解層間的相關性的像素選取融合規則。蒲恬在應用小波變換進行圖像融合時,根據人類視覺系統對局部對比度敏感的特性,采用了基于對比度的像素選取融合規則。
基于像素的融合選取僅是以單個像素作為融合對象,它并未考慮圖像相鄰像素間的相關性,因此融合結果不是很理想?紤]圖像相鄰像素間的相關性,Burt和Kolczynski提出了基于區域特性選擇的加權平均融合規則,將像素值(或系數)的融合選取與其所在的局部區域聯系起來。
在Lietal提出的融合規則中,其在選取窗口區域中較大的像素值(或系數)作為融合后像素值(或系數)的同時,還考慮了窗口區域像素(或系數)的相關性。Chibani和Houacine在其融合規則中,通過計算輸入原圖像相應窗口區域中像素絕對值相比較大的個數,決定融合像素的選取;诖翱趨^域的融合規則由于考慮相鄰像素的相關性,因此減少了融合像素的錯誤選取。融合效果得到提高。
ZZhang和Blum提出了基于區域的融合規則,將圖像中每個像素均看作區域或邊緣的一部分,并用區域和邊界等圖像信息來融合選取。采用這種融合規則所得到的融合效果較好,但此規則相對其他融合規則要復雜。對于復雜的圖像,此規則不易于實現。
4.4 圖像融合方法
迄今為止,數據融合方法主要是在像元級和特征級上進行的。常用的融合方法有HIS融合法、KL變換融合法、高通濾波融合法、小波變換融合法、金字塔變換融合法、樣條變換融合法等。下面簡要介紹其中的幾種方法。
(1) HIS融合法
HIS融合法在多傳感器影象像元融合方面應用較廣,例如:一低分辨率三波段圖象與一高分辨率單波段圖象進行 融合處理。這種方法將三個波段的低分辨率的數據通過HIS變換轉換到HIS空間,同時將單波段高分辨率圖象進行對比度拉伸以使其灰度的均值與方差和HIS空間中亮度分量圖象一致,然后將拉伸過的高分辨率圖象作為新的亮度分量代入HIS反變換到原始空間中。這樣獲得的高分辨率彩色圖象既具有較高空間分辨率,同時又具有與影象相同的色調和飽和度,有利于目視解譯和識別。
。2) KL變換融合法
KL變換融合法又稱為主成分分析法。與HIS變換法類似,它將低分辨率的圖象(三個波段或更多)作為輸入分量進行主成分分析,而將高分辨率圖象拉伸使其具有于第一主成分相同的均值和方差,然后用拉伸后的高分辨率影象代替主成分變換的第一分量進行逆變換。高空間分辨率數據與高光譜分辨率數據通過融合得到的新的數據包含了源圖象的高分辨率和高光譜分辨率特征,保留了原圖象的高頻信息。這樣,融合圖象上目標細部特征更加清晰,光譜信息更加豐富。
。3) 高通濾波融合法
高通濾波融合法將高分辨率圖象中的邊緣信息提取出來,加入到低分辨率高光譜圖象中。首先,通過高通濾波器提取高分辨率圖象中的高頻分量,然后將高通濾波結果加入到高光譜分辨率的圖象中,形成高頻特征信息突出的融合影象。
。4) 小波變換融合法
利用離散的小波變換,將N幅待融合的圖象的每一幅分解成M幅子圖象,然后在每一級上對來自N幅待融合圖象的M幅子圖象進行融合,得到該級的融合圖象。在得到所有M級的融合圖象后,實施逆變換得到融合結果。
4.5 圖像融合步驟
目前國內外己有大量圖像融合技術的研究報道,不論應用何種技術方法,必須遵守的基本原則是兩張或多張圖像上對應的每一點都應對位準確。由于研究對象、目的不同,圖像融合方法亦可多種多樣,其主要步驟歸納如下:
(1) 預處理:對獲取的兩種圖像數據進行去噪、增強等處理,統一數據格式、圖像大小和分辨率。對序列斷層圖像作三維重建和顯示,根據目標特點建立數學模型;
SHAPE \* MERGEFORMAT
圖3-1 圖像融合步驟示意圖
(2) 分割目標和選擇配準特征點:在二維或三維情況下,對目標物或興趣區進行分割。選取的特點應是同一標記在兩個圖像上的對應點,該物理標記可以是人工標記,也可以是人體解剖特征點;
(3 )利用特征點進行圖像配準:可視作兩個數據集間的線性或非線性變換,使變換后的兩個數據集的誤差達到某種準則的最小值;
(4) 融合圖像創建:配準后的兩種模式的圖像在同一坐標系下將各自的有用信息融合表達成二維或三維圖像;
(5) 參數提取:從融合圖像中提取和測量特征參數,定性、定量分析
4.6 本章小結
本章主要介紹了圖像融合的概念,方法以及步驟。
第五章 圖像拼接matlab實現
5.1 Matlab簡介
MATLAB 的名稱源自 Matrix Laboratory ,它是一種科學計算軟件,專門以矩陣的形式處理數據。 MATLAB 將高性能的數值計算和可視化集成在一起,并提供了大量的內置函數,從而被廣泛地應用于科學計算、控制系統、信息處理等領域的分析、仿真和設計工作,而且利用 MATLAB 產品的開放式結構,可以非常容易地對 MATLAB 的功能進行擴充,從而在不斷深化對問題認識的同時,不斷完善 MATLAB 產品以提高產品自身的競爭能力。
Matlab有如下特點:
1.編程效率高
它是一種面向科學與工程計算的高級語言,允許用數學形式的語言編寫程序,且比Basic、Fortran和C等語言更加接近我們書寫計算公式的思維方式,用Matlab編寫程序猶如在演算紙上排列出公式與求解問題。Matlab編寫簡單,所以編程效率高,易學易懂。
2.用戶使用方便
Matlab語言是一種解釋執行的語言(在沒被專門的工具編譯之前),它靈活、方便,其調試程序手段豐富,調試速度快,需要學習時間少。人們用任何一種語言編寫程序和調試程序一般都要經過四個步驟:編輯、編譯、連接以及執行和調試。各個步驟之間是順序關系,編程的過程就是在它們之間作瀑布型的循環。
3.擴充能力強
高版本的Matlab語言有豐富的庫函數,在進行復雜的數學運算時可以直接調用,而且Matlab的庫函數同用戶文件在形成上一樣,所以用戶文件也可作為Matlab的庫函數來調用。
4.語句簡單,內涵豐富
Mat1ab語言中最基本最重要的成分是函數,其一般形式為[a,6,c……] = fun(d,e,f,……),即一個函數由函數名,輸入變量d,e,f,……和輸出變量a,b,c……組成,同一函數名F,不同數目的輸入變量(包括無輸入變量)及不同數目的輸出變量,代表著不同的含義(有點像面向對象中的多態性。。
5.高效方便的矩陣和數組運算
Matlab語言象Basic、Fortran和C語言一樣規定了矩陣的算術運算符、關系運算符、運算符、條件運算符及賦值運算符,而且這些運算符大部分可以毫無改變地照搬到數組間的運算,有些如算術運算符只要增加“·”就可用于數組間的運算,另外,它不需定義數組的維數,并給出矩陣函數、特殊矩陣專門的庫函數,使之在求解諸如信號處理、建模、系統識別、控制、優化等領域的問題時,顯得大為簡捷、高效、方便,這是其它高級語言所不能比擬的。
6.方便的繪圖功能
Matlab的繪圖是十分方便的,它有一系列繪圖函數(命令),例如線性坐標、對數坐標,半對數坐標及極坐標,均只需調用不同的繪圖函數(命令),在圖上標出圖題、XY軸標注,格(柵)繪制也只需調用相應的命令,簡單易行。另外,在調用繪圖函數時調整自變量可繪出不變顏色的點、線、復線或多重線。這種為科學研究著想的設計是通用的編程語言所不及的。
總之,Matlab語言的設計思想可以說代表了當前計算機高級語言的發展方向。我們相信,在不斷使用中,讀者會發現它的巨大潛力。因此本文采用matlab來實現本文的算法。
5.2 各算法程序
5.2.1 一般方法
圖像融合是通過一個數學模型把來自不同傳感器的多幅圖像綜合成一幅滿足特定應用需求的圖像的過程,從而可以有效地把不同圖像傳感器的優點結合起來,提高對圖像信息分析和提取的能力。簡單的圖像融合方法不對參加融合的源圖像進行任何變換和分解,而是直接對源圖像中的各對應像素分別進行選擇、平均或加權平均、多元回歸或其它數學運算等處理后,最終合成一幅融合圖像。
對于圖像融合的對象,可以分為兩大類,即多光譜圖像(通常為RGB彩色圖像)與灰度圖像之間的融合,以及灰度圖像之間的融合;叶葓D像之間的融合,在大體上可分為三大類。一類是簡單融合方法,包括將空間對準的兩幅圖像直接求加權平均值。另一類方法是基于金字塔形分解和重建算法的融合方法,主要包括梯度金字塔法、對比度和比率金字塔法以及拉普拉斯金字塔法等,它們首先構造輸入圖像的金字塔,再按一定的特征選擇方法取值形成融合金字塔,通過對金字塔實施逆變換進行圖像重建,最終生成融合圖像,它們的融合效果要遠優于第一類方法,然而它也有很多不盡如人意的地方。還有一類方法就是近幾年興起的基于小波變換的圖像融合方法,它通常采用多分辨分析和Mallat快速算法,通過在各層的特征域上進行有針對性的融合,比較容易提取原始圖像的結構信息和細節信息,所以融合效果要好于基于金字塔形變換的圖像融合法。這是因為小波變換更為緊湊;小波表達式提供了方向信息,而金字塔表達式未將空間方向選擇性引入分解過程;由于可以選擇正交小波核,因此不同分辨率包含的信息是唯一的,而金字塔分解在兩個不同的尺度之間含有冗余,另外金字塔不同級的數據相關,很難知道兩級之間的相似性是由于冗余還是圖像本身的性質引起的;金字塔的重構過程可能具有不穩定性,特別是兩幅圖像存在明顯差異區域時,融合圖像會出現斑塊,而小波變換圖像融合則沒有類似的問題。此外,小波變換具有完善重建能力保證了信號在分解重構過程中沒有信息損失和信息冗余產生。
5.2.2 PCA算法程序
基于PCA的圖像融合:又稱K-L變換法,它的幾何意義是把原始特征空間的特征軸旋轉到平行于混合集群結構軸的方向去,得到新的特征軸。實際操作是將原來的各個因素指標(這些指標中部分有相關關系)重新組合,組合后的新指標是互不相關的。在由這些新指標組成的新特征軸中,只用前幾個分量圖像就能完全表征原始集群的有效信息,圖像中彼此相關的數據被壓縮,而特征得到了突出,此方法在對于具有相關因子的多源遙感數據進行融合時具有顯著優勢。
基于PCA的融合算法程序:
function Y = fuse_pca(M1, M2)
%Y = fuse_pca(M1, M2) image fusion with PCA method
%
% M1 - input image #1
% M2 - input image #2
%
% Y - fused image
% (Oliver Rockinger 16.08.99)
% check inputs
[z1 s1] = size(M1);
[z2 s2] = size(M2);
if (z1 ~= z2) | (s1 ~= s2)
error('Input images are not of same size');
end;
% compute, select & normalize eigenvalues
[V, D] = eig(cov([M1(:) M2(:)]));
if (D(1,1) > D(2,2))
a = V(:,1)./sum(V(:,1));
else
a = V(:,2)./sum(V(:,2));
end;
% and fuse
Y = a(1)*M1+a(2)*M2;
5.2.3 金字塔(Pyramid)算法程序
金字塔圖像融合法:用金字塔在空間上表示圖像是一種簡單方便的方法。概括地說金字塔圖像融合法就是將參加融合的每幅源圖像作金字塔表示,將所有圖像的金字塔表示在各相應層上以一定的融合規則融合,可得到合成的金字塔。將合成的金字塔,用金字塔生成的逆過程重構圖像,則可得到融合圖像。金字塔可分為:Laplacian金字塔、Gaussian金字塔、梯度金字塔、形態金字塔等。
基于FSD Pyramid的圖像融合算法程序:
function Y = fuse_fsd(M1, M2, zt, ap, mp)
%Y = fuse_fsd(M1, M2, zt, ap, mp) image fusion with fsd pyramid
%
% M1 - input image A
% M2 - input image B
% zt - maximum decomposition level
% ap - coefficient selection highpass (see selc.m)
% mp - coefficient selection base image (see selb.m)
%
% Y - fused image
% (Oliver Rockinger 16.08.99)
% check inputs
[z1 s1] = size(M1);
[z2 s2] = size(M2);
if (z1 ~= z2) | (s1 ~= s2)
error('Input images are not of same size');
end;
% define filter
w = [1 4 6 4 1] / 16;
% cells for selected images
E = cell(1,zt);
% loop over decomposition depth -> analysis
for i1 = 1:zt
% calculate and store actual image size
[z s] = size(M1);
zl(i1) = z; sl(i1) = s;
% check if image expansion necessary
if (floor(z/2) ~= z/2), ew(1) = 1; else, ew(1) = 0; end;
if (floor(s/2) ~= s/2), ew(2) = 1; else, ew(2) = 0; end;
% perform expansion if necessary
if (any(ew))
M1 = adb(M1,ew);
M2 = adb(M2,ew);
end;
% perform filtering
G1 = conv2(conv2(es2(M1,2), w, 'valid'),w', 'valid');
G2 = conv2(conv2(es2(M2,2), w, 'valid'),w', 'valid');
% select coefficients and store them
E(i1) = {selc(M1-G1, M2-G2, ap)};
% decimate
M1 = dec2(G1);
M2 = dec2(G2);
end;
% select base coefficients of last decompostion stage
M1 = selb(M1,M2,mp);
% loop over decomposition depth -> synthesis
for i1 = zt:-1:1
% undecimate and interpolate
M1T = conv2(conv2(es2(undec2(M1), 2), 2*w, 'valid'), 2*w', 'valid');
% add coefficients
M1 = M1T + E{i1};
% select valid image region
M1 = M1(1:zl(i1),1:sl(i1));
end;
% copy image
Y = M1;
5.2 .4 小波變換(DWT)算法程序
在眾多的圖像融合技術中,基于小波變換的圖像融合方法已成為現今研究的一個熱點。這類算法主要是利用人眼對局部對比度的變化比較敏感這一事實,根據一定的融合規則,在多幅原圖像中選擇出最顯著的特征,例如邊緣、線段等,并將這些特征保留在最終的合成圖像中。在一幅圖像的小波變換中,絕對值較大的小波系數對應于邊緣這些較為顯著的特征,所以大部分基于小波變換的圖像融合算法主要研究如何選擇合成圖像中的小波系數,也就是三個方向上的高頻系數,從而達到保留圖像邊緣的目的。雖然小波系數(高頻系數)的選擇對于保留圖像的邊緣等特征具有非常主要的作用,但尺度系數(低頻系數)決定了圖像的輪廓,正確地選擇尺度系數對提高合成圖像的視覺效果具有舉足輕重的作用。
基于SIDWT(Shift Invariance Discrete Wavelet Transform)小波變換的算法程序:
function Y = fuse_sih(M1, M2, zt, ap, mp)
%Y = fuse_sih(M1, M2, zt, ap, mp) image fusion with SIDWT, Wavelet is Haar
%
% M1 - input image A
% M2 - input image B
% zt - maximum decomposition level
% ap - coefficient selection highpass (see selc.m)
% mp - coefficient selection base image (see selb.m)
%
% Y - fused image
% (Oliver Rockinger 16.08.99)
% check inputs
[z1 s1] = size(M1);
[z2 s2] = size(M2);
if (z1 ~= z2) | (s1 ~= s2)
error('Input images are not of same size');
end;
% cells for selected images
E = cell(3,zt);
% loop over decomposition depth -> analysis
for i1 = 1:zt
% calculate and store actual image size
[z s] = size(M1);
zl(i1) = z; sl(i1) = s;
% define actual filters (inserting zeros between coefficients)
h1 = [zeros(1,floor(2^(i1-2))), 0.5, zeros(1,floor(2^(i1-1)-1)), 0.5, zeros(1,max([floor(2^(i1-2)),1]))];
g1 = [zeros(1,floor(2^(i1-2))), 0.5, zeros(1,floor(2^(i1-1)-1)), -0.5, zeros(1,max([floor(2^(i1-2)),1]))];
fh = floor(length(h1)/2);
% image A
Z1 = conv2(es(M1, fh, 1), g1, 'valid');
A1 = conv2(es(Z1, fh, 2), g1','valid');
A2 = conv2(es(Z1, fh, 2), h1','valid');
Z1 = conv2(es(M1, fh, 1), h1, 'valid');
A3 = conv2(es(Z1, fh, 2), g1','valid');
A4 = conv2(es(Z1, fh, 2), h1','valid');
% image B
Z1 = conv2(es(M2, fh, 1), g1, 'valid');
B1 = conv2(es(Z1, fh, 2), g1','valid');
B2 = conv2(es(Z1, fh, 2), h1','valid');
Z1 = conv2(es(M2, fh, 1), h1, 'valid');
B3 = conv2(es(Z1, fh, 2), g1','valid');
B4 = conv2(es(Z1, fh, 2), h1','valid');
% select coefficients and store them
E(1,i1) = {selc(A1, B1, ap)};
E(2,i1) = {selc(A2, B2, ap)};
E(3,i1) = {selc(A3, B3, ap)};
% copy input image for next decomposition stage
M1 = A4;
M2 = B4;
end;
% select base coefficients of last decompostion stage
A4 = selb(A4,B4,mp);
% loop over decomposition depth -> synthesis
for i1 = zt:-1:1
% define actual filters (inserting zeros between coefficients)
h2 = fliplr([zeros(1,floor(2^(i1-2))), 0.5, zeros(1,floor(2^(i1-1)-1)), 0.5, zeros(1,max([floor(2^(i1-2)),1]))]);
g2 = fliplr([zeros(1,floor(2^(i1-2))), 0.5, zeros(1,floor(2^(i1-1)-1)), -0.5, zeros(1,max([floor(2^(i1-2)),1]))]);
fh = floor(length(h2)/2);
% filter (rows)
A4 = conv2(es(A4, fh, 2), h2', 'valid');
A3 = conv2(es(E{3,i1}, fh, 2), g2', 'valid');
A2 = conv2(es(E{2,i1}, fh, 2), h2', 'valid');
A1 = conv2(es(E{1,i1}, fh, 2), g2', 'valid');
% filter (columns)
A4 = conv2(es(A4+A3, fh, 1), h2, 'valid');
A2 = conv2(es(A2+A1, fh, 1), g2, 'valid');
% add images
A4 = A4 + A2;
end;
% copy image
Y = A4;
5.3實驗結果
下面將本文的算法用于多聚焦圖像的融合。多聚焦圖像指的是對相同的場景用不同的焦距進行拍攝,得到鏡頭聚焦目標不同的多個圖像。經過圖像融合技術后,就可以得到一個所有目標都聚焦清晰的圖像。圖5-1中左邊的目標較為清晰,圖5-2中右邊的目標較為清晰。
圖5-1 聚焦在左邊的圖像
圖5-2 聚焦在右邊的圖像
我們分別利用基于PCA的算法、金字塔圖像融合法和小波變換法的算法程序得到的的融合圖像結果,如圖5-3、圖5-4、圖5-5所示
圖5-3 基于PCA算法的融合圖像
圖5-4 基于金字塔圖像融合算法的融合圖像
圖5-5 基于SIDWT小波變換的融合圖像
從實驗結果可以看出,三種方案都可以得到較滿意的視覺效果,消除了原圖像的聚焦差異,提高了圖像的清晰度,在合成圖像中左、右兩邊的目標都很清晰。但通過比較分析,我們可以看出基于小波變換的融合圖像(圖5-5)最為清晰,所表現的圖像細節效果最好,重影現象消除得最干凈。圖5-3的清晰度不夠,而圖5-4的細節表現力較弱,只有圖5-5的邊緣最清晰,重影消除地最干凈,細節得到了最好地保留。
第六章 與展望
6.1 本論文工作的總結
圖像拼接技術一直是視覺、圖像處理和計算機圖形學的熱點研究方向。它可以用來建立大視角的高分辨率圖像,在虛擬現實領域、圖像處理領域、遙感技術領域和軍事領域中均有廣泛的應用。
本文總結了前人在圖像拼接領域的研究成果和研究現狀,按照圖像拼接的流程(圖像預處理、圖像配準和圖像融合),詳細介紹了圖像拼接技術,主要完成的工作有:(1)圖像預處理主要指對圖像進行幾何畸變校正和噪聲點的抑制等,讓參考圖像和待拼接圖像不存在明顯的幾何畸變。
(2)圖像配準主要指對參考圖像和待拼接圖像中的匹配信息進行提取,在提取出的信息中尋找最佳的匹配,完成圖像間的對齊。圖像配準是圖像拼接技術中的核心部分。本文分析了現有的多種圖像配準算法。
(3)圖像融合指在完成圖像匹配以后,對圖像進行縫合,并對縫合的邊界進行平滑處理,讓縫合自然過渡。
(4)論文的最后簡要介紹了利用matlab實現的圖像拼接軟件,該軟件實現了本文討論到的所有方法。
6.2展望
經過3個月的研究,本文對圖像拼接技術的研究涉及到了現有圖像拼接領域的大多方法。但對于這一研究領域來說,本文所作的工作只是滄海一粟。事實上,還有很多圖像拼接問題值得去研究和解決,由于時間的關系,本文沒有做進一步的研究。
根據圖像拼接技術的研究體會,本人認為以下幾個方面有待于進一步研究:
(1)本文的圖像拼接算法的研究,是基于兩幅圖像間重疊區域并不存在運動的物體的假設的。但是在有些情況下,待拼接的圖像采集過程中,會有運動的物體出現。如果在重疊區域存在運動物體的情況下,如何消除運動物體對拼接圖像帶來的影響例如,兩幅圖像因為重疊區域的運動物體,在合成的圖像中該區域出現重影),是需要進一步研究的問題。
(2)本文討論的圖像拼接算法,并不是針對特定圖像的研究。但是,圖像拼接在用于實際應用的時候,有時是針對某一特定的圖像。如何通過特定目標的特征從圖像中提取出特定目標(例如,人臉、足球),以此來幫助完成圖像拼接,這需要加深對圖像中特定目標的理解和分割。因此,如何更好的理解圖像,分割出特定圖像中的目標物體,通過特征物體的配準來完成圖像拼接,是一個可以重點研究的方向。
參考文獻
1.鐘力,胡曉峰.重疊圖像拼接算法.中國圖像圖形學報.1998/5/3
2. L. G. Brown. A survey of image registration techniques. ACM Computer
Surveys, 1992/4/24
3.陳永強,王啟付.虛擬中變形圖像拼接技術研究.華中科技大學學報.2001/1/29
4. Richard Szeliski. Video mosaics for virtual environments. Computer
Graphics and Applications, IEEE, Mar 1996.
5.于為,郁道銀,鄒群峰.醫學超聲圖像的處理與拼接.中國生物醫學上程學報,1999
6.王小睿,吳信才.遙感多圖像的自動配準方法.中國圖像圖形學報,1997/10/2
7.封靖波,蘇志勛,劉秀平.一種基于相似曲線的全景圖自動拼接算法.計算機學報.2003/11
8. Barbara Zitova, Jan Flusser. Image registration methods:a survey. Imaging and Vision Computing,2003, vo1.21,pp. 977-1000.
9. B. K. Ghaffary, A. A. Sawchuk. A survey of new techniques for I mageregistration and mapping, Proceedings of the SPIE:Applications of Digital Image Processing, Eng.432,1983, pp. 222-239.
10 孫家廣 等,計算機圖形學(第三版),清華大學出版社,1998/9。
11 陳傳波,陸楓,計算機圖形學基礎,出版社, 2004/2。
12 任愛華,計算機圖形學,北京航空航天大學出版社,2005/12。
13 王偉,陸佩忠,數字圖像拼接技術,小型微型計算機系統,2006/6。
14 高文,陳熙霖,計算機視覺,清華大學出版社與廣西科學技術出版社。1999/2。
15 劉靜華,王永生,陸國棟,陳超,計算機繪圖,高等出版社,2006/5。
16 王小睿,吳信才.遙感多圖像的自動配準方法.中國圖像圖形學報,1997
17數字圖象處理:MATLAB版:using MATLAB
18 MATLAB 6.1基礎及應用技巧 李海濤, 鄧櫻編著 北京:國防工業出版社,2002
19 MATLAB 6.5輔助圖像處理 飛思科技產品研發中心編著 北京:電子工業出版社,2003
20 Matlab工具箱應用指南.控制工程篇 徐昕, 李濤, 伯曉晨等編著 北京:電子工業出版社,2000
21 Matlab信號處理與應用 董長虹主編 北京:國防工業出版社,2005
【圖像拼接算法及實現】相關文章:
醫學圖像領域中數字圖像處理的應用論文04-19
談地理圖像投影導學法08-21
數據關聯算法綜述及其性能評估05-05
都市頻道制作網的設計與實現05-29
基于minigui的網真機界面的實現08-05
城市旅游網站的設計與實現論文(精選6篇)05-07
企業知識管理的實現技術和工具的電商論文05-02
企業法律風險防范體系建立的原因及實現路徑08-06
如何通過內部控制實現企業持續性發展05-21