本發明涉及圖像處理,尤其涉及一種多聚焦圖像景深融合的方法、系統、計算機可讀存儲介質及計算機程序產品。
背景技術:
1、多聚焦圖像融合(multi-focus?image?fusion)是圖像處理領域中常見的技術之一,旨在通過融合多張具有不同焦點的圖像,得到一張包含所有圖像清晰區域的綜合圖像。該技術廣泛應用于醫學影像、自動駕駛、監控監視、遙感影像等多個領域,尤其在生成清晰的全景圖像、增強圖像細節和提升視覺感知效果方面具有重要作用。
2、在實際應用中,我們常常需要拍攝一系列聚焦位置不同的圖像,以覆蓋場景中所有物體的焦點。然而,由于不同圖像的焦距不同,導致場景中不同位置的物體在不同圖像中的清晰程度不同。通常,某些物體在某張圖像中可能處于清晰狀態,而在其他圖像中則可能處于模糊狀態。因此,在融合這些圖像時,如何保證所有物體的清晰度,并有效去除不清晰區域,是一個至關重要的難題。此外,由于拍攝設備的變化、圖像對焦和成像角度等因素的影響,拍攝的不同圖像可能會在空間位置和方向上有所偏差。這種差異會導致圖像間存在位移、旋轉、尺度變化等幾何變換問題,從而影響融合結果。
3、傳統的融合方法如加權平均法、最大響應法等,雖然簡單易行,但無法充分考慮圖像的細節信息和每個區域的焦點清晰度。因此,如何利用圖像的局部信息,尤其是清晰度信息進行有效融合,成為提升融合效果的關鍵。此外,在多聚焦圖像融合中,常常會面臨由于焦點轉換或對齊誤差引起的邊緣偽影問題。此外,由于圖像融合過程中涉及到不同圖像的局部區域重疊,如何避免圖像拼接時的邊緣效應,保證融合結果的細節和連續性,也是一大挑戰。
4、現有的多聚焦圖像融合技術大致可以分為以下幾類:
5、1)基于像素的融合方法:這種方法主要是通過像素級別的加權平均或選擇最大響應值來進行圖像融合。雖然此類方法簡單易用,但它們忽略了圖像局部信息的復雜性,尤其是對于復雜紋理和邊緣的處理較為粗糙,常常導致圖像細節的丟失或者偽影的產生。
6、2)基于特征的融合方法:這種方法通過提取圖像的特征(如邊緣、角點、紋理等),然后根據特征的重要性進行圖像融合。雖然這種方法能夠在一定程度上保持圖像的細節,但它對圖像配準的精度要求較高,且在處理較為復雜的圖像場景時,可能會出現不準確的特征匹配和不理想的融合效果。
7、3)基于小波變換或拉普拉斯金字塔的融合方法:這類方法通過將圖像分解為多個頻帶(如低頻和高頻分量),然后根據不同頻段的清晰度進行融合。小波變換和拉普拉斯金字塔方法在圖像細節處理上有較好效果,但也存在計算復雜度較高、需要對圖像進行多次分解和重構的問題,導致其在實時性要求較高的場景中應用受限。
8、4)深度學習方法:隨著深度學習的發展,基于神經網絡的圖像融合方法逐漸成為主流。深度學習方法能夠通過學習大規模數據集中的圖像融合模式,自動從數據中提取特征并進行融合。然而,深度學習方法往往需要大量的訓練數據和計算資源,并且在應用于實時處理時存在一定的延遲和計算負擔。
9、綜上所述,現有的多聚焦圖像融合方法大多存在著圖像對齊精度不足、融合效果不理想、計算復雜度較高等問題。尤其是在處理復雜場景時,現有方法仍難以有效解決圖像失真、邊緣偽影等挑戰,迫切需要一種新的圖像融合方法,以提高圖像的清晰度和融合效果。
技術實現思路
1、本發明的目的在于提供一種多聚焦圖像景深融合的方法、系統、計算機可讀存儲介質及計算機程序產品,以解決或至少部分解決上述背景技術中提及的技術問題。
2、為達此目的,本發明采用以下技術方案:
3、第一方面,本發明提供了一種多聚焦圖像景深融合的方法,包括:
4、在同一坐標系下,對輸入的多張聚焦圖像進行對齊;
5、對對齊后的多張聚焦圖像進行預處理,得到去噪后的多張灰度圖像;
6、計算每個像素位置在所有灰度圖像上的清晰度評分,生成清晰度掩碼圖像;
7、根據清晰度掩碼圖像,對對齊后的多張聚焦圖像進行圖像融合。
8、可選地,所述計算每個像素位置在所有灰度圖像上的清晰度評分,生成清晰度掩碼圖像,具體包括:
9、計算每個像素位置在所有灰度圖像上的清晰度評分,構建每個像素位置的清晰度曲線;
10、根據各像素位置的清晰度曲線分別確定各像素位置對應的清晰度掩碼,并生成清晰度掩碼圖像。
11、可選地,清晰度評分的計算方法為:
12、對于像素位置(x,y),其在第i張灰度圖像gi上的清晰度評分ci(x,y),設為第i張灰度圖像gi的局部區域r(x,y)內所有像素的清晰度評分的平均值,計算公式表達為:
13、
14、其中,r(x,y)為窗口大小為k×k的以像素位置(x,y)為中心的局部區域,k為預先設定的參數值;(x′,y′)是局部區域r(x,y)內的像素,拉普拉斯算子是二階導數算子;
15、所述清晰度曲線表達為:
16、{c′1(x,y),c′2(x,y),...,c′n(x,y)};其中,n為灰度圖像的總張數。
17、可選地,所述根據各像素位置的清晰度曲線分別確定各像素位置對應的清晰度掩碼,并生成清晰度掩碼圖像,具體包括:
18、查找所述清晰度曲線中的極大值,以及計算所述清晰度曲線的平均值;
19、根據所查找的極大值與平均值的比較,確定清晰度掩碼圖像的像素值,進而生成清晰度掩碼圖像;
20、其中,極大值p=c′j(x,y),需滿足以下條件:
21、c′j(x,y)>c′j-1(x,y),且c′j(x,y)>c′j+1(x,y),2≤j≤n-1;
22、清晰度曲線的平均值pmean的計算公式為:
23、
24、所述根據所查找的極大值與平均值的比較,確定清晰度掩碼圖像的像素值,進而生成清晰度掩碼圖像,具體包括:
25、根據所查找的極大值與平均值的比較,確定清晰度掩碼圖像在各個像素位置的清晰度掩碼;
26、根據清晰度掩碼圖像在各個像素位置的清晰度掩碼,生成清晰度掩碼圖像;
27、其中,極大值與平均值的比較過程,包括:
28、如果極大值p>pmean的次數等于0,則像素位置(x,y)的清晰度掩碼m(x,y)取值為:
29、
30、如果極大值p>pmean的次數等于1,則取該極大值所在圖像的序號l作為清晰度掩碼圖像在位置(x,y)處的像素值:
31、m(x,y)=l;
32、如果極大值p>pmean的次數大于1,則取最后一個極大值所在圖像的序號m作為清晰度掩碼圖像在位置(x,y)處的像素值:
33、m(x,y)=m。
34、可選地,k的取值范圍為[3-99]。
35、可選地,所述根據清晰度掩碼圖像,對對齊后的多張聚焦圖像進行圖像融合之前,還包括:
36、對所述清晰度掩碼圖像進行平滑濾波處理;具體包括:
37、首先對清晰度掩碼圖像應用中值濾波得到mmed(x,y),方法如下:
38、mmed(x,y)=median({m(x′,y′)|(x′,y′)∈w(x,y)});
39、其中,w(x,y)是以像素位置(x,y)為中心的k×k大小的窗口,m(x′,y′)是窗口內所有的像素值,median()表示從窗口中選取中位數的操作;
40、然后再對中值濾波后的結果應用高斯濾波,得到平滑后的清晰度掩碼圖像,方法如下:
41、msmooth(x,y)=∑(x′,y′)∈w(x,y)g(x′-x,y′-y)·mmed(x′,y′);
42、高斯函數的權重的計算公式為:
43、
44、其中,msmooth(x,y)為清晰度掩碼圖像在位置(x,y)處的像素值;σ是高斯濾波的標準差。
45、可選地,所述根據清晰度掩碼圖像,對對齊后的多張聚焦圖像進行圖像融合,具體實施為:根據平滑后的清晰度掩碼圖像,對對齊后的多張聚焦圖像進行圖像融合,將每個像素位置上的最清晰圖像組合為一張融合圖像;具體包括:
46、根據平滑后的清晰度掩碼圖像在每個像素位置的像素值,選擇相應的圖像進行融合;融合圖像生成公式為:
47、
48、其中:f(x,y)是融合后的圖像在位置(x,y)處的像素值;msmooth(x,y)表示在位置(x,y)上最清晰圖像對應的聚焦圖像的序號;是對齊后的多聚焦圖像中的第msmooth(x,y)張聚焦圖像在位置(x,y)處的像素值。
49、可選地,所述根據清晰度掩碼圖像,對對齊后的多張聚焦圖像進行圖像融合之后,還包括:
50、對融合圖像進行后處理操作,具體包括:
51、計算融合圖像的最小值和最大值;計算方法為:
52、
53、對每個像素f(x,y)進行直方圖拉伸,將融合圖像的最小值和最大值映射到目標范圍[lmin,lmax];
54、
55、其中:fstretch(x,y)是拉伸后的圖像像素值,f(x,y)是原始融合圖像的像素值;fmin和fmax分別是原始融合圖像的最小值和最大值,lmin和lmax分別是目標范圍的最小值和最大值。
56、可選地,所述在同一坐標系下,對輸入的多張聚焦圖像進行對齊,具體包括:
57、設輸入的聚焦圖像的總張數為n,n張聚焦圖像依次記為:i1,i2,...,in,第i張圖像在位置(x,y)處的像素值用ii(x,y)表示,(x,y)為聚焦圖像的空間坐標;
58、選擇n張聚焦圖像中的一張圖像作為參考圖像iref;
59、對于每一張圖像ii,其與參考圖像iref之間的變換表示為一個仿射變換模型:
60、ii(x,y)=ti·iref(x′,y′);
61、其中,ti為變換矩陣,表示圖像ii相對于參考圖像的變換,表示為:
62、
63、其中,a,b,c,d表示變換參數,變換參數包括旋轉和縮放;tx,ty表示平移參數;
64、采用ecc對齊方法,通過優化目標函數來估計變換矩陣,對于圖像iref和ii,ecc相似度度量函數表達為:
65、
66、其中,ti(x,y)是經過變換后的圖像ii中的像素位置,∑x,y表示對所有像素位置求和;
67、通過迭代優化算法優化變換矩陣ti,使得目標函數ecc(ti)最大化;變換參數ti會根據每張圖像與參考圖像之間的對齊誤差逐步迭代更新,直到相似度達到最大,最終得到的變換矩陣ti會被應用到圖像ii,使其與參考圖像對齊,得到所有聚焦圖像在同一坐標系下對齊后的圖像集;
68、其中,對齊后的圖像集中的聚焦圖像在位置(x,y)處的像素值表達為:
69、i′i(x,y)=ti·ii(x,y)。
70、可選地,所述對對齊后的多張聚焦圖像進行預處理,得到去噪后的多張灰度圖像,具體包括:
71、對每一張對齊后的聚焦圖像,若其其圖像類型是彩色圖像,則采用加權平均法轉換為灰度圖像;第i張灰度圖像在位置(x,y)處的灰度值表達為:
72、gi(x,y)=0.2989·r(x,y)+0.5870·g(x,y)+0.1140·b(x,y);其中,對
73、齊后的聚焦圖像在位置(x,y)處的紅色、綠色和藍色通道的像素值分別表示為r(x,y),g(x,y)和b(x,y);
74、對每張灰度圖像進行均值濾波操作以去除噪聲;具體實施為:
75、假設使用大小為k×k的濾波窗口,則均值濾波公式為:
76、
77、其中,(x+m,y+n)表示濾波窗口內的鄰域像素。
78、第二方面,本發明提供了一種多聚焦圖像景深融合的系統,包括:
79、圖像處理模塊,用于在同一坐標系下,對輸入的多張聚焦圖像進行對齊;還用于對對齊后的多張聚焦圖像進行預處理,得到去噪后的多張灰度圖像;
80、掩碼圖像構建模塊,電連接所述圖像處理模塊,用于計算每個像素位置在所有灰度圖像上的清晰度評分,生成清晰度掩碼圖像;
81、圖像融合模塊,分別電連接所述掩碼圖像構建模塊和所述圖像處理模塊,用于根據清晰度掩碼圖像,對對齊后的多張聚焦圖像進行圖像融合。
82、可選地,所述掩碼圖像構建模塊,具體用于計算每個像素位置在所有灰度圖像上的清晰度評分,構建每個像素位置的清晰度曲線;以及,具體用于根據各像素位置的清晰度曲線分別確定各像素位置對應的清晰度掩碼,并生成清晰度掩碼圖像。
83、可選地,清晰度評分的計算方法為:
84、對于像素位置(x,y),其在第i張灰度圖像gi上的清晰度評分c?i(x,y),設為第i張灰度圖像gi的局部區域r(x,y)內所有像素的清晰度評分的平均值,計算公式表達為:
85、
86、其中,r(x,y)為窗口大小為k×k的以像素位置(x,y)為中心的局部區域,k為預先設定的參數值;(x′,y′)是局部區域r(x,y)內的像素,拉普拉斯算子是二階導數算子;
87、所述清晰度曲線表達為:
88、{c′1(x,y),c′2(x,y),...,c′n(x,y)};其中,n為灰度圖像的總張數。
89、可選地,所述根據各像素位置的清晰度曲線分別確定各像素位置對應的清晰度掩碼,并生成清晰度掩碼圖像,具體包括:
90、查找所述清晰度曲線中的極大值,以及計算所述清晰度曲線的平均值;
91、根據所查找的極大值與平均值的比較,確定清晰度掩碼圖像的像素值,進而生成清晰度掩碼圖像;
92、其中,極大值p=c′j(x,y),需滿足以下條件:
93、c′j(x,y)>c′j-1(x,y),且c′j(x,y)>c′j+1(x,y),2≤j≤n-1;
94、清晰度曲線的平均值pmean的計算公式為:
95、
96、所述根據所查找的極大值與平均值的比較,確定清晰度掩碼圖像的像素值,進而生成清晰度掩碼圖像,具體包括:
97、根據所查找的極大值與平均值的比較,確定清晰度掩碼圖像在各個像素位置的清晰度掩碼;
98、根據清晰度掩碼圖像在各個像素位置的清晰度掩碼,生成清晰度掩碼圖像;
99、其中,極大值與平均值的比較過程,包括:
100、如果極大值p>pmean的次數等于0,則像素位置(x,y)的清晰度掩碼m(x,y)取值為:
101、
102、如果極大值p>pmean的次數等于1,則取該極大值所在圖像的序號l作為清晰度掩碼圖像在位置(x,y)處的像素值:
103、m(x,y)=l;
104、如果極大值p>pmean的次數大于1,則取最后一個極大值所在圖像的序號m作為清晰度掩碼圖像在位置(x,y)處的像素值:
105、m(x,y)=m。
106、可選地,k的取值范圍為[3-99]。
107、可選地,所述圖像融合模塊電連接有平滑濾波模塊,所述平滑濾波模塊電連接掩碼圖像構建模塊;
108、所述平滑濾波模塊用于對所述清晰度掩碼圖像進行平滑濾波處理;具體包括:
109、首先對清晰度掩碼圖像應用中值濾波得到mmed(x,y),方法如下:
110、mmed(x,y)=median({m(x′,y′)|(x′,y′)∈w(x,y)});
111、其中,w(x,y)是以像素位置(x,y)為中心的k×k大小的窗口,m(x′,y′)是窗口內所有的像素值,median()表示從窗口中選取中位數的操作;
112、然后再對中值濾波后的結果應用高斯濾波,得到平滑后的清晰度掩碼圖像,方法如下:
113、msmooth(x,y)=∑(x′,y′)∈w(x,y)g(x′-x,y′-y)·mmed(x′,y′);
114、高斯函數的權重的計算公式為:
115、
116、其中,msmooth(x,y)為清晰度掩碼圖像在位置(x,y)處的像素值;σ是高斯濾波的標準差。
117、可選地,所述圖像融合模塊具體用于根據平滑后的清晰度掩碼圖像,對對齊后的多張聚焦圖像進行圖像融合,將每個像素位置上的最清晰圖像組合為一張融合圖像;具體包括:
118、根據平滑后的清晰度掩碼圖像在每個像素位置的像素值,選擇相應的圖像進行融合;融合圖像生成公式為:
119、
120、其中:f(x,y)是融合后的圖像在位置(x,y)處的像素值;msmooth(x,y)表示在位置(x,y)上最清晰圖像對應的聚焦圖像的序號;是對齊后的多聚焦圖像中的第msmooth(x,y)張聚焦圖像在位置(x,y)處的像素值。
121、可選地,所述圖像融合模塊還電連接有圖像后處理模塊;所述圖像后處理模塊用于對融合圖像進行后處理操作,具體包括:
122、計算融合圖像的最小值和最大值;計算方法為:
123、
124、對每個像素f(x,y)進行直方圖拉伸,將融合圖像的最小值和最大值映射到目標范圍[lmin,lmax];
125、
126、其中:fstretch(x,y)是拉伸后的圖像像素值,f(x,y)是原始融合圖像的像素值;fmin和fmax分別是原始融合圖像的最小值和最大值,lmin和lmax分別是目標范圍的最小值和最大值。
127、可選地,所述在同一坐標系下,對輸入的多張聚焦圖像進行對齊,具體包括:
128、設輸入的聚焦圖像的總張數為n,n張聚焦圖像依次記為:i1,i2,...,in,第i張圖像在位置(x,y)處的像素值用ii(x,y)表示,(x,y)為聚焦圖像的空間坐標;
129、選擇n張聚焦圖像中的一張圖像作為參考圖像iref;
130、對于每一張圖像ii,其與參考圖像iref之間的變換表示為一個仿射變換模型:
131、ii(x,y)=ti·iref(x′,y′);
132、其中,ti為變換矩陣,表示圖像ii相對于參考圖像的變換,表示為:
133、
134、其中,a,b,c,d表示變換參數,變換參數包括旋轉和縮放;tx,ty表示平移參數;
135、采用ecc對齊方法,通過優化目標函數來估計變換矩陣,對于圖像iref和ii,ecc相似度度量函數表達為:
136、
137、其中,ti(x,y)是經過變換后的圖像ii中的像素位置,∑x,y表示對所有像素位置求和;
138、通過迭代優化算法優化變換矩陣ti,使得目標函數ecc(ti)最大化;變換參數ti會根據每張圖像與參考圖像之間的對齊誤差逐步迭代更新,直到相似度達到最大,最終得到的變換矩陣ti會被應用到圖像ii,使其與參考圖像對齊,得到所有聚焦圖像在同一坐標系下對齊后的圖像集;
139、其中,對齊后的圖像集中的聚焦圖像在位置(x,y)處的像素值表達為:
140、i′i(x,y)=ti·ii(x,y)。
141、可選地,所述對對齊后的多張聚焦圖像進行預處理,得到去噪后的多張灰度圖像,具體包括:
142、對每一張對齊后的聚焦圖像,若其其圖像類型是彩色圖像,則采用加權平均法轉換為灰度圖像;第i張灰度圖像在位置(x,y)處的灰度值表達為:
143、gi(x,y)=0.2989·r(x,y)+0.5870·g(x,y)+0.1140·b(x,y);其中,對
144、齊后的聚焦圖像在位置(x,y)處的紅色、綠色和藍色通道的像素值分別表示為r(x,y),g(x,y)和b(x,y);
145、對每張灰度圖像進行均值濾波操作以去除噪聲;具體實施為:
146、假設使用大小為k×k的濾波窗口,則均值濾波公式為:
147、
148、其中,(x+m,y+n)表示濾波窗口內的鄰域像素。
149、第三方面,本發明還提供了一種計算機可讀存儲介質,存儲介質中存儲有至少一條指令,指令由處理器加載并執行以實現如上所述的一種多聚焦圖像景深融合的方法。
150、第四方面,本發明還提供了一種計算機程序產品,包括計算機程序/指令,其特征在于,當計算機程序/指令被處理器執行時,實現以上所述的所述的一種多聚焦圖像景深融合的方法。
151、與現有技術相比,本發明的有益效果為:
152、本發明提供了一種高效、精準的多聚焦圖像景深融合方法,解決對齊精度不足、融合效果不理想、計算復雜度較高等問題;尤其是在處理復雜場景時,本方法能有效解決圖像失真、邊緣偽影等。