NASA Air-BOS結(jié)果復(fù)現(xiàn)之三步驟
背景紋影(BOS: Background Oriented Schlieren)的優(yōu)點(diǎn)是視場(chǎng)大,不像傳統(tǒng)紋影視場(chǎng)受到反射鏡限制。美國(guó)NASA在開(kāi)發(fā)低音爆超音速飛機(jī)的時(shí)候開(kāi)發(fā)了Air-BOS技術(shù),用來(lái)顯示飛機(jī)超音速飛行時(shí)產(chǎn)生的激波。

NASA的這項(xiàng)技術(shù),幾年前在AIAA會(huì)議上公開(kāi),不但展現(xiàn)了技術(shù),因?yàn)榻^大多數(shù)人之前都沒(méi)有機(jī)會(huì)見(jiàn)到飛行中飛機(jī)的激波,也取得了一些社會(huì)效應(yīng)。寫(xiě)到這里,我覺(jué)得國(guó)外的科研機(jī)構(gòu)與群眾的互動(dòng)比較緊密,包裝出一些炫酷易懂的素材充分激發(fā)民眾對(duì)科學(xué)的興趣,以至于很多商家會(huì)把NASA logo印到衣服上,成為一種街頭時(shí)尚。言歸正傳,自上次寫(xiě)了篇《零基礎(chǔ)BOS教程》,獲得到了不錯(cuò)的閱讀量和反饋,有對(duì)BOS技術(shù)感興趣的朋友希望看到一些其他的應(yīng)用。我想就通過(guò)這篇短文,講解一下如何復(fù)現(xiàn)NASA Air BOS結(jié)果。
Air BOS簡(jiǎn)介
NASA的Air-BOS目的是顯示真實(shí)尺寸超音速飛機(jī)的激波。他們選擇的背景是太陽(yáng)。在測(cè)試的時(shí)候空地配合,飛機(jī)在飛過(guò)太陽(yáng)的瞬間,地面人員通過(guò)天文望遠(yuǎn)鏡進(jìn)行拍攝。選擇太陽(yáng)作為背景的原因有二:其一,太陽(yáng)表面有明顯的斑紋,非常適合圖像的互相關(guān)處理,其二,太陽(yáng)亮度高。
下圖就是天文愛(ài)好者拍攝的太陽(yáng)圖像,在局部放大圖中可以看到太陽(yáng)表面的斑紋和太陽(yáng)黑子。

下圖是有無(wú)超音速飛機(jī)的背景圖片對(duì)比,可以很清楚的看到激波的出現(xiàn)讓背景斑紋產(chǎn)生了位移。下面就具體講解一下如何復(fù)現(xiàn)Air BOS結(jié)果。


BOS圖片準(zhǔn)備
NASA在Youtube網(wǎng)站上發(fā)布了一段Air BOS的原始視頻。我已經(jīng)上傳到我的B站空間(點(diǎn)擊觀看),可以通過(guò)各種插件下載。
1.?逐幀導(dǎo)出原始圖片
處理BOS需要導(dǎo)出視頻中的每一幀圖片。許多軟件(如photoshop)都可以實(shí)現(xiàn),在這里使用的是Kinovea (https://www.kinovea.org/)。這款免費(fèi)軟件原本是針對(duì)體育運(yùn)動(dòng)分析的,本著拿來(lái)主義的原則,只要有我們需要的功能,就可以。Kinovea操作很簡(jiǎn)單,只需要將原始視頻拖入即可自動(dòng)識(shí)別。然后 點(diǎn)擊軟件右下方的導(dǎo)出圖片按鈕,出現(xiàn)如圖對(duì)話框,將進(jìn)度條拖動(dòng)到最左邊,就可以保存每一張圖片了,輸出的圖片也會(huì)按照順序自動(dòng)編號(hào)。


2. 裁剪圖片
很顯然,我們需要的部分只是原始圖片的一部分,所以要對(duì)圖片剪裁。這樣不但美觀,而且能夠減少后期BOS計(jì)算量。剪裁圖片也有很多軟件,我在這里使用的是imagej(美國(guó)NIH開(kāi)發(fā)的開(kāi)源免費(fèi)的醫(yī)學(xué)圖像處理軟件,下載地址https://imagej.nih.gov/ij/)。

ImageJ打開(kāi)后只有小小的一個(gè)窗口,但是小窗口大功能。導(dǎo)入圖片按照入校順序選擇:
File->Import->Import Sequence…
會(huì)出現(xiàn)對(duì)話框。點(diǎn)擊Browse定位到輸出圖片序列所在的文件夾,即可導(dǎo)入。

導(dǎo)入圖片后,需要先確認(rèn)需要裁剪的區(qū)域。通過(guò)ImageJ主窗口工具欄第一個(gè)矩形圖標(biāo)來(lái)選擇。然后通過(guò)如下菜單操作進(jìn)行最后剪裁:
Imgae->Crop
剪裁后的圖片如圖9所示。

3,圖片輸出
通過(guò)如下操作在ImageJ中輸出圖片
File->Save As->Image Sequence…
點(diǎn)擊Browse定位到需要的位置即可輸出。
BOS圖片處理
BOS圖片背景斑紋位移的計(jì)算仍然通過(guò)MATLAB PIVLab來(lái)實(shí)現(xiàn)。圖片的導(dǎo)入步驟詳見(jiàn)之前的短文(《背景紋影BOS技術(shù)-零基礎(chǔ)起步》)。需要指出的是,PIV互相關(guān)運(yùn)算的第一幅圖片是沒(méi)有飛機(jī)的背景(背景),第二幅圖片是有飛機(jī)的圖片。
1,PIV設(shè)置
我所用的互相關(guān)窗口參數(shù)如圖所示。由于圖片是網(wǎng)上截取出來(lái),最后的圖片像素只有280x280像素。處理的過(guò)程中也嘗試了多重窗口,結(jié)果其實(shí)也差不多。
初步計(jì)算后位移矢量圖如下,激波已經(jīng)可見(jiàn),但是稍顯雜亂。

2,后處理
后處理的目的是去除一些明顯的不正確的位移量,然后通過(guò)插值填補(bǔ)。可通過(guò)如下菜單操作:Post-processing->Vector Validation
通過(guò)點(diǎn)擊‘Apply to current frame’,可以發(fā)現(xiàn),圖中褐色的矢量為重新填補(bǔ)的。

3,云圖顯示
位移場(chǎng)通過(guò)云圖進(jìn)一步顯示,則可以達(dá)到NASA圖片的效果。在這幅圖片里, 激波引起的斑紋位移是水平方向的,所以繪制水平方向位移云圖效果更好。PIVLab結(jié)果的云圖顯示通過(guò)如下菜單操作:Plot->Spatial: Derive Parameter/Modify Data.
在云圖顯示的時(shí)候,可以考慮應(yīng)用結(jié)果平順化,讓顯示的結(jié)果更加光滑。其背景操作就是對(duì)矢量場(chǎng)應(yīng)用Gauss Filter。圖中的結(jié)果可以清晰的看到飛機(jī)產(chǎn)生的激波和噴氣尾氣。由于截取的BOS圖片像素只有280x280,而原始圖片是2048x2048像素,所以流動(dòng)顯示的分辨率會(huì)低很多。

總結(jié)
最后把所有的云圖圖片制作成動(dòng)畫(huà),觀看效果也會(huì)更好一點(diǎn)。但是由于原始圖片分辨率較低的硬傷,結(jié)果沒(méi)有NASA的那么誘人。在此作為搬磚人,希望能激勵(lì)大家研究的興趣,有可能的話可以嘗試一下BOS技術(shù)。

