主頁 >  其他 > 人類能看懂的衍射光學公式(內含基爾霍夫公式,瑞利--索末菲公式,角譜衍射公式,菲涅爾積分公式,以及菲涅爾衍射的S-FFT,T-FFT,D-FFT演算法))

人類能看懂的衍射光學公式(內含基爾霍夫公式,瑞利--索末菲公式,角譜衍射公式,菲涅爾積分公式,以及菲涅爾衍射的S-FFT,T-FFT,D-FFT演算法))

2020-12-24 13:06:17 其他

在這里插入圖片描述

考慮一些有基礎的小伙伴的需求,開頭先給結論,感興趣的可以慢慢看后面的推導程序,

結論:

基爾霍夫,瑞利–索末菲公式: U ( x , y , d ) = 1 j λ ∫ ? ∞ ∞ ∫ ? ∞ ∞ U ( x 0 , y 0 , 0 ) e x p ( j k r ) r K ( θ ) d x 0 d y 0 U(x,y,d) = \frac{1}{j\lambda} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U(x_0,y_0,0) \frac{exp(jkr)}{r} K(\theta)dx_0dy_0 U(x,y,d)=jλ1?????U(x0?,y0?,0)rexp(jkr)?K(θ)dx0?dy0?

1. K ( θ ) = c o s ( θ ) + 1 2 K(\theta) = \frac{cos(\theta)+1}{2} K(θ)=2cos(θ)+1? 稱為基爾霍夫公式;

2. K ( θ ) = c o s ( θ ) K(\theta) = cos(\theta) K(θ)=cos(θ) 稱為第一種瑞利–索末菲公式;

3. K ( θ ) = 1 K(\theta) = 1 K(θ)=1 稱為第二種瑞利–索末菲公式;

角譜: U ( x , y , d ) = ? ? [ ? [ U ( x , y , 0 ) ] H ( f x , f y ) ] U(x,y,d) = \digamma^- [\digamma[U(x,y,0)]H(f_x,f_y)] U(x,y,d)=??[?[U(x,y,0)]H(fx?,fy?)]

菲涅爾衍射積分: U ( x , y , d ) = e x p ( j k d ) j λ d ∫ ? ∞ ∞ ∫ ? ∞ ∞ U ( x 0 , y 0 , 0 ) e x p [ j k 2 d [ ( x ? x 0 ) 2 + ( y ? y 0 ) 2 ] ] d x 0 d y 0 U(x,y,d) = \frac{exp(jkd)}{j\lambda d} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U(x_0,y_0,0) exp[\frac{jk}{2d} [(x-x_0)^2+(y-y_0)^2] ] dx_0dy_0 U(x,y,d)=jλdexp(jkd)?????U(x0?,y0?,0)exp[2djk?[(x?x0?)2+(y?y0?)2]]dx0?dy0?

夫瑯禾費衍射: U ( x , y , d ) = e x p ( j k d ) j λ d e x p [ j k 2 d ( x 2 + y 2 ) ] ∫ ? ∞ ∞ ∫ ? ∞ ∞ U 0 ( x 0 , y 0 , 0 ) e x p [ ? j 2 π λ d ( x x 0 + y y 0 ) ] d x 0 d y 0 U(x,y,d) = \frac{exp(jkd)}{j\lambda d} exp[\frac{jk}{2d}(x^2+y^2)] \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U_0(x_0,y_0,0) exp[\frac{-j2\pi}{\lambda d} (xx_0+yy_0) ] dx_0dy_0 U(x,y,d)=jλdexp(jkd)?exp[2djk?(x2+y2)]????U0?(x0?,y0?,0)exp[λd?j2π?(xx0?+yy0?)]dx0?dy0?

S-FFT: U ( x , y , d ) = e x p ( j k d ) j k d e x p [ j k 2 d ( x 2 + y 2 ) ] ? [ U ( x 0 , y 0 , 0 ) e x p [ j k 2 d ( x 0 2 + y 0 2 ) ] ] U(x,y,d) = \frac{exp(jkd)}{jkd} exp[\frac{jk}{2d}(x^2+y^2)] \digamma[U(x_0,y_0,0)exp[\frac{jk}{2d}(x_0^2+y_0^2)] ] U(x,y,d)=jkdexp(jkd)?exp[2djk?(x2+y2)]?[U(x0?,y0?,0)exp[2djk?(x02?+y02?)]]

T-FFT: U ( x , y , d ) = e x p ( j k d ) j λ d ? ? [ ? [ U ( x 0 , y 0 , 0 ) ] ? [ e x p [ j k 2 d ( x 2 + y 2 ) ] ] ] U(x,y,d) = \frac{exp(jkd)}{j\lambda d} \digamma^-[\digamma[U(x_0,y_0,0)] \digamma [exp[\frac{jk}{2d}(x^2+y^2)]] ] U(x,y,d)=jλdexp(jkd)???[?[U(x0?,y0?,0)]?[exp[2djk?(x2+y2)]]]

D-FFT: U ( x , y , d ) = ? ? [ ? [ U ( x 0 , y 0 , 0 ) ] e x p [ j k d ( 1 ? λ 2 2 ( f x 2 + f y 2 ) ) ] ] U(x,y,d) = \digamma^- [\digamma [U(x_0,y_0,0)]exp[jkd(1-\frac{\lambda^2}{2}(f_x^2+f_y^2))] ] U(x,y,d)=??[?[U(x0?,y0?,0)]exp[jkd(1?2λ2?(fx2?+fy2?))]]








接下來是上述衍射公式的推導程序:

首先,對一些基本概念和衍射的意義進行說明,

基本概念和衍射的意義

衍射(diffraction)是指波遇到障礙物時偏離原來直線傳播的物理現象,

波面的任何變形(通過相位物體)或者說波面(波前)上光場的復振幅分布受到任何空間調制,都將導致衍射現象的發生,而使通過障礙物以后的光場的復振幅重新分布,

衍射屏:導致衍射發生的障礙物

如果不涉及光傳播與變換程序中障礙物或光學元件結構尺寸接近于光波長的情況,對衍射問題的研究不鄰接衍射平面,
(這句話我TM想了好久沒想懂鄰接什么意思,查閱的時候一個個參考這句話參考得飛起但是都沒解釋,以我淺薄的理解就是在納米級別的情況下衍射作用可能不會發生,也就是本來應該導致衍射發生的障礙物不再認為是障礙物,)

標量衍射理論:將電場強度E視為標量,描述光傳播的物理程序和求解波動方程的方法,

傍軸近似:當光束發散較小且觀測區域的寬度遠小于光傳播距離,

實際應用中需要計算的往往是垂直于光學系統光軸或光束傳播方向的空間平面上的光波場,并且通常將z軸視為光學系統的光軸,也就是說,需要表述的平面是與光軸垂直的平面,
所以我們先以如下三維圖建立一個坐標系方便后續公式推導,設衍射屏與觀察屏的距離為d,矢徑 r = ( x ? x 0 ) 2 + ( y ? y 0 ) 2 + d 2 r = \sqrt{(x-x_0)^2+(y-y_0)^2+d^2} r=(x?x0?)2+(y?y0?)2+d2 ?, θ \theta θ 代表點 ( x 0 , y 0 , 0 ) (x_0,y_0,0) (x0?,y0?,0) 到點 ( x , y , d ) (x,y,d) (x,y,d) 的矢徑 r 與 ( x 0 , y 0 , 0 ) (x_0,y_0,0) (x0?,y0?,0)點法線 n n n的夾角,波矢 k = 2 π / λ k = 2\pi / \lambda k=2π/λ U ( x , y , 0 ) U(x,y,0) U(x,y,0)以及 U ( x , y , d ) U(x,y,d) U(x,y,d)分別為衍射屏及觀察屏上的光波的復振幅, G 0 ( f x , f y ) G_0(f_x,f_y) G0?(fx?,fy?), G d ( f x , f y ) G_d(f_x,f_y) Gd?(fx?,fy?)分別為其對應的頻譜函式,

在這里插入圖片描述
基爾霍夫公式,瑞利–索末菲公式,以及角譜傳播公式分別是亥姆霍茲方程的三個解(光是一種電磁波,故其傳播特性可由經典電磁場理論的麥克斯韋方程推出,這里不具體展開,其實是筆者對于波動方程真的深惡痛絕),在標量衍射理論框架下,光傳播的物理程序可以嚴格地由基爾霍夫公式和瑞利–索末菲公式以及衍射的角譜的傳播公式表示,

如果知道空間中垂直于光傳播方向的一個平面上的光波場,便能計算該平面前后的空間光波場分布尤其是在觀察屏上的分布,
(xd后面沒有圖片了,全是密密麻麻的公式和文字)







基爾霍夫,瑞利–索末菲公式:

如果只是告訴大家基爾霍夫,瑞利–索末菲公式是亥姆霍茲方程的解而來可能難以理解其物理含義,但如果大家通過惠更斯–菲涅爾原理,以及場論中的格林定理電磁場的邊值條件等一步步推導就能逐漸窺見那些大佬的邏輯所在,這里就不展開來了,移步工程光學一書吧,

基爾霍夫,瑞利–索末菲公式兩者在數學上有統一的公式: U ( x , y , d ) = 1 j λ ∫ ? ∞ ∞ ∫ ? ∞ ∞ U ( x 0 , y 0 , 0 ) e x p ( j k r ) r K ( θ ) d x 0 d y 0 U(x,y,d) = \frac{1}{j\lambda} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U(x_0,y_0,0) \frac{exp(jkr)}{r} K(\theta)dx_0dy_0 U(x,y,d)=jλ1?????U(x0?,y0?,0)rexp(jkr)?K(θ)dx0?dy0?

(其中 r = ( x ? x 0 ) 2 + ( y ? y 0 ) 2 + d 2 r = \sqrt{(x-x_0)^2+(y-y_0)^2+d^2} r=(x?x0?)2+(y?y0?)2+d2 ?, θ \theta θ 代表點 ( x 0 , y 0 , 0 ) (x_0,y_0,0) (x0?,y0?,0) 到點 ( x , y , d ) (x,y,d) (x,y,d) 的矢徑 r 與 ( x 0 , y 0 , 0 ) (x_0,y_0,0) (x0?,y0?,0)點法線 n n n的夾角,, K ( θ ) K(\theta) K(θ)為傾斜因子(由惠更斯–菲涅爾原理可知, K ( θ ) K(\theta) K(θ)表示子波的振幅隨面元法線與子波所在點到傳播點的夾角 θ \theta θ的變化),而不同的傾斜因子對應不同的公式:

1. K ( θ ) = c o s ( θ ) + 1 2 K(\theta) = \frac{cos(\theta)+1}{2} K(θ)=2cos(θ)+1? 稱為基爾霍夫公式;

2. K ( θ ) = c o s ( θ ) K(\theta) = cos(\theta) K(θ)=cos(θ) 稱為第一種瑞利–索末菲公式;

3. K ( θ ) = 1 K(\theta) = 1 K(θ)=1 稱為第二種瑞利–索末菲公式;

在實際問題中, θ \theta θ通常較小,三個公式的傾斜因子均接近1,

觀察屏上的光波的復振幅 U ( x , y , d ) = 1 j λ ∫ ? ∞ ∞ ∫ ? ∞ ∞ U ( x 0 , y 0 , 0 ) e x p ( j k r ) r d x 0 d y 0 U(x,y,d) = \frac{1}{j\lambda} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U(x_0,y_0,0) \frac{exp(jkr)}{r}dx_0dy_0 U(x,y,d)=jλ1?????U(x0?,y0?,0)rexp(jkr)?dx0?dy0?

在傍軸情況(當光束發散較小且觀測區域的寬度遠小于光傳播距離)下,積分函式 e x p ( j k r ) r \frac{exp(jkr)}{r} rexp(jkr)?中的分母r可以由d來代替,因為這對于光波振幅無大的影響, r = ( x ? x 0 ) 2 + ( y ? y 0 ) 2 + d 2 r = \sqrt{(x-x_0)^2+(y-y_0)^2+d^2} r=(x?x0?)2+(y?y0?)2+d2 ?,這是由于傍軸情況下光束與z軸平行傳播時不會發散,也就是在x軸y軸上的分量不會有移動故 ( x ? x 0 ) 2 + ( y ? y 0 ) 2 = 0 (x-x_0)^2+(y-y_0)^2 = 0 (x?x0?)2+(y?y0?)2=0 r ≈ d r \approx d rd
但是對于指數部分的r不能進行這樣簡單的處理,其原因是指數部分r的輕微變化會引起甚至大于 2 π 2\pi 2π的相位變化,

r = ( x ? x 0 ) 2 + ( y ? y 0 ) 2 + d 2 r = \sqrt{(x-x_0)^2+(y-y_0)^2+d^2} r=(x?x0?)2+(y?y0?)2+d2 ?(起初建立坐標系時就有的)

e x p ( j k r ) exp(jkr) exp(jkr)中的 r 進行泰勒展開, r ≈ d [ 1 + ( x ? x 0 ) 2 + ( y ? y 0 ) 2 2 d 2 ? [ ( x ? x 0 ) 2 + ( y ? y 0 ) 2 ] 2 8 d 4 ] r \approx d[1+ \frac{(x-x_0)^2+(y-y_0)^2}{2d^2} - \frac{[(x-x_0)^2+(y-y_0)^2]^2}{8d^4}] rd[1+2d2(x?x0?)2+(y?y0?)2??8d4[(x?x0?)2+(y?y0?)2]2?]……,第兩項之后的值過小,只保留泰勒展開的前兩項,故

e x p ( j k r ) exp(jkr) exp(jkr)中的 r ≈ d + ( x ? x 0 ) 2 + ( y ? y 0 ) 2 2 d r \approx d+ \frac{(x-x_0)^2+(y-y_0)^2}{2d} rd+2d(x?x0?)2+(y?y0?)2?
綜上, e x p ( j k r ) r ≈ e x p [ j k [ d + ( x ? x 0 ) 2 + ( y ? y 0 ) 2 2 d ] ] d \frac{exp(jkr)}{r} \approx \frac{exp[jk[d+ \frac{(x-x_0)^2+(y-y_0)^2}{2d}]]}{d} rexp(jkr)?dexp[jk[d+2d(x?x0?)2+(y?y0?)2?]]?

化簡后觀察屏上的光波的復振幅 U ( x , y , d ) = e x p ( j k d ) j λ d ∫ ? ∞ ∞ ∫ ? ∞ ∞ U 0 ( x 0 , y 0 , 0 ) e x p [ j k 2 d [ ( x ? x 0 ) 2 + ( y ? y 0 ) 2 ] ] d x 0 d y 0 U(x,y,d) = \frac{exp(jkd)}{j\lambda d} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U_0(x_0,y_0,0) exp[\frac{jk}{2d} [(x-x_0)^2+(y-y_0)^2] ] dx_0dy_0 U(x,y,d)=jλdexp(jkd)?????U0?(x0?,y0?,0)exp[2djk?[(x?x0?)2+(y?y0?)2]]dx0?dy0?

上述那條公式也就是菲涅爾衍射積分,

而指數部分 r ≈ d + ( x ? x 0 ) 2 + ( y ? y 0 ) 2 2 d r \approx d+ \frac{(x-x_0)^2+(y-y_0)^2}{2d} rd+2d(x?x0?)2+(y?y0?)2?一般被稱為菲涅爾近似,滿足菲涅爾近似條件的衍射稱為菲涅爾衍射,







角譜衍射:

亥姆霍茲方程的第三個解便是角譜公式,在角譜理論中,光波沿z方向傳播的結果,在頻域內表現為將衍射屏上的光波場的頻譜 G 0 ( f x , f y ) G_0(f_x,f_y) G0?fx?,fy?乘以一個與z有關的相位延遲因子 e x p [ j 2 π λ z ( 1 ? ( λ f x ) 2 ? ( λ f y ) 2 ] exp[j\frac{2\pi}{\lambda}z\sqrt{(1-(\lambda f_x)^2-(\lambda f_y)^2}] exp[jλ2π?z(1?(λfx?)2?(λfy?)2 ?],等效于通過一個半徑為1/ λ \lambda λ的理想低通濾波器,在線性系統理論中,該相位延遲因子即為衍射在頻域的傳遞函式 H ( f x , f y ) H(f_x,f_y) H(fx?,fy?),表明衍射問題可以視為是光波場通過一個線性空間不變系統的變換程序,( f x f_x fx? f y f_y fy?為頻域譜上對應的坐標系,也就是空間頻率,)

叨叨叨一堆話是不是不理解為什么呢?其實角譜理論就是將平面上的復振幅分布分解為多個不同傳播方向的平面波的線性疊加,類似于傅里葉變換把一個時域分量分解成多個頻率分量的總和那樣,

總結成公式就更為簡潔易懂了,就是

G d ( f x , f y ) = G 0 ( f x , f y ) e x p [ j 2 π λ z ( 1 ? ( λ f x ) 2 ? ( λ f y ) 2 ] G_d(f_x,f_y)=G_0(f_x,f_y)exp[j\frac{2\pi}{\lambda}z\sqrt{(1-(\lambda f_x)^2-(\lambda f_y)^2}] Gd?(fx?,fy?)=G0?(fx?,fy?)exp[jλ2π?z(1?(λfx?)2?(λfy?)2 ?]

G 0 ( f x , f y ) G_0(f_x,f_y) G0?(fx?,fy?), G d ( f x , f y ) G_d(f_x,f_y) Gd?(fx?,fy?)分別為 U ( x , y , 0 ) U(x,y,0) U(x,y,0) U ( x , y , d ) U(x,y,d) U(x,y,d)的頻譜函式,)

由上式可知若 1 ? ( λ f x ) 2 ? ( λ f y ) 2 < 0 1-(\lambda f_x)^2-(\lambda f_y)^2<0 1?(λfx?)2?(λfy?)2<0,則角譜分量將隨z的增大按指數規律急劇衰減,光波只存在于鄰近衍射屏的一個非常薄的區域,故只有 1 ? ( λ f x ) 2 ? ( λ f y ) 2 > 0 1-(\lambda f_x)^2-(\lambda f_y)^2>0 1?(λfx?)2?(λfy?)2>0,即 f x 2 + f y 2 < 1 λ 2 f_x^2+f_y^2<\frac{1}{\lambda^2} fx2?+fy2?<λ21?,角譜分量才會到達觀察屏,

(以 f x = f y f_x=f_y fx?=fy? λ \lambda λ=632nm為例, f x = f y < 1.1188 e + 06 f_x=f_y<1.1188e+06 fx?=fy?<1.1188e+06 m)

簡寫下上面的公式,設衍射距離為d,定義角譜衍射的傳遞函式為

H ( f x , f y ) = e x p [ j 2 π λ d ( 1 ? ( λ f x ) 2 ? ( λ f y ) 2 H(f_x,f_y) = exp[j\frac{2\pi}{\lambda}d\sqrt{(1-(\lambda f_x)^2-(\lambda f_y)^2} H(fx?,fy?)=exp[jλ2π?d(1?(λfx?)2?(λfy?)2 ?

則角譜衍射公式可簡寫為

$U(x,y,d) = \digamma^- [\digamma[U(x,y,0)]H(f_x,f_y)] $

當傍軸近似(當光束發散較小且觀測區域的寬度遠小于光傳播距離)時,即 f x , f y f_x,f_y fx?,fy?較小時, ( 1 ? ( λ f x ) 2 ? ( λ f y ) 2 \sqrt{(1-(\lambda f_x)^2-(\lambda f_y)^2} (1?(λfx?)2?(λfy?)2 ?泰勒系數展開,同樣只保留前兩項

( 1 ? ( λ f x ) 2 ? ( λ f y ) 2 = 1 ? 1 2 λ 2 ( f x 2 + f y 2 ) + 1 8 λ 4 ( f x 2 + f y 2 ) \sqrt{(1-(\lambda f_x)^2-(\lambda f_y)^2} = 1-\frac{1}{2}\lambda^2(f_x^2+f_y^2)+\frac{1}{8}\lambda^4(f_x^2+f_y^2) (1?(λfx?)2?(λfy?)2 ?=1?21?λ2(fx2?+fy2?)+81?λ4(fx2?+fy2?)……),故

角譜衍射的傳遞函式 H ( f x , f y ) = e x p [ j k d ( 1 ? λ 2 2 ( f x 2 + f y 2 ) ) ] H(f_x,f_y) = exp[jkd(1-\frac{\lambda^2}{2}(f_x^2+f_y^2))] H(fx?,fy?)=exp[jkd(1?2λ2?(fx2?+fy2?))]

這只是對 H ( f x , f y ) H(f_x,f_y) H(fx?,fy?)的一個小近似,然后根據傅里葉變換性質,頻域分量的相乘等于空域分量的卷積,

G d ( f x , f y ) = G 0 ( f x , f y ) H ( f x , f y ) G_d(f_x,f_y)=G_0(f_x,f_y)H(f_x,f_y) Gd?(fx?,fy?)=G0?(fx?,fy?)H(fx?,fy?)便變換為

U ( x , y , d ) = U ( x 0 , y 0 , 0 ) ? ? ? [ H ( f x , f y ) ] U(x,y,d) = U(x_0,y_0,0) * \digamma^-[H(f_x,f_y)] U(x,y,d)=U(x0?,y0?,0)???[H(fx?,fy?)]

? ? [ H ( f x , f y ) ] \digamma^-[H(f_x,f_y)] ??[H(fx?,fy?)]有決議解,即 ? ? [ H ( f x , f y ) ] = e x p ( j k d ) j λ d e x p [ j k 2 d ( x 2 + y 2 ) ] \digamma^-[H(f_x,f_y)] = \frac{exp(jkd)}{j\lambda d} exp[\frac{jk}{2d}(x^2+y^2)] ??[H(fx?,fy?)]=jλdexp(jkd)?exp[2djk?(x2+y2)]

角譜衍射卷積形式的公式即可改寫為菲涅爾衍射積分

U ( x , y , d ) = e x p ( j k d ) j λ d ∫ ? ∞ ∞ ∫ ? ∞ ∞ U 0 ( x , y , 0 ) e x p [ j k 2 d [ ( x ? x 0 ) 2 + ( y ? y 0 ) 2 ] ] d x 0 d y 0 U(x,y,d) = \frac{exp(jkd)}{j\lambda d} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U_0(x,y,0) exp[\frac{jk}{2d} [(x-x_0)^2+(y-y_0)^2] ] dx_0dy_0 U(x,y,d)=jλdexp(jkd)?????U0?(x,y,0)exp[2djk?[(x?x0?)2+(y?y0?)2]]dx0?dy0?

兜兜轉轉,最后還是你,盡管角譜衍射公式,基爾霍夫公式以及瑞利–索末菲公式有不同的形式,但它們的傍軸近似具有相同的形式,也就是菲涅爾積分形式,







夫瑯禾費衍射:

若菲涅爾衍射積分的傅里葉變換中,如果 d > > k ( x 0 2 + y 0 2 ) m a x 2 d>>\frac{k(x_0^2+y_0^2)_{max}}{2} d>>2k(x02?+y02?)max??,即衍射屏距離觀察屏無限遠,則 j k ( x 0 2 + y 0 2 ) 2 d ≈ 0 \frac{jk(x_0^2+y_0^2)}{2d} \approx 0 2djk(x02?+y02?)?0 e x p [ j k ( x 0 2 + y 0 2 ) 2 d ] ≈ 1 exp[\frac{jk(x_0^2+y_0^2)}{2d}] \approx 1 exp[2djk(x02?+y02?)?]1,故夫瑯禾費衍射場可簡單地變為 U 0 ( x 0 , y 0 , 0 ) U_0(x_0,y_0,0) U0?(x0?,y0?,0)的傅里葉變換,

U ( x , y , d ) = e x p ( j k d ) j λ d e x p [ j k 2 d ( x 2 + y 2 ) ] ∫ ? ∞ ∞ ∫ ? ∞ ∞ U 0 ( x , y , 0 ) e x p [ ? j 2 π d λ ( x x 0 + y y 0 ) ] d x 0 d y 0 U(x,y,d) = \frac{exp(jkd)}{j\lambda d} exp[\frac{jk}{2d}(x^2+y^2)] \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U_0(x,y,0) exp[\frac{-j2\pi}{d\lambda} (xx_0+yy_0) ] dx_0dy_0 U(x,y,d)=jλdexp(jkd)?exp[2djk?(x2+y2)]????U0?(x,y,0)exp[dλ?j2π?(xx0?+yy0?)]dx0?dy0?

將上式對比于基爾霍夫–瑞利索末菲公式 U ( x , y , d ) = 1 j λ ∫ ? ∞ ∞ ∫ ? ∞ ∞ U ( x 0 , y 0 , 0 ) e x p ( j k r ) r d x 0 d y 0 U(x,y,d) = \frac{1}{j\lambda} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U(x_0,y_0,0) \frac{exp(jkr)}{r} dx_0dy_0 U(x,y,d)=jλ1?????U(x0?,y0?,0)rexp(jkr)?dx0?dy0? e x p [ j k ( x 0 2 + y 0 2 ) 2 d ] ≈ 1 exp[\frac{jk(x_0^2+y_0^2)}{2d}]\approx1 exp[2djk(x02?+y02?)?]1也就是對指數部分r進行近似,

r ≈ d + x 2 + y 2 2 d ? x x 0 + y y 0 d r \approx d+\frac{x^2+y^2}{2d}-\frac{xx_0+yy_0}{d} rd+2dx2+y2??dxx0?+yy0??

也就是在菲涅爾近似 r ≈ d + ( x ? x 0 ) 2 + ( y ? y 0 ) 2 2 d r \approx d+ \frac{(x-x_0)^2+(y-y_0)^2}{2d} rd+2d(x?x0?)2+(y?y0?)2? 的基礎上 x 0 2 + y 0 2 = 0 x_0^2 + y_0^2 = 0 x02?+y02?=0 ,可以理解為對比于在無限遠的觀察屏,衍射屏上的坐標分量已經小到可以忽略不計了,

上述近似即被稱為夫瑯禾費近似,滿足夫瑯禾費近似的衍射即被稱為夫瑯禾費衍射,

夫瑯禾費近似成立所要求的條件較為苛刻,但如果物平面光波場為一個會聚的球面波,則夫瑯禾費近似很容易滿足,而會聚球面波應用上可以很容易通過透鏡實作,這也是觀察夫瑯禾費衍射情況下在觀察屏前加透鏡的原因,








接下來是對菲涅爾衍射積分的三種常用演算法的推導:

S-FFT(single fast Fourier transform algorithm):單次傅里葉變換演算法

菲涅爾衍射積分: U ( x , y , d ) = e x p ( j k d ) j λ d ∫ ? ∞ ∞ ∫ ? ∞ ∞ U 0 ( x , y , 0 ) e x p [ j k 2 d [ ( x ? x 0 ) 2 + ( y ? y 0 ) 2 ] ] d x 0 d y 0 U(x,y,d) = \frac{exp(jkd)}{j\lambda d} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U_0(x,y,0) exp[\frac{jk}{2d} [(x-x_0)^2+(y-y_0)^2] ] dx_0dy_0 U(x,y,d)=jλdexp(jkd)?????U0?(x,y,0)exp[2djk?[(x?x0?)2+(y?y0?)2]]dx0?dy0?

對上式二次相位因子 e x p [ j k 2 d [ ( x ? x 0 ) 2 + ( y ? y 0 ) 2 ] ] exp[\frac{jk}{2d} [(x-x_0)^2+(y-y_0)^2] ] exp[2djk?[(x?x0?)2+(y?y0?)2]]進行展開,波矢 k = 2 π / λ k = 2\pi / \lambda k=2π/λ ,并將與積分變數無關的項提到積分號前則得到

U ( x , y , d ) = e x p ( j k d ) j λ d e x p [ j k 2 d ( x 2 + y 2 ) ] ∫ ? ∞ ∞ ∫ ? ∞ ∞ U 0 ( x , y , 0 ) e x p [ j k 2 d [ ( x 0 2 + y 0 2 ] ] e x p [ ? j 2 π ( x λ d x 0 + y λ d y 0 ) ] d x 0 d y 0 U(x,y,d) = \frac{exp(jkd)}{j\lambda d} exp[\frac{jk}{2d}(x^2+y^2)] \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U_0(x,y,0) exp[\frac{jk}{2d} [(x_0^2+y_0^2] ] exp[-j2\pi(\frac{x}{\lambda d}x_0 + \frac{y}{\lambda d}y_0)] dx_0dy_0 U(x,y,d)=jλdexp(jkd)?exp[2djk?(x2+y2)]????U0?(x,y,0)exp[2djk?[(x02?+y02?]]exp[?j2π(λdx?x0?+λdy?y0?)]dx0?dy0?

對比于傅里葉變換的公式

F ( f x , f y ) = ∫ ? ∞ ∞ ∫ ? ∞ ∞ f ( x , y ) e x p [ ? j 2 π ( f x x + f y y ) ] d x d y F(f_x,f_y) = \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} f(x,y)exp[-j2\pi(f_x x+f_y y)]dxdy F(fx?,fy?)=????f(x,y)exp[?j2π(fx?x+fy?y)]dxdy

便可以將二重積分項等同為 U 0 ( x , y , 0 ) e x p [ j k 2 d ( x 0 2 + y 0 2 ) ] U_0(x,y,0)exp[\frac{jk}{2d}(x_0^2+y_0^2)] U0?(x,y,0)exp[2djk?(x02?+y02?)]的傅里葉變換,設 G 1 ( f x , f y ) G_1(f_x,f_y) G1?(fx?,fy?) U 0 ( x , y , 0 ) e x p [ j k 2 d ( x 0 2 + y 0 2 ) ] U_0(x,y,0)exp[\frac{jk}{2d}(x_0^2+y_0^2)] U0?(x,y,0)exp[2djk?(x02?+y02?)]的傅里葉變換

f x = x λ d f_x = \frac{x}{\lambda d} fx?=λdx? f y = y λ d f_y = \frac{y}{\lambda d} fy?=λdy?

故菲涅爾衍射積分的S-FFT演算法為: U ( x , y , d ) = e x p ( j k d ) j λ d e x p [ j k 2 d ( x 2 + y 2 ) ] G 1 ( f x , f y ) U(x,y,d) = \frac{exp(jkd)}{j \lambda d} exp[\frac{jk}{2d}(x^2+y^2)] G_1(f_x,f_y) U(x,y,d)=jλdexp(jkd)?exp[2djk?(x2+y2)]G1?(fx?,fy?)





T-FFT(triple fast Fourier transform algorithm):三次傅里葉變換演算法

(兩次傅里葉變換一次逆傅里葉變換),這種演算法常被稱為菲涅爾衍射的卷積演算法,

菲涅爾衍射積分: U ( x , y , d ) = e x p ( j k d ) j λ d ∫ ? ∞ ∞ ∫ ? ∞ ∞ U 0 ( x , y , 0 ) e x p [ j k 2 d [ ( x ? x 0 ) 2 + ( y ? y 0 ) 2 ] ] d x 0 d y 0 U(x,y,d) = \frac{exp(jkd)}{j\lambda d} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U_0(x,y,0) exp[\frac{jk}{2d} [(x-x_0)^2+(y-y_0)^2] ] dx_0dy_0 U(x,y,d)=jλdexp(jkd)?????U0?(x,y,0)exp[2djk?[(x?x0?)2+(y?y0?)2]]dx0?dy0?

類比于卷積公式 y ( t ) = ∫ ? ∞ ∞ x ( p ) h ( t ? p ) d p = x ( t ) ? y(t) = \int_{-\infty}^{\infty} x(p)h(t-p)dp = x(t)\bigotimes y(t)=??x(p)h(t?p)dp=x(t)?h(t)

定義脈沖回應

h ( x , y ) = e x p ( j k d ) j λ d e x p [ j k 2 d ( x 2 + y 2 ) ] h(x,y) = \frac{exp(jkd)}{j\lambda d} exp[\frac{jk}{2d}(x^2+y^2)] h(x,y)=jλdexp(jkd)?exp[2djk?(x2+y2)]

便可將菲涅爾衍射積分可轉化為 U ( x 0 , y 0 , 0 ) U(x_0,y_0,0) U(x0?,y0?,0) h ( x , y ) h(x,y) h(x,y)的卷積,

U ( x , y , d ) = U ( x 0 , y 0 , 0 ) ? h ( x , y ) U(x,y,d) = U(x_0,y_0,0) \bigotimes h(x,y) U(x,y,d)=U(x0?,y0?,0)?h(x,y)

把脈沖項的無關項提前,則式子變為

U ( x , y , d ) = e x p ( j k d ) j λ d U ( x 0 , y 0 , 0 ) ? e x p [ j k 2 d ( x 2 + y 2 ) ] U(x,y,d) = \frac{exp(jkd)}{j\lambda d} U(x_0,y_0,0) \bigotimes exp[\frac{jk}{2d}(x^2+y^2)] U(x,y,d)=jλdexp(jkd)?U(x0?,y0?,0)?exp[2djk?(x2+y2)]

但由于在空域完成卷積運算比較花機器時間,所以通常要轉換到頻域進行計算,根據頻譜特性,空域的卷積等于頻域的乘積,故需要對 U ( x 0 , y 0 , 0 ) U(x_0,y_0,0) U(x0?,y0?,0) e x p [ j k 2 d ( x 2 + y 2 ) ] exp[\frac{jk}{2d}(x^2+y^2)] exp[2djk?(x2+y2)]各做一次傅里葉變換,再對它們的乘積做一次逆傅里葉變換,

故菲涅爾衍射積分的T-FFT演算法為: U ( x , y , d ) = e x p ( j k d ) j λ d ? ? [ ? [ U ( x 0 , y 0 , 0 ) ] ? [ e x p [ j k 2 d ( x 2 + y 2 ) ] ] ] U(x,y,d) = \frac{exp(jkd)}{j\lambda d} \digamma^-[\digamma[U(x_0,y_0,0)] \digamma [exp[\frac{jk}{2d}(x^2+y^2)]] ] U(x,y,d)=jλdexp(jkd)???[?[U(x0?,y0?,0)]?[exp[2djk?(x2+y2)]]]

與S-FFT演算法不同的是,觀察面的尺寸與衍射面的尺寸是一樣的,是因為在計算中在頻域進行相乘時,要求頻譜中相同頻率分量對應相乘,故最高頻率也就必須相同,抽樣數一樣對應的幾何尺寸也就相等了,





D-FFT(double fast Fourier transform algorithm):兩次傅里葉變換演算法

與T-FFT演算法一樣,該演算法也常被稱為卷積演算法,

菲涅爾衍射積分: U ( x , y , d ) = e x p ( j k d ) j λ d ∫ ? ∞ ∞ ∫ ? ∞ ∞ U 0 ( x , y , 0 ) e x p [ j k 2 d [ ( x ? x 0 ) 2 + ( y ? y 0 ) 2 ] ] d x 0 d y 0 U(x,y,d) = \frac{exp(jkd)}{j\lambda d} \int_{-\infty}^{\infty}\int_{-\infty}^{\infty} U_0(x,y,0) exp[\frac{jk}{2d} [(x-x_0)^2+(y-y_0)^2] ] dx_0dy_0 U(x,y,d)=jλdexp(jkd)?????U0?(x,y,0)exp[2djk?[(x?x0?)2+(y?y0?)2]]dx0?dy0?

把D-FFT放在T-FFT后面講是因為這兩者有相似之處,

同樣設脈沖回應 h ( x , y ) = e x p ( j k d ) j λ d e x p [ j k 2 d ( x 2 + y 2 ) ] h(x,y) = \frac{exp(jkd)}{j\lambda d} exp[\frac{jk}{2d}(x^2+y^2)] h(x,y)=jλdexp(jkd)?exp[2djk?(x2+y2)]

與T-FFT演算法類似,菲涅爾積分變換為 U ( x , y , d ) = U ( x 0 , y 0 , 0 ) ? h ( x , y ) U(x,y,d) = U(x_0,y_0,0) \bigotimes h(x,y) U(x,y,d)=U(x0?,y0?,0)?h(x,y)

從這里開始,D-FFT與T-FFT的演算法的推導就不一樣了,

H ( f x , f y ) H(f_x,f_y) H(fx?,fy?) h ( x , y ) h(x,y) h(x,y)對應的頻譜函式( H ( f x , f y ) H(f_x,f_y) H(fx?,fy?)也被稱為菲涅爾傳遞函式,),由于 h ( x , y ) h(x,y) h(x,y) 的傅里葉變換有決議解,即 H ( f x , f y ) = e x p [ j k d ( 1 ? λ 2 2 ( f x 2 + f y 2 ) ) ] H(f_x,f_y) = exp[jkd(1-\frac{\lambda^2}{2}(f_x^2+f_y^2))] H(fx?,fy?)=exp[jkd(1?2λ2?(fx2?+fy2?))]

則菲涅爾衍射積分的D-FFT演算法: U ( x , y , d ) = ? ? [ ? [ U ( x 0 , y 0 , 0 ) ] e x p [ j k d ( 1 ? λ 2 2 ( f x 2 + f y 2 ) ) ] ] U(x,y,d) = \digamma^- [\digamma [U(x_0,y_0,0)] exp[jkd(1-\frac{\lambda^2}{2}(f_x^2+f_y^2))]] U(x,y,d)=??[?[U(x0?,y0?,0)]exp[jkd(1?2λ2?(fx2?+fy2?))]]

與T-FFT演算法不同,D-FFT,已經知道傳遞函式 H ( f x , f y ) H(f_x,f_y) H(fx?,fy?)的決議運算式,相當于把T-FFT對 h ( x , y ) h(x,y) h(x,y) 的FFT變換先行計算了出來,只需要將空間頻率 f x f_x fx? f y f_y fy?代入決議式即可得到傳遞函式的值而不用做FFT變換,但同時也要求必須通過實驗引數給出正確的 f x , f_x, fx?, f y f_y fy?

對比于角譜函式,可以發現角譜衍射的傳遞函式在傍軸近似條件下等于菲涅爾衍射的傳遞函式,也就是角譜衍射的公式在傍軸條件下等于菲涅爾積分的D-FFT演算法,





總結:

到此為止,已對常見的衍射公式進行了大致的介紹和簡單的推導,建議你再到開頭去看下結論,希望你能對這些經典的衍射公式有更深的理解,(然后還是要吐槽下國內的很多光學教材都編得不咋地,很多陳述句都是抄來抄去,參考起來也沒有相關解釋,很多淺顯的公式道理也講得繁瑣復雜(╯‵□′)╯︵┻━┻)

(附注:因為是手敲公式所以可能會有些許疏漏還望見諒QAQ,此外,也歡迎感興趣有疑問的小伙伴在評論區留言討論)





參考文獻:
《資訊光學數字實驗室(Matlab版)》——錢曉凡
《衍射計算及數字全息》—— 李俊昌
《計算機制全息圖》——金國藩,張浩,蘇萍,蔣強,曹良才
《工程光學》——郁道銀,談恒英
《資訊光學》——蘇顯渝

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/239669.html

標籤:其他

上一篇:【建議收藏】2021年中高級Android大廠面試秘籍,為你保駕護航金三銀四,直通大廠

下一篇:自動駕駛計算平臺

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more