丸ノ内テックブログ検索フォームを使用するには、こちらよりアクセスしてください。Graphで平面を地形に変形させてみた。map物体認識こんにちは。最近暖かくなってきましたね。夏が来たらふらっと喫茶店を訪れて冷たくて苦いアイスコーヒーを飲みたいですね。(ここで喫茶店とは今時のカフェーではなく30年以上営業しているような比較的渋いお店を指している。)実は喫茶店でゆっくりするのが趣味だったりして、今日はこの趣味に最近触ってみている物体認識の技術を応用してみた話をします。静かな喫茶店を探したいいつも喫茶店を探すには下記の方法を取っています。実際に歩いてみる1〜3の方法のメリットは手っ取り早く多くの喫茶店の存在を知れることですが、静かな喫茶店を探したいという立場からすると、これらの喫茶店は有名になりすぎて(もしくは)立地がよすぎて人がたくさんいるというデメリットがあります。4と5の方法は上のデメリットを解消する方法ですが地道な方法です。一概に悪いと言っているのではないです。実際に歩いてみるとその街のよさだとか知っている街の知らない部分を知ることもできるメリットもあります。“静かにひっそりとやっている喫茶店にいきたい、でも見つけるのは難しい”これを解決する方法を考えてました。mapとにらめっこしていた時あることに気がつきました。メーカーの看板を使っているケースが多いことです。COFFEEやUCCコーヒーの看板を目にしたことがあると思います。看板がパターン化されている限りでは物体認識が有効なのでは!?という気づきですね。mapから喫茶店を探したい街の横道のキャプチャ画像を自動的に取ってきて、幾つかのよく目にするメーカーの看板を学習させた認識機を用いて喫茶店の位置を見つけ出します。viewのキャプチャを取ってこれるかまずこれができないと成り立たなくなってしまうので調べました。APIというものを発見。1日あたり最大25000回のマップロードが無料だそうです(2017年8月現在)。APIキーを取得後すぐに結果を取得できます。会社の前の座標でテストします。&key=*******************************************1234567https://maps.googleapis.com/maps/api/streetview?size=600x400&location=35.6747149,139.7623574&heading=270&fov=30&pitch=0&key=*******************************************座標を起点に角度や拡大率を指定してキャプチャが取得できます。mapの座標から次の座標を取得するjsライブラリ?が存在するようなので、それを利用して指定したルートの座標を辿って行き、360度複数枚のキャプチャを取得することができればここはクリアできそうです。認識機を準備してみる道の画像を取ることができました。ここから認識フェーズです。物体認識にはカスケードを用いてみようだとかTensorFlow使おうだとか方法はありそうですが、ここでは案件でも利用したことがあるサードパーティを利用してみます。最大20枚の画像の学習と1000回の認識が無料です(2017年8月現在)。インタフェースに画像を投げていくだけで学習させられる優れものでした。COFFEEの看板画像14枚を学習させてみました。複数地点を選んで(手動)認識機にかけてみた結果!思っていたよりは精度いいのでは...?しかしながら問題点もたくさんあります。サードパーティの認識回数にも制限がある認識機をオープンソースライブラリで実装して学習画像数を増やすことである程度は解決できるかな、と思います。TensorFlowとかYOLOとかを導入してみたいです。mapの自動巡回の解決ですね。2017/04/26Redisについて各データ型と想定用途をまとめてみた●この記事を書いた人しょーへいバックエンドチーム所属。古着と猫と喫茶店がすきです。