用液晶空間光調(diào)制器(SLM)產(chǎn)生全息圖的GS算法范例

發(fā)布時(shí)間:2024-07-05
一束激光可以分為兩部分,一部分是相位,另一部分是光斑光強(qiáng)分布,他們是相互關(guān)聯(lián)的,可以通過改變光束的相位部分,對(duì)光斑進(jìn)行整形。上述g-s算法(gerchberg–saxton algorithm)就是其中的一種方法。
主要分為四步
1.假設(shè)入射光斑是均勻光強(qiáng),相位因?yàn)槭俏粗?,可以用一個(gè)隨機(jī)相位替代,或者通過target intensity的ifft變化求得
2.然后經(jīng)過fft變化后,得到的是焦距是的光斑分布,光強(qiáng)與target intensity比較近似,但是不夠理想
3.替換上述步驟的光強(qiáng)分布,保留相位分布,得到新的一束激光
4.經(jīng)過ifft變化后保留光斑的相位,作為下一次迭代的初始相位
通過上述步驟的反復(fù)迭代,會(huì)不斷改善approximation to target intensity的光斑。
matlab代碼參考:
%% 數(shù)據(jù)初始化
pic = 'test.jpg'; % 輸入圖片
file = 'phase.bmp'; % 圖片保存位置
num = 1000; % gs迭代次數(shù)
%% 讀取圖片
im = imread(pic);
im = rgb2gray(im);
im = im2double(im);
%% gs算法
im = mat2gray(im);
light = gpuarray(im); % 加入cuda,提高計(jì)算速度
light = ifft2(light); % 計(jì)算初始相位
for n = 1:num
phase = angle(light);
light = 1.*exp(1i*phase); % 1. 均勻光強(qiáng)入射光
light = fft2(light); % 2. 聚焦面上的光強(qiáng)
phase = angle(light);
light = im.*exp(1i*phase); % 3. 理想光斑替換
light = ifft2(light); % 4. 傅里葉逆運(yùn)算
end
% 均勻光入射后再做一次傅里葉變化
phase = angle(light);
light = 1.*exp(1i*phase);
light = fft2(light);
intensity = mat2gray(abs(light));
imshow(intensity);
%% 保存相位圖
phase = gather(phase); % 將phase返回到內(nèi)存中
imwrite(mat2gray(phase), file)
備注:
1.cuda可以提高運(yùn)算的速度,例如上述過程,當(dāng)上述1000此循環(huán),沒有cuda的時(shí)候,循環(huán)過程保持在8秒以上,當(dāng)啟用cuda后,一般在1.1秒左右。
2.隨著迭代次數(shù)的增加,恢復(fù)后的光強(qiáng)越來越清晰
3.通過對(duì)比原始圖和經(jīng)過迭代后的圖片,可以判斷觀察后圖片的恢復(fù)程度
您可以通過我們的了解更多的產(chǎn)品信息,或直接4006-888-532。
上一個(gè):液壓拉伸器的優(yōu)勢(shì)和不足
下一個(gè):英偉達(dá)|jetsonnano開發(fā)使用的基礎(chǔ)詳細(xì)分享

變壓器的作用
合同終止怎么確認(rèn)
0805W8F549KT5E,F(xiàn) 0805 5.49R現(xiàn)貨購(gòu)買,厚聲0805 5.49Ω ±1% 1/8W
二氧化碳培養(yǎng)箱廠家311系列
全民健康體檢管理便攜式智能*SH-10XD型
手持式復(fù)合氣體檢測(cè)儀的功能
excel怎么批量添加前綴字母(excel怎么批量添加前綴0)
數(shù)字式滲水性測(cè)定儀的作用
收縮膨脹率比長(zhǎng)儀型號(hào)實(shí)惠
電腦怎么恢復(fù)出廠設(shè)置windows7(電腦怎么恢復(fù)出廠設(shè)置window10)
十八禁 网站在线观看免费视频_2020av天堂网_一 级 黄 色 片免费网站_绝顶高潮合集Videos