LoginSignup
8
5

More than 5 years have passed since last update.

全天球カメラとVRゴーグルで、テレイグジスタンス体験

Last updated at Posted at 2018-08-08

作業一覧

■作成するもの

  • 出遅れてるかもしれないが、流行っている「VR」系に乗っかる
  • 全天球カメラで撮影した映像を、別の機材でリアルタイムに視聴する環境
  • 視覚情報だけであるが、テレイグジスタンスを体験できるように

まずは、流行りの"いらすとや"で、イメージ共有

https://www.irasutoya.com/

vr_mr_kaigi.png

ステッチされた正距円筒図法のデータを、スフィアに張り付けるようなことはせずに、
撮影画像のDual Fisheye データを地道にリアルタイム処理する。

和歌山大学 床井研究所の情報を参考にさせていただきました。ありがとうございます。

魚眼レンズ画像の平面展開

ちなみに、

ちょうど、Interface 2018年 7月号で記事になってるみたい。

https://shop.cqpub.co.jp/hanbai/books/MIF/MIF201807.html

スフィアに張り付ける場合は、以下のサイトなどに書かれている。

* THETA Sのmjpegをラズパイで受けてLANでUnityに配信する方法

* Theta UVC Blenderもどきを作ってみた

* THETA Sの動画をopenframeworksで全天球再生(その2)


■用意したもの

  • ラズパイ関連(2セット)

    • ラズパイ本体
      → Raspberry Pi 3 Model B+
    • microSDカード
      → SanDisk microSDHC 98MB/s 32GB Ultra SDSQUAR-032G
    • 電源ACアダプタ
      → Physical Computing Lab 電源セット(5V 5.0A 4USBポート) Double Cable付き
      ※ON/OFFスイッチ付きケーブル有
    • ケース(Raspberry Pi 3 Model B+対応のもの)
      → RSコンポーネンツ製ケース 白
    • ヒートシンク(念のため)
      → waves Raspberry Pi 2/3 Model B 用 ヒートシンク3点
    • 有線LANケーブル
  • 撮影処理関連

    • Insta360 Air(MicroUSB版)
      ※魚眼レンズとセンサーで自作したいところだが、一旦、既製品で代用
    • フレキシブルケーブル(USB)
      → ミヨシ MCO フグ-スネックUSB延長ケ-ブル 30cm USB-EX21BK
      ※ちょっと硬さが足りないかも・・・ナナメだと、Insta360 Airを支えきれない・・・
      ※ 曲げ繰り返していたら、すぐに断線した・・・
    • MicroUSB<->USB変換冶具
      → 変換名人 USBAA-MCB(USB A オス - microB メス)
  • 視点向き処理関連

    • arduino
      → Arduino Uno R3
    • 3DoFセンサー
      → Arduino 9軸モーションシールド
      ※現在、在庫切れ。もしかして製造終了?BOSCH BNO055が使いやすいので、復活希望。
    • スイッチ
      → JOYPAD411
      https://kata2coro.jimdo.com/joypad411/
  • 表示処理関連

    • LCDパネル
      → SHARP 5.5インチ高精細CGシリコン液晶パネルセット 1080×1920ドット ラズパイ用 [LS055-CGS-LCD-SET]
    • LCDパネルケース
      → emerge+ 5.5インチCGシリコン液晶パネルエンクロージャ
      https://shop.emergeplus.jp/cgsi-enclosure/
    • VRゴーグル
      → エレコム 3D VR ゴーグル P-VRG03BK
    • PET透明ボード(1mm厚)
    • M3x12mmネジ(ネジ頭が薄いもの)
    • HDMIケーブル(短め)
    • USB-MicroUSBケーブル(短め)
  • 機器設置関連

    • モバイルバッテリー
      → cheero Power Plus 10050mAh DANBOARD CHE-066
      ※USBポートに3.0Aを供給できるものが必要
    • フィッシングベスト
    • マジックテープ
  • 開発環境

    • WindowsPC
    • microSDカードリーダー

■技術要素

詳細はGitHub側に記載しているので、Qiita側での検索ヒット用にメモ

  • Raspbian Stretch
  • V4L2 (UVC)
  • H.264 / MotionJPEG
  • FFmpeg
  • OMXPlayer
  • OpenGLES
  • Shader
  • Mesh
  • texture
  • 3DoF
  • Quaternion
  • hostap
  • 802.11n / 802.11ac
  • mjpg-streamer
  • openFrameworks
  • ofxSerial
  • Serial Line Internet Protocol (SLIP)

■作業一覧


■結果

sender.jpg

receiver.jpg

とりあえず動いたレベル

→ソースコード等は、GitHubレポジトリを参照

https://github.com/sisinn/raspi_telexistence_vr

デモとして、スイカ割り的な動作を撮影してみた。

サイドビュー 疑似スイカ割り


■比較

テレイグジスタンスで、視覚情報を共有する場合

* 方式1:撮影側で、2眼映像を作ってから配信するパターン
* 方式2:撮影側では加工せずに全天球をすべて配信するパターン

それぞれメリット・デメリットが違う。

方式1 方式2
ネットワーク負荷
解像度
立体視差
空間自由度 6Dof 3Dof
反応速度
(首振りに対する)
遅い 早い
視聴人数 1名 複数可能

テレイグジスタンスの主流は方式1と思われるが、状況次第では今回構築した方式2が活躍できる場合もあるかも?


■残課題

  • 魚眼レンズ+センサーで、全天球カメラモジュールの自作
  • 撮影→表示遅延の削減
  • フレームレートの改善
  • WiFi接続で11ac対応
  • 解像度の向上
  • 3DoF反応速度の向上
  • 前後センサー境界のステッチ処理の最適化
  • 撮影側機器の設置自由化(3軸自動補正)
8
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
5