位置+ARで会話できるサービスをリリースしました

だれかが地図を見ると、その場所の空に四角い窓があらわれて会話ができる、そんなサービスをつくりました。

 (何を言っているか判らないと思うので、サイトをご覧ください。一発ネタ的なサービスです)

 

www.beholderis.com

 

T-Mobile G1 でプロトタイプを作ったのが2009年なので、

ここに至るまでに7年以上かかったことになります。

我ながら執念深い。

 

当時のソースコードを見たら、android:minSdkVersion="3"とあって震えました。

 

f:id:pendulumacts:20161122151541p:plain

 

 

 

 

面食い矯正のための視覚マスキングという未来

視力トレーニングゲームについて、もう少し興味を持って貰えると嬉しいので追記します。

www.extreme-eye-exercise.com

 

このゲームがもし本当に(少しでも)視覚に対する効果があるとするならば、ガボールパッチと呼ばれる模様がV1視覚野を調整するための最適入力になっている可能性があるということです。V1視覚野は、様々な大きさ、角度を持ったガボールフィルタとして脳内に存在し、視覚入力に反応しています。

f:id:pendulumacts:20150901092508j:plain

引用元 http://ohzawa-lab.bpe.es.osaka-u.ac.jp/resources/text/KisokouKoukai2009/Ohzawa2009Koukai04.pdf

そして、Convolutional Neural Network( CNN ) というディープラーニングの領域において、下記のような画像を見た事がある人も多いと思います。

f:id:pendulumacts:20150901094207p:plain

引用元 http://devblogs.nvidia.com/parallelforall/accelerate-machine-learning-cudnn-deep-neural-network-library/

 

CNNは脳の神経回路網を模しているので、こちらもガボールパッチに似ています。そして一般にCNNの学習においては大量の画像の入力が必要になりますが、求めるフィルタが明確であればそれに対応する最適入力も存在するように思えます。

f:id:pendulumacts:20150901094527p:plain
引用元 Jarrett ICCV 2009 , autoencoder(PSD)における学習後フィルタ(右)における最適入力(左)

つまり本ゲームは、ガボールパッチを見るということが視覚野のフィルタを効率良く学習できる方法なのかもしれないという仮説に基づいており、目的はその検証にあります。上の図を見る限り、(出力を最大化する)最適入力はフィルタのおよそ二倍の空間周波数かなと思ったので、本ゲームでも少し細かいガボールパッチを採用しました。


[飛躍します]

仮定に次ぐ仮定でしかないのですが、もし実際の脳機能の学習則がCNNのそれと一致していたら、かつ、最適な入力が視覚野のより下層のレイヤーをも調整する働きがあるのだとしたら、我々は物の見方を状況や目的によってコントロールできるということになります。
現実をどのように歪めて見るのかは自分の脳の回路次第なので、waifu2xのように選択的に超解像をかけるようなトレーニングが可能だということです。


具体的に思いつく例としては、

1. 戦場における索敵

これは最もシンプルな例。畳み込みフィルタは、入力を先鋭化させる(もしくはぼかす)ことが役割であり、任意の対象についての視覚入力をマスキングすることができるとも言える。市街戦やジャングル等で敵を峻別、あるいはノイズを排するために、人の形や色に反応しやすいフィルタを学習することは可能な気がする。

2. 他者の顔を受け入れやすくする

例えば面食いの人は細かなパーツに反応し過ぎている。鼻や口といったパーツへの意識を弱く、瞳へは超解像がかかるような視覚マスキングを施すことで、面食いを矯正できるのではないか。あるいは、誰を見ても自分に顔が似ていると思わせるような方向へのフィルタ学習方法も、他者への親近感が増し、皆が幸せになる道だと思う。

3. 長年の勘や経験を要する職業への訓練

ひよこの雌雄判別や、医療診断画像の解析等については、最適な学習画像というものが存在している筈である。(そのあたりの作業は後年、すべて人工知能の独擅場になってしまうのだとは思うが)

あたりでしょうか。
とはいえこれらの予想はすべて、この視力トレーニング方法が効果があるのか如何にかかってくるので、ぜひ皆さんに検証をお願いできると嬉しいです。
参考までに(入力画像は適当なので効果はありませんが)面食い矯正トレーニングの未来図を以下に。

f:id:pendulumacts:20150901095741p:plain
視覚マスキング予想図としてのゲーム


少しでもこの現象について興味を持って貰えますように。
よろしくおねがいします。

 

この模様は本当に視力を回復させるのか?

視力をトレーニングするゲームを作ったので経緯を説明したい。

www.extreme-eye-exercise.com/ja/

 

 

例えば以下の記事を探っていくと、ガボールパッチと呼ばれる模様を注視する事によって脳の視覚野が調整され、視力が向上する可能性が指摘されている。

 

gigazine.net

irorio.jp


どうやらガボールパッチ(Gabor Patch)とは、サイン波にガウシアンをかけた模様のことらしい。

 

f:id:pendulumacts:20150829100446j:plain

 

なるほど。
つまりこれをポピュラーなゲームに適用させられたら、積極的に画面を見つめることによって効果が高まるのでは、と思ったのでやってみた。

 

案1. Flappy Gabor

f:id:pendulumacts:20150829101829j:plain f:id:pendulumacts:20150829101927j:plain

魂の13点。

どうやら失敗のようだ。周辺視野で主人公と土管を捉えてしまうようで、模様を全く見ていない。そして、あまりに難しすぎて、ストレスがひどい。

 

案2. Gaboris

f:id:pendulumacts:20150829175020j:plain f:id:pendulumacts:20150829175027j:plain

ただのテトリスだった。だが、テトリス的な興奮が無いといえば嘘になる。

プレイしてみないと判らないことだが、模様を色の濃淡としてしか捉えていない自分に気がついた。これも違う。

 

案3. Gabor Crush

f:id:pendulumacts:20150829175055j:plain

おや?

f:id:pendulumacts:20150829175059j:plain

これは・・・可能性を感じる!

画面全体に視線を移動させながら、同時に模様も注視する必要があるため、かなり感触が良い。ちなみに、これが駄目だったらSuper HexagonをGabor化しようと思っていた。滅びへの道はそこかしこに開いている。

 

なお、これら数種のプロトタイプを含めたゲームの開発にはCocos2d-JSを利用してみた。特にFlappyGaborとGaborisについては既存のコードを利用させて貰ったことを付記しておく。

Cocos2d-JSについては、2Dゲームについては全てこれで作るべきだと感じるほどのお手軽で謎なテクノロジだと感じたが、利用している開発者が少ないため、ハマった時の解決策も少ないように思えた。ブラウザでは動作するのにスマホエミュで動作しないこともたびたびで、その際に適切なエラーが表示されないのは困った。
あと、動的にビットマップを生成してそれをSpriteにする方法が未だに判らないので、誰か教えて下さい。

 

といった曲折を経て、完成したので公開する。

 

www.extreme-eye-exercise.com/ja/

 

f:id:pendulumacts:20150829183412j:plain

いわゆるマッチ3パズルだが、模様の大きさが変えられる。

 

f:id:pendulumacts:20150829183425j:plain

色を変えたり、3D立体視としてプレイすることも可能だ。

 

このゲームは、どういったプレイ方法が最も効果的なのか、模様の大きさや色は何が良いのか、各々のベストプラクティスを報告して貰うことを目的としている。もちろん、効果がまるで無かったという報告でも良い。ブラウザでもスマホでも遊べるので、是非プレイしてみて欲しい。
1日10分〜20分程度、週に3〜4日のプレイを推奨。ネガティブな効果があったらすぐに利用を中止すること。なお、「視力トレーニングと効果音」についての特許が出願されているようなので、本アプリでは念のため効果音やBGMを排した。

 

そして、調子に乗って英語と中国語簡体字に対応させてみた。
翻訳はCrowdWorks経由でネイティブの方にお願いしたのだが、アプリの登録の際に要する画像の数が3倍に増えるという苦労は予見できなかった。
ただ、

ガボールパッチについては、適切な中国語が見つからなかったです。これに関連する文献をいくつか読みましたが、Gabor Patchという風に、英語のままで表示することがほとんどでした。このガボールパッチは物理学者の名前から由来した正弦波の刺激パタンだそうですから、勝手に「加博尔函数波纹」という名前を付けました。

このヘンテコで素敵な言葉が、この地上に生まれたのは少し嬉しい。

 

よろしくおねがいします。