「RICOH THETAの現状と未来」シリーズも今回が最後のエントリーとなりました。前編では、RICOH THETAの本質的な価値と方向性を探り、続く中編では、ユーザーアンケートをヒントに開発ロードマップを予測してみました。
そして、後編では弊社の実験的な取り組みとして開発した試作品、「Raspberry Piを利用したRICOH THETA遠隔制御システム」(以下、プロトタイプ)についてご紹介したいと思います。RICOH THETAの「未来」を少しでも感じられるきっかけになれば幸いです。
前編でも少し触れましたが、近い時期にリコー社から公式SDK/APIがリリースされる可能性は高いと考えており、今後は、RICOH THETAの可能性を最大限に引き出すようなサードパティー製のアプリケーションが数多く開発されるのではないかと予測しています。
弊社は2年以上前からバーチャルツアーコンテンツを簡単に制作・公開ができるクラウドプラットフォーム「PanoPlaza」を運営しており、まさにRICOH THETAのような撮影デバイスの登場を長らく待ち望んでいました。RICOH THETAのAPIが利用できるようになれば、例えば、撮影の制御から公開までのほぼ全ての制作工程をスマートフォン上で完結させるといったことも実現できるようになるでしょう。
ただ、これだけでは既存のプラットフォームとより密に連携できるようになったに過ぎません。もちろん、これも価値のある取り組みですが、もっと新しい可能性にチャレンジしてみようということで企画を進めたところ、「定期的にRICOH THETAで自動撮影をさせて、その空間の変化が時系列順に見れたら面白いのでは」という発想に行き着きました。外部から制御が可能で、かつ撮影から合成処理までを実行できるRICOH THETAだからこそ、初めて実現可能なアイディアと言えます。そして、その実装のために採用されたのが、Raspberry Piです。
Raspberry Piを一言で説明すると、「安価で小型なLinux PC」です。
一見するとPCには全く見えませんが、実はこの名刺サイズのコンパクトな基板の上には、OS、CPU/GPU、メモリ、USBポート、SDメモリカード、イーサネット、HDMIといった、一般的なPCの標準装備とほぼ変わらない技術的要素が詰め込まれています。使い方によっては、ソフトウェアの実行結果をハードウェアに伝えることができるため、Raspberry Piはインターネットと現実世界の橋渡し役を果たすコンピューターと言えます。
Raspberry Pi(モデルB)(写真:Raspberry Pi公式サイト)
もともとは、基本的なコンピューター・サイエンスの教育促進を目的としてイギリスで始まったプロジェクトということもあり、趣味の電子工作から他のハードウェアとの本格的な連携まで、非常に幅広い層と用途で利用されています。発売開始からちょうど2年が経った現在では、全世界の出荷台数が200万台を超えるほどの規模にまで成長しています。低コストながら小型で高機能さを両立していることが人気の秘密のようです。
プロトタイプの概要を図にすると以下のようになります。処理の流れを順を追って説明します。
まず、PCとRaspberry Piは有線LANで接続されています。Raspbbery Piには、Pythonで書かれたRICOH THETAを制御するスクリプトが配置されており、PCからこのスクリプトを動作させることで、RICOH THETAに指示を与えています。
一般的な利用方法では、スマートフォンを使ってWi-Fi経由でRICOH THETAに接続し、PTP(Picture Transfer Protocol)と呼ばれる画像転送プロトコルに乗せて、撮影した画像をスマートフォンに送っています。プロトタイプでは、このスマートフォンの役割をRaspberry Piが担うことになります。
前述の制御スクリプトは、「1分間に1回の周期でシャッターを切って、画像を取得する」という指示をRICOH THETAに送っており、撮影された画像は適宜Raspberry Pi上のSDカードに保存されていきます。これら画像を同一ネットワーク上にあるPCからブラウザを通じて閲覧すると、次々と更新されていくパノラマコンテンツを体験することができるという仕組みです。
なお、ブラウザでの閲覧では、WebGLを扱いやすくするJavaScriptライブラリ、Three.jsを利用しています。このライブラリを利用することで、SDカード内に保存されたパノラマ写真をいちいちエクレクタンギュラー形式からキューブ形式へ変換処理するのではなく、画像を読み込むタイミングで都度ブラウザ側で処理して表示させることができます。
画面スクリーンショット(画面左側のリンクから撮影時間を選択可能)
制御スクリプトの作成に当たっては、MobileHackerz様のブログやtako2様の公開ソースコードを参考にさせて頂きました。有難うございます!
さて、プロトタイプは完成したものの、肝心の用途についてはまだまだ手探りの状態です。今回作成したプロトタイプの特徴は「遠く離れた空間の360度パノラマ写真を必要なタイミングでリアルタイムに取得できる」ことなので、これを軸に思いついたユースケースを幾つかリストアップしてみました。
<セキュリティ>
動体検知センサーと連動し、空間内に動きがあった瞬間のみパノラマ写真を撮影。管理者に閲覧用URLをメールで通知。
<ライブカメラ>
自然・天候・交通状況などの観測用ライブカメラとして設置し、定期的に撮影したパノラマ写真をほぼリアルタイムにネット上で配信。
<業務システム>
BIMやCAFM(※)における付加的・補足的な画像データとしてパノラマ写真を撮影し、システム内に取り込む。工事の進捗状況の管理もしくは空間情報のアーカイブとして利用。
※ BIM:Building Information Modeling、建築物の3次元モデルに様々な属性情報を付加することで、業務効率化を推進するワークフロー / CAFM:Computer Aided Facility Management、コンピューターを活用した施設管理支援システム
実際には、RICOH THETAはスタンバイ状態がしばらく続くと自動で電源オフになってしまったり、USB接続による充電中は撮影モードにできないなど、幾つか解決すべき課題はありますが、アイディア次第で可能性は更に広がりそうです。
もし、RICOH THETAを活用したソリューションにご興味・ご感心をお持ちの方がいらっしゃいましたら、ぜひお気軽にこちらよりご連絡ください!