• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Unity3D的物理光學(xué)實(shí)驗(yàn)的設(shè)計(jì)與仿真

    2021-03-10 07:54:36趙洋洋盛思遠(yuǎn)
    物理實(shí)驗(yàn) 2021年2期
    關(guān)鍵詞:目鏡觀察者光柵

    趙洋洋,盛思遠(yuǎn)

    (1.中國(guó)刑事警察學(xué)院 基礎(chǔ)教研部,遼寧 沈陽(yáng) 110854;2.沈陽(yáng)化工大學(xué) 理學(xué)院,遼寧 沈陽(yáng) 110142)

    在高等教育中,理論課程的網(wǎng)絡(luò)課堂和傳統(tǒng)課堂相結(jié)合的教學(xué)模式已經(jīng)相當(dāng)成熟,但對(duì)于實(shí)驗(yàn)課來(lái)說(shuō),還存在亟待解決的問(wèn)題. 尤其是對(duì)于遠(yuǎn)程培養(yǎng)方式的非全日制高等教育,由于受到空間和資源限制,幾乎不安排物理實(shí)驗(yàn)課. 而物理實(shí)驗(yàn)是科學(xué)實(shí)驗(yàn)的先驅(qū),體現(xiàn)了大多數(shù)科學(xué)實(shí)驗(yàn)的共性[1]. 由于有些實(shí)驗(yàn)課程對(duì)于環(huán)境的要求較高,追求理想的實(shí)驗(yàn)環(huán)境,需要大量的實(shí)驗(yàn)室維護(hù)經(jīng)費(fèi)來(lái)維持. 此外,由于學(xué)生生源地中等教育水平不均衡,學(xué)生對(duì)物理實(shí)驗(yàn)的熟悉程度差別較大,帶來(lái)了較大的授課難度[2]. 這些因素,都影響了大學(xué)物理實(shí)驗(yàn)課程的教學(xué)效果.

    國(guó)內(nèi)VR教育主要投入在虛擬現(xiàn)實(shí)教育的學(xué)習(xí)資源、虛擬現(xiàn)實(shí)理念研究和虛擬校園仿真環(huán)境的構(gòu)建[3]. 物理仿真實(shí)驗(yàn)室通過(guò)一系列設(shè)計(jì)的場(chǎng)景,模擬了特定實(shí)驗(yàn)的實(shí)驗(yàn)過(guò)程,在現(xiàn)代計(jì)算機(jī)物理引擎中,對(duì)于力學(xué)性質(zhì)的模擬已經(jīng)非常逼真,基本符合真實(shí)世界的物理規(guī)律[4]. 但是對(duì)于光學(xué)性質(zhì)來(lái)說(shuō),一方面由于光學(xué)性質(zhì)在臨界情況下比較復(fù)雜,另一方面受限于顯卡計(jì)算能力,無(wú)法大規(guī)模實(shí)時(shí)運(yùn)用貼近真實(shí)世界的光柵化渲染算法. 由于光線(xiàn)追蹤渲染算法[5]更偏向以“與真實(shí)世界效果相似”為目標(biāo),而非從原理上模擬,所以對(duì)于某些光學(xué)器件的效果,無(wú)法精確地表現(xiàn). 本文提出間接渲染的方法,基于Unity3D平臺(tái)開(kāi)發(fā)三維物理光學(xué)實(shí)驗(yàn)程序,并探討大規(guī)模運(yùn)用此方法進(jìn)行仿真的可行性.

    1 系統(tǒng)的設(shè)計(jì)

    1.1 Unity3D平臺(tái)和設(shè)計(jì)理念優(yōu)化理念

    Unity3D 是一款跨平臺(tái)的3D引擎,用于制作3D游戲、實(shí)時(shí)三維動(dòng)畫(huà)等互動(dòng)內(nèi)容,而在教育領(lǐng)域,主要用來(lái)制作工業(yè)動(dòng)畫(huà),用仿真的方法對(duì)員工進(jìn)行培訓(xùn). 本文就是采用Unity3D平臺(tái)對(duì)大學(xué)物理實(shí)驗(yàn)中的光學(xué)部分進(jìn)行仿真,主要用于在線(xiàn)實(shí)驗(yàn)教育. Unity3D平臺(tái)的優(yōu)勢(shì)主要在于,系統(tǒng)的交互性好,以及對(duì)不同平臺(tái)良好的適配性,實(shí)現(xiàn)1套代碼對(duì)應(yīng)多種平臺(tái). 但是由于Unity引擎是逐幀渲染,不同于大多數(shù)App的臟渲染,渲染計(jì)算量較大,對(duì)于渲染的優(yōu)化問(wèn)題比較重要[6].

    1.2 框架結(jié)構(gòu)和主要功能模塊

    實(shí)驗(yàn)系統(tǒng)總體框架如圖1所示.

    圖1 實(shí)驗(yàn)系統(tǒng)總體框架圖

    1.2.1 實(shí)驗(yàn)介紹模塊

    實(shí)驗(yàn)介紹主要在Unity3D中播放預(yù)設(shè)好的視頻,仿照在線(xiàn)慕課的形式,講解實(shí)驗(yàn)原理、操作和注意事項(xiàng). 在Unity3D中播放視頻一般用UnityEngine.Video.VideoPlayer組件或MovieTexture組件,這2個(gè)組件都是用在物體表面渲染動(dòng)態(tài)紋理的方法來(lái)播放視頻,因此必須依賴(lài)Render 組件,本文只是簡(jiǎn)單的在屏幕上播放視頻,因此使用Render Texture組件.

    此外還需在配置文件里配置文件讀寫(xiě)的權(quán)限,例如安卓系統(tǒng)需要為Manifast配置如下項(xiàng):

    1.2.2 實(shí)驗(yàn)操作模塊

    在操作前需要先選擇操作對(duì)象,對(duì)于不同的對(duì)象有對(duì)應(yīng)的操作方法,主要為開(kāi)關(guān)類(lèi)、移動(dòng)類(lèi)和旋轉(zhuǎn)類(lèi)3種. 以分光儀測(cè)三棱鏡實(shí)驗(yàn)為例,光源的操作方法主要是選擇和開(kāi)關(guān),在實(shí)驗(yàn)中可以選擇不同的光源,如汞燈和鈉燈;分光儀的操作方法主要為旋轉(zhuǎn);三棱鏡的操作方法為移動(dòng)和旋轉(zhuǎn). 對(duì)于移動(dòng)和旋轉(zhuǎn)類(lèi)操作,系統(tǒng)使用鍵盤(pán)進(jìn)行操控,對(duì)每個(gè)操作設(shè)置步進(jìn)和隨機(jī)因子

    Δd=d步進(jìn)+d′,

    短按鍵時(shí)對(duì)象移動(dòng)1個(gè)步進(jìn),長(zhǎng)按鍵時(shí)目標(biāo)連續(xù)移動(dòng),通過(guò)反復(fù)調(diào)節(jié),可獲得準(zhǔn)連續(xù)的儀器狀態(tài). 在調(diào)節(jié)儀器過(guò)程中,同樣可調(diào)節(jié)攝像機(jī)位置,Unity3D支持預(yù)設(shè)多個(gè)攝像機(jī),可在不同角度觀察實(shí)驗(yàn)儀器,同時(shí)攝像機(jī)也可在場(chǎng)景中隨物體移動(dòng),如分光儀標(biāo)尺處可以常置攝像機(jī),通過(guò)切換到此攝像機(jī)即可比較方便地讀取數(shù)據(jù).

    1.2.3 數(shù)據(jù)處理和自動(dòng)評(píng)閱

    在實(shí)驗(yàn)結(jié)束后,進(jìn)入數(shù)據(jù)處理環(huán)節(jié),系統(tǒng)自動(dòng)生成數(shù)據(jù)處理表格,需要實(shí)驗(yàn)者將數(shù)據(jù)處理結(jié)果輸入并上傳,由服務(wù)端計(jì)算數(shù)據(jù)處理的合理性,并給出實(shí)驗(yàn)得分.

    2 關(guān)于仿真光學(xué)器件的算法實(shí)現(xiàn)

    2.1 仿真光學(xué)器件的原理

    仿真光學(xué)器件的原理主要包括光學(xué)表面的局部光柵化渲染模型,以及準(zhǔn)實(shí)時(shí)烘培貼圖的制作方法. 局部光柵化渲染模型主要涉及在光學(xué)表面難以適用光線(xiàn)追蹤渲染的情況下,利用傳統(tǒng)光柵化渲染的思路,在光學(xué)表面渲染出光照貼圖的算法. 準(zhǔn)實(shí)時(shí)烘培貼圖是按照光學(xué)儀器的特性,將不同波長(zhǎng)的光譜分別繪制在貼圖上.

    2.1.1 光學(xué)表面的局部光柵化渲染模型

    光學(xué)儀器主要體現(xiàn)光的波動(dòng)性質(zhì),表現(xiàn)為光的折射、衍射和干涉,由于光在這種情況下從攝像機(jī)到光源之間并不是1條直線(xiàn),光線(xiàn)追蹤渲染很難獲得良好的效果. 因?yàn)閿z像機(jī)必須在所有可見(jiàn)的光學(xué)平面上逐點(diǎn)計(jì)算光線(xiàn)的貢獻(xiàn)值

    其中,Ccamera代表渲染結(jié)果,積分項(xiàng)代表光學(xué)表面貢獻(xiàn)值,Cscene代表環(huán)境光. 這在實(shí)時(shí)渲染中幾乎是不可能的,因此需要比較巧妙的方法.

    仿照傳統(tǒng)光柵化的思路,渲染從光源開(kāi)始,將場(chǎng)景光靜態(tài)的烘培在觀察者曲面上,形成觀察者貼圖[7]. 在光源不改變的情況下,此過(guò)程僅需要計(jì)算1次. 然后將可能實(shí)時(shí)移動(dòng)位置的圖像分層,在渲染時(shí),實(shí)時(shí)算出圖像各層相對(duì)于觀察者的位置,將圖像以一定的方式疊加輸出,即可比較真實(shí)地模擬出光學(xué)儀器的動(dòng)態(tài)實(shí)時(shí)效果.

    對(duì)于分光儀來(lái)說(shuō),光通過(guò)準(zhǔn)直光管照射到載物臺(tái)的光學(xué)元件上,然后通過(guò)光學(xué)元件照射到觀察者平面,建立以載物臺(tái)為原心,入射方向?yàn)?°的極坐標(biāo)系(φ,r,z),如圖2所示.

    圖2 分光儀抽象俯視圖

    由于入射光為一道狹縫,因此z方向上可以近似看成各向同性,則觀察者平面的亮度為

    Ccamera=f(Clight,φ,r,θ)+Cscene

    由于三棱鏡有1個(gè)不透光的磨砂面,這時(shí)加上三棱鏡的2個(gè)光學(xué)面都在預(yù)設(shè)光路上的限制條件,在真實(shí)環(huán)境下,若某個(gè)光譜的光路被三棱鏡的磨砂面擋住,鏡筒中自然不可能看到該光譜.

    對(duì)于光柵來(lái)說(shuō),光學(xué)公式可以近似為標(biāo)準(zhǔn)差為準(zhǔn)直管1/2狹縫寬度的高斯分布[8],即

    f(Clight,φ,r,θ)=N(μ,σ2)Clight,

    其中,k表示光柵衍射條紋級(jí)數(shù),取值0,±1,…隱含限制條件為光路必須經(jīng)過(guò)光柵,當(dāng)不滿(mǎn)足限制條件時(shí),光不發(fā)生衍射,只會(huì)形成中央亮條紋,固定在φ=π的位置.

    式中光譜位置是極坐標(biāo)φ、波長(zhǎng)λ和光學(xué)器件位置θ的函數(shù),因此在烘培時(shí)需要將光譜中不同的部分進(jìn)行分層,以便渲染時(shí)能夠分別計(jì)算其中每個(gè)貼圖對(duì)于φ的偏移量. 而對(duì)于極坐標(biāo)系中r對(duì)貼圖的影響,留待2.2中進(jìn)行討論.

    2.1.2 準(zhǔn)實(shí)時(shí)烘培貼圖制作

    當(dāng)入射光線(xiàn)通過(guò)光學(xué)器件照射到觀察者曲面上時(shí),需要在φ=π的位置形成合成光譜,合成光譜貼圖為32×32和有透明通道的png貼圖,如圖3所示.

    圖3 準(zhǔn)實(shí)時(shí)譜線(xiàn)貼圖

    根據(jù)光源的性質(zhì),入射光線(xiàn)的光譜成分可以近似地分解為多條單色譜線(xiàn),實(shí)驗(yàn)室常用光源譜線(xiàn)波長(zhǎng)和近似顏色如表1所示,其中顏色基于1931CIE-XYZ色度圖用RBG代碼表示[9].

    表1 鈉燈汞燈常見(jiàn)譜線(xiàn)1931CIE-XYZ色度值

    2.2 混合實(shí)時(shí)渲染

    2.2.1 成像的合成與位移

    渲染時(shí),根據(jù)光學(xué)器件的位置和旋轉(zhuǎn)情況,需要實(shí)時(shí)計(jì)算每條譜線(xiàn)在觀察者平面上的位置{φ1,…,φn},并且根據(jù)引入光譜衰減參量,模擬光源的亮度變化. 由于分光儀的目鏡是半徑為R的圓形區(qū)域,那么觀察者的觀察范圍可以寫(xiě)作(φ觀察者-φ′,φ觀察者+φ′).

    每幀算出譜線(xiàn)相對(duì)于觀察者的位置{φ1′,…,φn′},在其中選出絕對(duì)值小于φ的譜線(xiàn)參與渲染. 若第m條譜線(xiàn)參與渲染,則渲染貼圖相對(duì)于中心點(diǎn)的位置xm=φmr觀察者,根據(jù)相對(duì)位置將渲染結(jié)果乘以衰減參量疊加映射在Render Texture組件上. 由于渲染結(jié)果的變化只與光學(xué)器件位置θ、觀察者位置φ和光譜衰減參量有關(guān),因此,在這些值不改變的情況下,不需要實(shí)時(shí)刷新渲染結(jié)果,這樣可以更加節(jié)省資源.

    2.2.2 用加權(quán)高斯模糊模擬目鏡調(diào)焦效果

    分光儀的目鏡實(shí)際效果類(lèi)似于望遠(yuǎn)鏡,調(diào)節(jié)目鏡的焦距可以調(diào)節(jié)圖像的清晰程度[10]. 為了模擬這一效果一般需要圖像模糊算法進(jìn)行屏幕效果后處理[11],引入改進(jìn)的加權(quán)高斯模糊算法對(duì)圖像進(jìn)行進(jìn)一步處理,假設(shè)圖像的渲染結(jié)果都包含在每個(gè)像素的顏色中,那么圖像的每個(gè)像素的顏色為

    其中,i∈Pn,Pn為附近n個(gè)像素的任意集合,也就是說(shuō)每個(gè)像素的顏色等于原像素與附近共n+1個(gè)元素的顏色加權(quán)平均,其中μ為模糊權(quán)值,可以代表圖像的模糊程度. 當(dāng)μ=0時(shí),圖像完全不模糊,當(dāng)μ=1時(shí)達(dá)到最大模糊,因此在調(diào)節(jié)目鏡焦距時(shí),可調(diào)節(jié)的范圍x是(-1,1),而μ=abs(x),這樣當(dāng)向某方向連續(xù)調(diào)節(jié)目鏡焦距時(shí),圖像由模糊逐漸變得清晰再變得模糊,基本符合目鏡調(diào)焦的效果形式. 為了獲得更好的模糊效果,可以加大n的數(shù)值,從更多像素點(diǎn)進(jìn)行采樣,但是模糊需要逐幀逐像素計(jì)算最終的渲染效果,過(guò)大的n值會(huì)造成巨大的負(fù)擔(dān)[12].

    3 結(jié)束語(yǔ)

    仿真實(shí)驗(yàn)室允許學(xué)生在移動(dòng)端進(jìn)行實(shí)驗(yàn)操作和演練,不受時(shí)空限制,節(jié)省實(shí)驗(yàn)室維護(hù)成本,是未來(lái)教育的發(fā)展方向. 對(duì)于網(wǎng)絡(luò)教育來(lái)說(shuō),在線(xiàn)實(shí)驗(yàn)室提供了一種物理實(shí)驗(yàn)教學(xué)的解決方案[13]. 但是在具體應(yīng)用環(huán)節(jié)還需要深入地研究和討論,本文提出的間接渲染的思路可以用于大多數(shù)普通光學(xué)實(shí)驗(yàn). 本仿真實(shí)驗(yàn)還有很大的不足之處,主要是對(duì)實(shí)驗(yàn)中用到的光學(xué)器件有限制,光學(xué)器件只能在一定范圍內(nèi)進(jìn)行移動(dòng)和旋轉(zhuǎn),當(dāng)超出移動(dòng)范圍時(shí),無(wú)法輸出正確的結(jié)果. 在后續(xù)的改進(jìn)中,需要進(jìn)一步完善本仿真實(shí)驗(yàn),為實(shí)驗(yàn)者提供更為優(yōu)良的交互體驗(yàn).

    猜你喜歡
    目鏡觀察者光柵
    觀察者
    便攜式無(wú)線(xiàn)顯微投影目鏡
    為什么能用望遠(yuǎn)鏡看遠(yuǎn)方
    大生產(chǎn)
    冷靜而又理性的觀察者——德國(guó)華人作家劉瑛訪(fǎng)談
    GGS金鋼悟空目鏡初體驗(yàn)
    攝影之友(2019年3期)2019-03-22 08:56:56
    CDIO教學(xué)模式在超聲光柵實(shí)驗(yàn)教學(xué)中的實(shí)踐
    基于LabView的光柵衍射虛擬實(shí)驗(yàn)研究
    光柵衍射實(shí)驗(yàn)教學(xué)中的體會(huì)
    物理與工程(2014年4期)2014-02-27 11:23:08
    觀察者模式在Java 事件處理中的應(yīng)用研究*
    定陶县| 宁南县| 常州市| 漯河市| 德江县| 大洼县| 和龙市| 塔河县| 望奎县| 牙克石市| 冀州市| 都江堰市| 白城市| 扎鲁特旗| 巴林右旗| 兴宁市| 本溪市| 尼勒克县| 舒城县| 宜章县| 库尔勒市| 扬州市| 云和县| 南丹县| 和静县| 宁化县| 南雄市| 新乐市| 介休市| 如东县| 绥棱县| 安康市| 连平县| 孝感市| 黑山县| 乃东县| 青冈县| 潜山县| 米脂县| 海宁市| 水城县|