<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 電源與新能源 > 設計應用 > 虛擬現實(shí)中立體顯示技術(shù)研究與實(shí)現

虛擬現實(shí)中立體顯示技術(shù)研究與實(shí)現

作者: 時(shí)間:2013-11-21 來(lái)源:網(wǎng)絡(luò ) 收藏
: Arial, 宋體; font-size: 14px; line-height: 26px; background-color: rgb(255, 255, 255); ">

本文引用地址:http://dyxdggzs.com/article/227870.htm

  虛擬現實(shí)中立體顯示技術(shù)研究與實(shí)現

  使用OpenGL的透視投影變換,需設置前后裁剪面到觀(guān)察者的距離及前裁剪面的寬度和高度等。前裁剪面的寬度用該寬度與高度的比值表示,取顯示窗口的寬度和高度之比。

  double Near.Far;//前后裁剪面距觀(guān)察者的距離

  int ratio=width/height;//顯示屏的寬和高之比

  ViewHeight2=Near*tan(radians);//計算視野的高度

  ViewWidth2=ViewHeight2*ratio;//計算視野的寬度

  計算右眼的視野范圍;

  left=-ViewWidth2-0.5*e*0.3;

  right=ViewWidth2-0.5*e*0.3;

  投影并繪制模型:

  glFruSTum(left,right,bottom,top,Near,Far);

  glDrawBuffer(GL_BACK_RIGHT);//使用右后緩存

  gluLookAt(0+e/2。0,5。0+d/2,0,-5,0,1,0);

 ?。_定右眼位置

  glColor3f(1.0,0.0,0.0);//用紅色繪制

  draw();//計算立體圖像對并繪制

  同理繪制左眼的圖像,如圖3所示。

  虛擬現實(shí)中立體顯示技術(shù)研究與實(shí)現

  4.2 雙緩存區的使用

  OpenGL提供雙緩存技術(shù),支持兩個(gè)完整顏色緩存的硬件或軟件。繪制一個(gè)緩存時(shí),顯示另一個(gè)緩存中的內容。每繪制好一幀便交換緩存;這樣剛才被顯示的緩存被用來(lái)繪制,而用來(lái)繪制的緩存被顯示。這樣,當顯示器刷新時(shí),緩存區進(jìn)行交換,畫(huà)面就不會(huì )閃爍。

  OpenGL也支持立體觀(guān)察,實(shí)現左顏色緩存和右顏色緩存,它們分別用于左立體圖像和右立體圖像??稍诔跏蓟瘯r(shí),分別使用參數PFD_DOUBLEBUFFER和PFD_STERE-O_DONTCARE支持和雙緩存。使用雙緩存時(shí),通常只繪制后緩存,使用函數glDrawBuffer()還可指定將立體圖像渲染到具體的某個(gè)緩存。

  例如,繪制右眼圖像時(shí)使用右后緩存區glDrawBuffer(GL_BACK_RIGHT),繪制左眼時(shí)使用左后緩沖區glDraw-Buffer(GL_BACK_LEFT)。

  4.3 立體圖像的觀(guān)察

  使用簡(jiǎn)單的濾光鏡就可觀(guān)察有立體感的圖像。其原理是:由于濾光片(實(shí)驗中使用紅、綠濾光片)吸收其他光線(xiàn),只讓相同顏色的光線(xiàn)通過(guò),因此左、右眼各透過(guò)不同顏色的光。當使用濾光鏡觀(guān)察計算機屏幕上的立體圖像對時(shí),就會(huì )看到具有深度感受的圖像。在實(shí)驗中發(fā)現,刷新頻率對圖像立體效果的形成具有重要作用。刷新頻率過(guò)低,由于人眼所維持的圖像已消失,不能得到三維立體感受;刷新頻率過(guò)高就會(huì )出現一只眼睛可看到兩幅圖像的現象。將顯示的刷新頻率設置合適,在程序中設置圖像刷新頻率設置為50 Hz,利用紅綠濾光鏡觀(guān)察模型的立體成像,得到較明顯的立體視覺(jué)效果。

  5 結論

  根據原理,采用雙目視差算法對物體進(jìn)行,利用OpenGL生成立體圖像對,并借助紅綠濾光眼鏡觀(guān)察,得到了較好的立體視覺(jué)效果。立體顯示技術(shù)的引入增強了人在虛擬環(huán)境中的沉浸感,可廣泛應用于建筑物和視景漫游、虛擬戰爭演練場(chǎng)和各種模擬訓練等多種場(chǎng)合。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>