-
今回のプロダクト開発に至った経緯
- 居酒屋やバーに行くと、「マルガリータ」「カミカゼ」「爆弾」など、名前を見ただけではどのようなお酒か分からないものがドリンクメニュー内に散見される。それらを一々検索することは大変なので、メニューをタップするだけで、手軽に知りたいと考え、今回の開発に至る。
-
着目した顧客
- お酒に精通していない人
-
顧客の課題
- 「マルガリータ」「カミカゼ」「爆弾」など、居酒屋やバーのドリンクメニューには、名前を見ただけでは何か分からないものがある。
- それぞれのドリンク名を一々検索することは大変である
-
現状
- メニューの情報量が少なく、どのようなお酒か分からないものがあるが、それらをいちいち調べるのは面倒。また、海外のお店では尚更メニュー内容が読めない。
スマートフォンで撮影されたドリンクメニューの写真がそのままUI化され、気になるお酒をタップするとお酒の味・度数・レシピなどの詳細情報を見ることができる。また、ユーザーは飲んだお酒や気になるお酒をブックマークできたり、ユーザーにオススメのお酒が提示されたりする。さらに、複数言語対応しており、海外でも使え、幅広いユーザーが使用することができる。
スマホで撮影したドリンクメニュー画像から、ドリンク名をタップするだけで、ドリンクの詳細情報が見られる
メニューや詳細情報の言語が切り替わることで、日本人が海外のお店で、また外国人が日本のお店で、様々なシーンで、幅広いユーザーが利用可能
- 一度メニューの写真を撮るだけで、検索せずとも、気になるお酒の情報が素早く手軽に入手できる。
- さらに、海外でお店に行った際、理解できなかったメニューが翻訳されて説明も加えられることで理解可能になる。
- 飲んだお酒や気になるお酒を記録し、それを元にユーザーへのおすすめや、お店の人気メニューを提示
- 位置情報・メニューの店名・Beaconなどの情報をもとに、撮影したメニュー画像と撮影した店を紐づけることで、店の情報も記録し、ドリンクからお店情報を検索可能
- フードメニューと料金の情報も取得し、注文&決済サービスを構築
- Google Cloud Vision API
- Google Translate API
- The cocktailDataBaseから取得したデータ
- カクテルレシピ - Liquor & Cocktail - サントリーから取得したデータ
- Amazonから取得した取得したデータ
- Unity
- Ruby on Rails
- Ruimoji
- スマートフォン
- 岡崎直観, 辻井潤一「高速な類似文字列検索アルゴリズム」(情報処理学会創立50周年記念全国大会)2010
- DB設計(ER図)
- ドリンクデータの収集(Python)
- 写真撮影(Unity)
- アニメーション(Unity)
- サーバーとの通信(Unity)
- Google Cloud Vision APIのOCR機能向上
- あいまい検索、類似度検索:「高速な類似文字列検索アルゴリズム」を実装したSimStringのRuby移植ライブラリ
- DB構築(ER図)
- ドリンクデータの収集(Python)
- ドリンクデータのDB形式への整形(Python)
- 想定しうる全ての情報を入れ、アルコール度数、味、材料など様々な条件で検索可能。かつ言語依存のテーブルと言語非依存のテーブルを完全に分離することで何カ国語にも対応できる様拡張性の高いデータベース設計になっている.すでに300を超えるカクテルデータを格納した.
NG_1803_2 /db/schema.rb NG_1803_2 /db/DB_demo.rb
-
GoogleCloudVisionAPI OCRは日本語対応の他のAPIやライブラリに比べて高いが、単語や文字がかなり細かく切られて取得される傾向があったため,適切に結合する機能を実装し,識字精度は平均して9割以上となった. 薄い黄色は識別し,データベースに情報があるもの.ピンク色は識別できたが,データベースが存在しないものである. NG_1803_2 /lib/google_vision_api.rb
-
お店によると,「ファジーネーブル」「ファジー・ネーブル」などの表記揺れやOCRの誤認識に対応するために,高速なあいまい検索をライブラリを用いて実装した NG_1803_2 /controllers/menu_images_controller.rb