chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

聚豐項(xiàng)目 > 基于LattePanda的MR混合現(xiàn)實(shí)眼鏡

基于LattePanda的MR混合現(xiàn)實(shí)眼鏡

基于LattePanda硬件平臺(tái)設(shè)計(jì)一款開(kāi)源的光學(xué)透視式MR混合現(xiàn)實(shí)眼鏡,一款類似美國(guó)Meta2混合現(xiàn)實(shí)眼鏡的原型機(jī),實(shí)現(xiàn)虛擬物體與現(xiàn)實(shí)世界的混合疊加,通過(guò)眼睛視點(diǎn)和手勢(shì)控制虛擬物體。

h1654155854.3814 h1654155854.3814

分享
7 喜歡這個(gè)項(xiàng)目
團(tuán)隊(duì)介紹

h1654155854.3814 h1654155854.3814

團(tuán)隊(duì)成員

張桂陽(yáng) 創(chuàng)客

分享
項(xiàng)目簡(jiǎn)介
基于LattePanda硬件平臺(tái)設(shè)計(jì)一款開(kāi)源的光學(xué)透視式MR混合現(xiàn)實(shí)眼鏡,一款類似美國(guó)Meta2混合現(xiàn)實(shí)眼鏡的原型機(jī),實(shí)現(xiàn)虛擬物體與現(xiàn)實(shí)世界的混合疊加,通過(guò)眼睛視點(diǎn)和手勢(shì)控制虛擬物體。
硬件說(shuō)明

①搭建MR眼鏡(REAL SEER 頭盔+ LattePanda+LCD)

    

②Lattepanda安裝Unity3D

   安裝32的unity3D(windows一樣的方法)

②IMU傳感器模塊(IMU+Arduino串口輸出)

  Arduino IIC驅(qū)動(dòng)MPU6050,從串口轉(zhuǎn)發(fā)

   


軟件說(shuō)明

這里貼出 loop代碼


void loop() {
  int readouts[nValCnt];
  ReadAccGyr(readouts); //讀出測(cè)量值
  
  float realVals[7];
  Rectify(readouts, realVals); //根據(jù)校準(zhǔn)的偏移量進(jìn)行糾正

  //計(jì)算加速度向量的模長(zhǎng),均以g為單位
  float fNorm = sqrt(realVals[0] * realVals[0] + realVals[1] * realVals[1] + realVals[2] * realVals[2]);
  float fRoll = GetRoll(realVals, fNorm); //計(jì)算Roll角
  if (realVals[1] > 0) {
    fRoll = -fRoll;
  }
  float fPitch = GetPitch(realVals, fNorm); //計(jì)算Pitch角
  if (realVals[0] < 0) {
    fPitch = -fPitch;
  }

  //計(jì)算兩次測(cè)量的時(shí)間間隔dt,以秒為單位
  unsigned long nCurTime = micros();
  float dt = (double)(nCurTime - nLastTime) / 1000000.0;
  //對(duì)Roll角和Pitch角進(jìn)行卡爾曼濾波
  float fNewRoll = kalmanRoll.getAngle(fRoll, realVals[4], dt);
  float fNewPitch = kalmanPitch.getAngle(fPitch, realVals[5], dt);
  //跟據(jù)濾波值計(jì)算角度速
  float fRollRate = (fNewRoll - fLastRoll) / dt;
  float fPitchRate = (fNewPitch - fLastPitch) / dt;

//更新Roll角和Pitch角
  fLastRoll = fNewRoll;
  fLastPitch = fNewPitch;
  //更新本次測(cè)的時(shí)間
  nLastTime = nCurTime;

  //向串口打印輸出Roll角和Pitch角
  Serial.print("Roll:");
  Serial.print(fNewRoll); Serial.print('(');
  Serial.print(fRollRate); Serial.print("),\tPitch:");
  Serial.print(fNewPitch); Serial.print('(');
  Serial.print(fPitchRate); Serial.print(")\n");
  delay(10);
}

③編寫(xiě)Unity3D程序

1、串口接收IMU數(shù)據(jù),IMU四元數(shù)計(jì)算

      unity3D實(shí)現(xiàn)串口接收,讀取IMU數(shù)據(jù),這里貼出,IMU數(shù)據(jù)處理過(guò)程(四元數(shù)法)

void Update()

2、RealSee SDK:雙目3D+圖像反畸變運(yùn)算

     由于RealSee的頭盔是兩面曲面HUD半反半透鏡,LCD圖像直接投影上去會(huì)發(fā)生嚴(yán)重的畸變

     因此需要反畸變算法,為了項(xiàng)目方便,這里直接采用RealSee官方SDK中的攝像頭Object和反畸變算法腳本,

      

    將這個(gè)腳本綁定到AR camera object上即可實(shí)現(xiàn)圖像反畸變運(yùn)算。

3、VOID AR SDK:?jiǎn)文繑z像頭+IMU實(shí)現(xiàn)SLAM算法

      這里的SLAM算法直接采用 VOID AR SDK中的 單目攝像頭+imu的SLAM算法,配置如下

       


4、編輯場(chǎng)景,設(shè)置地球Object

       


演示效果


①:三維融合成像顯示功能(將虛擬物體以三維立體虛像的方式投影到現(xiàn)實(shí)世界中)

②:三維跟蹤注冊(cè)功能(能夠?qū)崿F(xiàn)虛擬物體和真實(shí)環(huán)境做到精確對(duì)準(zhǔn),即將虛擬物體固定在現(xiàn)實(shí)世界的指定位置

效果演示內(nèi)容:項(xiàng)目體驗(yàn)者通過(guò)MR混合現(xiàn)實(shí)眼鏡,可以觀看到虛擬的地球和一個(gè)白色立方體,實(shí)時(shí)疊加在現(xiàn)實(shí)世界的桌子上,體驗(yàn)者可以通過(guò)移動(dòng)頭部,前進(jìn)后退來(lái)觀察虛擬地球。

效果演示方式:項(xiàng)目圖片,屏幕錄屏,視頻拍攝

屏幕錄制,視頻地址:


評(píng)論區(qū)(2 )
  • 交流群1646516: 路過(guò)

    回復(fù)

  • 動(dòng)心忍性1234: 您好我是無(wú)線電雜志的編輯,我們對(duì)您的項(xiàng)目十分感興趣,請(qǐng)問(wèn)您有興趣投稿嗎?成為我們的作者除稿費(fèi)外還有其他優(yōu)厚條件。敬請(qǐng)參與。投稿請(qǐng)聯(lián)系QQ260534978.

    回復(fù)