Kandao QoocamとLooking Glassで立体視デジタルフォトフレームを作ってみた

#はじめに
先日[Looking Glass](https://lookingglassfactory.com/)の[ハッカソン](https://lookingglass.connpass.com/event/119022/)があり、お手伝いとして参加してきました。イベントの様子を3D 180°撮影ができる[Kandao Qoocam](https://www.kandaovr.com/qoocam/)で撮影し、Looking Glass用の画像に変換したものを立体視デジタルフォトフレームとしてハッカソン作品のお披露目会で展示したところ、結構好評でした。本記事ではその作り方について説明したいと思います。
できあがりは[こんな感じ](https://twitter.com/decchi/status/1113091066947821568)（単眼カメラで撮影した動画では立体感はわからないですが）

#環境
・Windows10
・[Qoocam Studio v1.4.3.9](https://www.kandaovr.com/download/)
・[ステレオフォトメーカーVer5.29](http://stereo.jpn.org/jpn/stphmkr/index.html)


#Qoocamのステレオ写真をLooking Glass用の画像に変換する手順
##Qoocamのステレオ写真から2D画像とデプスマップを作成する
今回の説明では以下のハッカソン中に撮影した画像を例として説明します（デプスが割ときれいだったため）
![test.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/df51aef3-669f-bcc5-e844-27df35215725.jpeg)
まず、Qoocam Studioを起動し、Editモードに入ります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/16464fe0-cdbe-e8dc-26d9-e45c91be8560.png)
Qoocamのステレオ写真をQoocam Studioにドロップし、ProjectionとScaleをPerspectiveと16:9にそれぞれ設定し、RENDERボタタンを押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/e3947028-fdb8-c4da-077b-be886324f042.png)
次の画面でTypeをMono、Resolutionを2560×1600、OutputWithDepthをYesに設定し、RENDER ALLボタタンを押します(出力先はわかりやすい場所ならどこでもいいです)。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/6bf38711-dcfe-b736-5339-b74926d0f6b9.png)
うまくいけば以下のように２つ画像ファイルが作成されます。（この時のデプスの出方で後々いい写真になるかが決まります）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/a1e438d4-cd16-6234-6114-9fa19e383e25.png)

ここでちょっとおまじない的な作業をします。上記手順で作成されたデプスマップ（黒い画像）が次の手順でうまく開けないので、一度ペイントで開き、JPEG画像として保存します（警告でるけど気にしない）。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/92134f71-cca0-4b6a-3cb2-b066c8ba816a.png)
これで2D画像とデプスマップの作成は完了です。

##ステレオフォトメーカーのLooking Glass用キャリブレーション設定（初回のみ）
次にステレオフォトメーカーでLooking Glass用の画像に変換していくのですが、その前にLooking Glass用キャリブレーション設定を行います。ステレオフォトメーカーの作者の[@spmaker](https://twitter.com/spmaker)さんが簡単にキャリブレーションファイルを作成するツールを公開してくださっていますので、今回はそれを利用します（[参考](https://twitter.com/spmaker/status/1117275538882580480)）。引用したツイートにも書いてありますが、Looking GlassをPCに接続した状態でhttp://stereo.jpn.org/lkg/carib/index.html のサイトを開き、Click_to_Save_values_for_SPMのボタンを押して、設定ファイルを保存します。（保存場所はダウンロードしたステレオフォトメーカーと同じフォルダにしておくとよいと思います）。赤線で示した値が設定される値になります（レンチキュラーレンズのキャリブレーション値）。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/6589efdd-4d5c-2c3c-c0db-590feb8c8c68.png)
設定ファイルができたらステレオフォトメーカーを起動し、編集→Looking Glass→キャリブレーションを選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/cdec219b-18f9-3ebc-3602-8bdf05e9d330.png)
呼び出しボタンを押して先ほどの設定ファイルを選択し、値が反映されたらOKボタンで設定を完了します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/ed7c94f8-f2a7-2e0d-fd83-9b039ab9680b.png)
##ステレオフォトメーカーでLooking Glass用画像を作成する
ステレオフォトメーカーの設定が完了したら、Looking Glass用画像を作成します。
ファイル→左右の画像を開く
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/6a0bfa53-fc72-1ea4-80e5-330e51a72e14.png)
[Qoocamのステレオ写真からLooking Glass用の画像とデプスマップを作成する](#Qoocamのステレオ写真からLooking Glass用の画像とデプスマップを作成する)の手順で作成した２つの画像を2D、デプス(JPEGで保存した方)の順で選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/84dd3367-5ab1-145a-9ba1-534d5d52152e.png)
編集→Looking Glass→2D+デプスマップからLKG画像作成を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/5899ca79-12a9-af7d-3ba4-6d6fe43828f4.png)
出力設定のウィンドウが出るのでまず、デプス画像で、白を手前とするにチェックを入れ、前後位置のボタンを押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/1e795500-4e40-b427-79a4-2e6524e01a4c.png)
奥行指定の画面がでるのでフォーカスを合わせたい位置（今回はテーブルの真ん中あたりの29）をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/8f01cc29-bfe6-2a3f-9860-2393b02ffbdc.png)
今回は固定のLooking Glass用の画像とするのでLKG画像(画質優先)を選択し、ＯＫを押します。(他の人に画像を共有したい場合はQuilt画像で出力するのがよいでしょう。その場合は視点数は45にしておくとよいかも)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/dd192041-9a30-e554-71c0-1539f33b75ec.png)

Looking Glass用の画像がレンダリングされたら完成です！ファイル→画像保存で保存しましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/60734/e0e2ba89-a3d9-9364-3460-da0095f0ee40.png)

保存した画像をLooking Glass側で全画面表示して立体的な写真に見えたら成功です！

#（発展編）Raspberry Piを使ってデジタルフォトフレームに仕立てる
前述までの手順で画像が完成しました。作成した画像はただのJPEG画像なので、Raspberry Piで表示することができます。（私はRaspberry Pi 3 Model Bを使いましたが、RazpiZeroでも動くと思います）
Raspberry PiでLooking Glassを表示する手順についてはkoukiwfさんの[LookingGlassをRasPiZeroでスタンドアローン化した話](https://qiita.com/koukiwf/items/55ed52e56ac5777e3246)の記事を参考にしてください。

Raspberry Piが起動したらスライドショーとして表示して欲しかったので以下のような簡単なシェルを書きました。

```slideshow.sh
#!/bin/bash
sleep 15 #なくてもいいかもだが一応少し待つ
sudo fbi -noverbose -a -T 1 -t 5 /home/pi/photo/*.JPG
```

あとはRaspberry Piが起動したときにslideshow.shを実行するように`crontab -e`でcronの設定を開き、以下のように追記しました。

```
@reboot  /home/pi/slideshow.sh
```

#終わりに
さて、いかかでしたでしょうか。Looking Glassに実写の画像を表示する手段は色々ありますが、割と手ごろな部類で試すことができると思います。今回はKandao Qoocamの写真を元にしましたが、デプスが取れるデバイスであればおそらく似たようなこと、また動画化等もできると思います。是非色々試してみて素敵な思い出を残してみましょう！