色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

h1654155854.3814 h1654155854.3814

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

h1654155854.3814 h1654155854.3814

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

張桂陽 創(chuàng)客

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

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

    

②Lattepanda安裝Unity3D

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

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

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

   


軟件說明

這里貼出 loop代碼


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

  //計(jì)算加速度向量的模長,均以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ì)算兩次測量的時間間隔dt,以秒為單位
  unsigned long nCurTime = micros();
  float dt = (double)(nCurTime - nLastTime) / 1000000.0;
  //對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;
  //更新本次測的時間
  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);
}

③編寫Unity3D程序

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

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

void Update()

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

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

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

      

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

3、VOID AR SDK:單目攝像頭+IMU實(shí)現(xiàn)SLAM算法

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

       


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

       


演示效果


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

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

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

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

屏幕錄制,視頻地址:


評論區(qū)(2 )
  • 交流群1646516: 路過

    回復(fù)

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

    回復(fù)

主站蜘蛛池模板: 粉嫩自拍 偷拍 亚洲| 亚洲天堂2017无码| 99E久热只有精品8在线直播| 国产乱码精品一区二区三区四川| 青柠高清在线观看完整版| 在线少女漫画| 久久亚洲一级α片| 在线视频 国产 日韩 欧美| 日本人六九视频| 超碰98人人插| 色偷偷在线视频| 国产精品久免费的黄网站| 亚洲国产AV精品卡一卡二| 国产亚洲视频中文字幕| 亚洲欧洲精品成人久久曰影片| 精品无码国产自产在线观看水浒传 | 99无人区码一码二码三| 欧洲亚洲精品A片久久99果冻| www.久久精品视频| 日韩性大片| 国产精品俺来也在线观看| 迅雷成人下载| 久久成人国产精品一区二区 | 黄色三级三级免费看| 影音先锋亚洲AV少妇熟女| 男总裁憋尿PLAY灌尿BL| 粗暴玩烂货调教| 亚洲AV无码国产精品午夜久久| 日本wwwhdsex69| 和老外3p爽粗大免费视频| 99re8久久热在线视频| 伊人久久大香线蕉综合高清| 日本中文一区| 欧美极限扩肛| 国产人在线成免费视频| 97精品一区二区视频在线观看| 欧美一区二区三区男同| 媚药调教被撑到合不拢h| 国产二级一片内射视频播放 | 青青草视频在线ac| 捏奶动态图吃奶动态图q|