
ざわっち
2025/06/18

こんにちは!ノベルワークスのザワッチです!
写真を見ただけでその場所がどこか分かる人、いますよね。
旅行好きの友人とか、地理に詳しい人とか。
ということで、今回は、画像を1枚アップロードするだけで、AIが「ここは〇〇です!」って場所を特定してくれるWebアプリを作ってみました。
きっかけは、友人から「この写真どこで撮ったか覚えてる?」って聞かれてわかんなかったこと。
既存のサービスや仕組みはあるのですが、もっと詳細な解析結果とか、地図上でのビジュアライゼーションとか、技術的な興味で自分で作ってみたくなりました。
最近のGoogle AI Studioでは、ぽいことはできるんですが、やっぱり自分でカスタマイズして作ってみたいと思いました。
「ReverseGeo」という名前で、画像から場所を逆算(リバースジオロケーション)するWebアプリを開発しました。
GeoGuessrにインスピレーションをとても受けています
https://www.geoguessr.com
カメラで撮影 or 画像をアップロード
Geminiが画像を解析
緯度・経度・場所の説明を取得
Tokyo Station, Japan (35.6762, 139.6503)みたいに出る
Google Maps で位置をマーカー表示
履歴を保存(DuckDB)
画像に映っている文字もOCRしてくれて、テキスト生成してくれるのでインサイトがすさまじいです。
Basic: 画像→場所解析
Grounding: 画像解析→検索クエリ生成→Web検索結果
Image Search: 類似画像検索でランドマークを特定
これ、モードによって精度が全然違って、Groundingとかでは最新のニュースやWebの情報も参考にするので、「最近できた建物」とかもいける感じですね。
https://ai.google.dev/gemini-api/docs/image-understanding?hl=ja
https://ai.google.dev/gemini-api/docs/grounding?hl=ja&lang=python
https://ai.google.dev/gemini-api/docs/grounding/search-suggestions?hl=ja
WebRTCを使ってカメラ映像をリアルタイムで解析します。
100msごとにフレームをキャプチャするのですが、フレームレートとAPI呼び出し頻度のバランスが重要
あまり頻繁だとAPI制限に引っかかって、遅すぎるとリアルタイム感がなくなる。
100msごとというのが、Geminiと格闘した結果のベストバランスです。
カメラを色々な方向に向けながら、リアルタイムで場所が変わっていくのを見るのは結構楽しいです。
Google Maps 2D/3D表示
検出した場所にマーカー表示
履歴の可視化
ズーム・パン操作
3Dマップがかなりカッコいいです。特に都市部だと建物も立体的に表示されるので、臨場感があります。
JavascriptAPIで提供されていたので、Google Cloudのプロジェクトを作って、Google MapsAPIを有効化して、APIキーを発行しました。
DuckDB WASMを使って、ブラウザ内で履歴データを管理。
こちらの記事でも使ったので、詳細はこちらに↓
ライブモードでもやりたかったのですが、人も移っちゃうので今回は勘弁🥶
天神橋筋商店街
弊社のオフィス近くにある天神橋筋商店街、さすがに天下のGoogleでも日本の商店街までは網羅してないと思いきや、ほぼニアピン。
近くの学校の校庭を指してた
グラングリーン大阪
今年の春にできたグラングリーン大阪。さすがに新しすぎてAIも学習してないはず。
と思いきや、ちゃんと当ててきたって。
弊社にあるジムスペース
建物内部はかなり特徴的じゃないと、安直な回答をしてしまう。
これだと、一見ただのジムのスペースとして認識してしまって、考えるのをやめてしまう。
AIに「こんなに簡単でいいのか」みたいな内省の仕組みがいりそうな感じ。
解析時間は大体2-5秒(モードによって異なる)で、思ったより当ててきた
Gemini 2.0 Flash の画像理解能力は本当にすごい。
特に印象的だったのは、「写真に写っている文字や看板も読み取って、それを手がかりに場所を特定する」という能力。人間の思考プロセスと似ていて、AIが本当に「見て理解している」感じがします。
入力画像の解像度がどんどん上がれば、瞳に映ったものから特定しそう
AIこれやったらいけるかな?これは無理やろ!みたいなを一人でずっとやっててたんですが、めちゃ面白い。
場所によって精度にかなりばらつきがあります。有名な観光地は高精度ですが、住宅地とかだと「だいたいこの辺り」レベルになることも。
当然ですが、AIサービスに依存しているので、ネットワークが不安定だと使えません。
オフライン対応とかできたら面白そう。
山奥でサバイバルするときに使うとか(笑)別の目的になりそう
今回、Gemini 2.0 Flash を使って画像解析アプリを作ってみて、AIに対する新たな気付きを得ることができました。
数年前なら「夢の技術」だったことが、今では個人でも簡単に実装できるようになっているのは本当にすごいことだと思います。
読んでいただき、ありがとうございました!
カテゴリー
最新の投稿
2026/08/19
脱Excelで本業に集中!kintone移行の壁を突破する「FLASH AI サービス」とは
2026/08/18
なぜAIツールを入れるだけでは業務改善できないのか?
2026/08/11
人が減る日本だからこそ、AIとの「協奏」が未来をつくる。
2026/08/10
kintoneアプリが1時間で完成する理由|FLASH AIサービスの仕組み
2026/07/14
kintoneをお試しで使い始めた方へ|失敗しないための「3つのポイント 」
2026/06/16
【後編】AI時代、SIerの価値はどこに残るのか?関東・関西のkintoneトップランナーが語る「共創」の未来
2026/06/12
【前編】AI時代、SIerの価値はどこに残るのか?関東・関西のkintoneトップランナーが語る「共創」の未来
2026/06/03
【管理職向け】「AIとつくる」業務効率化をゴールにした教えないkintone人材育成法!
2026/05/15
元ウェディングスタイリストがITの世界で描く「お客様の喜び」のその先【プロダクト営業 ぱんちゃん】
2026/05/13
【今春、情シス担当になったあなたへ】ブラックボックス化したkintoneアプリに悩まされてませんか?AIがボタン1つで解決!