前言:
計算成像這一個領域我斷斷續(xù)續(xù)關注已有一段時間,但是實操去進行coding的經(jīng)驗還相對有限,本文及后續(xù)系列文章旨在分享我對計算成像領域的認識、相關算法總結,相關器件和光學系統(tǒng)設計等。長期關注我的讀者可能已經(jīng)注意到,我的專業(yè)領域主要集中在器件、物理、硬件層面,雖然計算成像我斷斷續(xù)續(xù)關注已有一段時間,對于全息重建、ptycho、TIE,橫向剪切干涉、單像素等有一些摸索,但是實操經(jīng)驗還相對有限,對于算法和系統(tǒng)層面的深入理解也有所欠缺,如果本文存在任何疏漏,懇請各位不吝賜教!也希望相關同行能多多交流~
/00 ?計算相位成像算法概述/
要實現(xiàn)相位信息獲取,最直接的方法是通過干涉將相位信息轉化為強度信息,包括干涉全息(離軸干涉和同軸干涉)、橫向剪切干涉等,此外還可通過非干涉的方式實現(xiàn)相位復原,計算相位成像算法中最常見的非干涉算法包括迭代法(典型代表是GS算法,ptychography PIE算法)和直接法(TIE算法)。
常見的相位成像技術,參考文獻9
本系列文章會對主要的的相位成像算法進行一個簡要介紹并分享網(wǎng)上的開源代碼供讀者學習,包括 TIE,ptychography,F(xiàn)ourier ptycho,GS,inline holography等,這些算法都是計算相位成像領域的關鍵技術,它們用于從各種測量數(shù)據(jù)中恢復物體的相位信息。以下是每種技術的簡要介紹:
TIE (Transport of Intensity Equation):
-
- 基于光強傳輸方程,利用了光波在傳播過程中的相位與強度之間的關系實現(xiàn)對相位進行直接求解。
Ptychography:
-
- 一種基于掃描成像的相位恢復技術,通過移動樣品或探測器來實現(xiàn)多次掃描,并控制實現(xiàn)每次掃描區(qū)域保證一定的重疊度,多張掃描圖在重建的迭代過程中關聯(lián)起來,通過分析這些強度圖,從而可以重建樣品的高分辨相位信息。
Inline Holography:
-
- 即同軸全息術,是一種全息成像技術,其中參考光束和物光束在同一軸線上。無透鏡和共路干涉系統(tǒng)中用到較多。
Off-axis Holography:
-
- 非同軸全息術,與同軸全息術不同,參考光束和物光束在空間中有一定的角度偏移。這種偏移有助于避免重建過程中的零級衍射和雙圖像問題。
QWLSI (Quantitative Wide-field Light Sheet Imaging):
-
- 四波橫向剪切技術,通過光柵將波前復制四分并”橫向位移“后與其余復制波前兩兩干涉。從而通過這一自干涉實現(xiàn)相位信息獲取。
DPC (Differential Phase Contrast):
-
- 差分相位成像,與QWLSI有一定的類似性。
Fourier Ptychography:
- 在傅里葉面進行掃描的疊層成像。
/01 G-S算法/
Gerchberg-Saxton(GS)算法是一種通過強度測量獲取相位信息的迭代式相位恢復算法,這種算法最初由Roy Gerchberg和Warren Saxton在1972年提出。
通過以兩個不同平面上(可以是入射光場面和成像面,或者圖像平面和遠場傅里葉平面,最常選擇的是后者,即以空間域和頻率域作為兩個平面)獲得的強度信息作為已知和約束條件,通過正向傳播和反向傳播,迭代恢復波前的相位,從而獲得復振幅圖像信息。經(jīng)典的GS算法是利用傅里葉變換及其逆變換來計算光場在兩個平面之間的傳播,其原理是基于角譜傳播。
GS算法的計算過程如圖所示,(1)先通過估算或者隨機生成給出一個初始相位分布,(2)以入射面振幅信息作為已知,乘以相位分布獲得入射面復振幅信息;(3)將入射面復振幅信息通過正向傳播到輸出面,獲得輸出面復振幅信息,(4)將輸出面振幅信息作為已知約束,替換掉傳播得到的復振幅分布中的實部振幅項,(5)以修改后的復振幅圖像反向傳播到入射面獲得新的復振幅圖像,并重復(2-5),以此反復迭代,實現(xiàn)收斂??梢钥吹?,GS求解是迭代式計算過程,因此是一種誤差減小算法。
GS算法的偽代碼如下,其很好的概括了GS算法的核心過程:
A = IFT(Target)
while error criterion is not satisfied
B = Amplitude(Source) * exp(i*Phase(A))
C = FT(B)
D = Amplitude(Target) * exp(i*Phase(C))
A = IFT(D)
end while
Retrieved_Phase = Phase(A)
GS算法是很多迭代式計算相位成像算法的基礎,在編碼成像,疊層成像、全息成像等里也能看到GS算法的影子。雖然 GS 迭代算法可以簡單的方式得到相位分布信息,但是由于算法本身固有的缺陷,GS算法在迭代過程中可能會陷入局部最優(yōu)解。Gerchberg-Saxton (GS) 算法的衍生算法是為了解決原始GS算法在某些情況下收斂速度慢或可能不收斂的問題而開發(fā)的。這些衍生算法通過引入新的迭代策略、優(yōu)化誤差函數(shù)、在更新復振幅時引入權重函數(shù)等方式來改進相位恢復的過程。一些GS衍生算法包括:weighted Gerchberg-Saxton,Adaptive-Adaptive算法,F(xiàn)ienup算法,HIO 算法等
加權GS算法:會先進行數(shù)輪GS算法迭代,之后會將重建圖像平面中的限制條件替換為目標圖像的振幅乘以一個分數(shù)形式的權重系數(shù),然后繼續(xù)運算直到滿足一定的誤差條件。以原始圖像與重建圖像間的歸一 化標準差作為評判標準,加權GS算法比GS算法取得了一定程度的提升且收斂速率會有所提高。
Fienup算法:在重建圖像平面上的限制條件有所不同,不再是將該平面上的光波振幅直接限制為目標圖像振幅,而是設為上次迭代結果與原始圖像振幅的一個函數(shù)與上次迭代結果之和。
AA算法:AA算法(Adaptive-Adaptive method)是在重建圖像平面上的限制條件是將振幅分布設為原始圖像與上次迭代結果的線性組合。
HIO算法:Hybrid Input-Output (HIO) 算法在更新過程引入控制權重參數(shù)調控約束和上次一迭代的占比,從而使得約束的限制作用得以”放松“,核心思想是在迭代過程中引入反饋動態(tài)調整輸入和輸出約束,以加速收斂并提高相位恢復的準確性和魯棒性。
HIO算法原理
廣義的Gerchberg-Saxton算法可以用于任何已知部分約束(以測量數(shù)據(jù)或先驗信息的形式)在兩個域中的每一個中的問題,這兩個域通常是物體(或圖像)域和傅里葉域。只需在這兩個域之間來回變換,在一個域中滿足約束后再返回到另一個域。此外還可以把兩個平面延申到多個平面的迭代。
Multiple-Phase Retrieval 算法,來自參考文獻5
Multiple-Phase Retrieval 算法,來自參考文獻5
除了上述提及的算法外,GS還有很多衍生算法,這里就暫時不一一列舉了。后面有機會在總結介紹一下。
相關GS算法代碼
目前網(wǎng)上有很多GS算法代碼,大家可以通過代碼演示感受GS算法的實現(xiàn)原理。
python代碼:1.https://github.com/kurokuman/Gerchberg-Saxton-algorithm
2.https://blog.csdn.net/xy_optics/article/details/139079428
3.https://github.com/madisousa/Phase-Retrieval-Algorithms-
matlab代碼:1.https://ww2.mathworks.cn/matlabcentral/fileexchange/65979-gerchberg-saxton-algorithm
/02 TIE算法/
TIE(transport of intensity Equation) 算法基于光強傳輸方程,利用了光波在傳播過程中的相位與強度之間的關系實現(xiàn)對相位進行直接求解,光強傳輸方程是一個描述光波的軸向光強變化量和相位定量耦合的偏微分方程。TIE方程指出,光波的相位信息向強度信息的轉化不僅僅依賴于干涉,光波自身的傳播效應就是一種自發(fā)的光波-相位轉化過程。光強傳輸方程可以表示為:
光強傳輸方程是旁軸近似下的推導近似,其可以通過將光波復振幅代入亥姆霍茲方程,然后分離實部虛部得到;也可通過菲涅耳定律再小傳播距離下得到還可通過傍軸近似下坡印廷定理推導得到。
TIE算法原理,來自參考文獻9
從物理本質上講,光強傳輸方程本質是能量守恒定律,相位信息表示了波前信息,波前分布決定了場在沿著垂直傳播方向上的分布情況。根據(jù)光強傳輸方程可以看到,其光強在傳播方向上的變化情況與其波前相位相聯(lián)系,也就與其橫向場分布情況相聯(lián)系,也就是說一個波束在傳播方向上光強的減少必然伴隨著其能量在垂直傳播方向上的再分布,也就是相位的變化。
TIE的求解方法較多,包括格林函數(shù)法,F(xiàn)FT,DCT,迭代DCT,US-TIE等。左超教授在其文章中做了很多相關算法的歸納總結。
光強傳輸方程求解算法對比
由于TIE算法可以直接求解相位,其也可和迭代法結合,以TIE直接求解的相位信息作為初始量,再通過迭代提高恢復的相位信息的準確性。
iTIE+角譜迭代的混合算法
參考文獻:
1、Gerchberg R W. A practical algorithm for the determination of plane from image and diffraction pictures[J]. Optik, 1972, 35(2): 237-246.
2、Fienup J R. Phase retrieval algorithms: a comparison[J]. Applied optics, 1982, 21(15): 2758-2769.
3、Di Leonardo, Roberto, Francesca Ianni, and Giancarlo Ruocco. "Computer generation of optimal holograms for optical trap arrays." Optics Express 15.4 (2007): 1913-1922.
4、同軸數(shù)字全息中的相位恢復算法[J]. Chinese Journal of Lasers, 2014, 41(2): 209006-1.
5、Modified Gerchberg–Saxton (G-S) Algorithm and Its Application
6、Phase hologram optimization with bandwidth constraint strategy for speckle-free optical reconstruction
7、卜浩禎,焦述銘.純相位全息圖優(yōu)化算法[J].液晶與顯示,2021,36(06):810-826.
8、Phase retrieval algorithms: a comparison
9、 Transport of intensity equation: a tutorial
10、《光強傳輸方程》 陳錢、左超著
11、Jialin Zhang, Qian Chen, Jiasong Sun, Long Tian, and Chao Zuo, "On a universal solution to the transport-of-intensity equation," Opt. Lett. 45, 3649-3652 (2020)
12、一種混合迭代算法在大離焦距離TIE相位恢復中的應用,光學學報,2016