RubyKaigi2025でOCR技術を活かしたブースを出展しました
こんにちは、WED 株式会社でエンジニアをしている篠崎(@sinora_)です。
WED は RubyKaigi2025 にプラチナスポンサーとして協賛しました。今回は普段捨ててしまうレシートが、OCR 技術によって価値あるデータに変わる体験を提供した展示ブースの様子をお届けします。
ブースの内容:レシートから「ruby」を探せ!
WED では、レシート買取アプリ「ONE」を運営しており、OCR も自社で構築しています。今回のブースでは、その技術力を体験できるコンテンツを用意しました。
内容は、参加者が持っているレシートを OCR で解析し、その結果に応じて景品をプレゼントするというシンプルながらも楽しめるものです。
RubyKaigi にちなんだ特別ルールとして、レシートの商品名のひらがな・カタカナをローマ字に変換し、その中に「r」「u」「b」「y」の文字がいくつ含まれているかでスコアを競う仕組みを考案しました。
例えば、レシートに「ビール」という商品があれば、ローマ字では「bi-ru」となり、「b」「r」「u」の 3 文字が含まれているので 3 ポイントとなります。
このゲーム性のある体験を通じて、WED の OCR 技術の強みをアピールしました:
- レシートの内容を正確に構造化できる技術
- 商品名を個別に認識し、正確に抽出する精度
- 様々な店舗のレシートフォーマットに対応できる柔軟性
OCR 処理の実演
実際の処理の流れをご覧ください:
動画が早すぎるので、実際の処理例を画像でご紹介します:
撮影されたレシート
OCR 解析後の結果
この例では、レシートから「生コッペパン(ハムカ」という商品名を正確に抽出し、ローマ字変換後に「u」の文字を検出していますね。
お気づきの方もいらっしゃると思いますが実は「高得点のコツ」がありまして:
- 商品数が多いレシート → 検出チャンスが増加
- 長い商品名が含まれるレシート → 文字数が多いほど「ruby」文字が含まれる可能性が高い
最高記録は 40 点だったのですが、スタバのレシートもしくは、沢山購入したドン・キホーテのレシートでした。
また商品名だけでなく、以下の情報も高精度で抽出できます:
- 店舗名・チェーン名
- 住所情報
- 電話番号
- 合計金額
- 支払い方法
- 購入日時
- インボイス登録番号
データで見る「Rubyist の松山グルメマップ」
収集したレシートはすべて構造化された状態で BigQuery に保存しました。これにより、松山市における Rubyist の行動パターンを分析することができます。
今回は約 100 枚の松山市内のレシートから、「Rubyist たちが松山でどんなお店に足を運んだのか」という興味深い分析をしてみました。
Rubyist に人気だったお店ランキング
第 1 位は予想通り、コンビニエンスストアでした:
会場周辺にコンビニがなかったことから、これらの店舗付近に宿泊した Rubyist が多かったことが推測されます。
チェーン店を除いた第 1 位(同率)は以下の 2 店舗でした:
道後一会:
水口酒造が手掛ける蔵元直営の店舗で、日本酒や「道後ビール」というクラフトビールも提供しています。グルメな Rubyist らしい選択ですね。
つるちゃん道後店:
道後温泉エリアにあるうどん店です。前乗りした参加者や、カンファレンス後に道後温泉を訪れた Rubyist たちに人気だったようです。
わずか 100 枚のレシートからでも、Rubyist の行動パターンや宿泊エリアの推測ができることが分かりました。
次回の RubyKaigi2026(函館開催)では、事前に函館の地元グルメ情報を調査してから臨みたいと思います!
まとめ:レシートの新たな価値を体験
印象的だったのは、「初日はレシートを捨ててしまった」という参加者が、最終日には「大切に保管して持ってきてくれた」という変化です。これは ONE アプリの「不要なものが何かに変わる」というコンセプトを、ブースを通じて実感していただけた証拠だと思います。
また、通常 ONE はアプリでしか体験できませんが、コアとなる OCR 機能をウェブで体験できるツールを作成したことで、技術の裏側を見せることができました。多くのエンジニアから技術的な質問や感想をいただき、有意義な交流の場となりました。
今回のブース出展を通じて、技術の可能性と楽しさを共有できたことを嬉しく思います。次回の RubyKaigi でも、さらに進化した体験を提供できるよう取り組んでいきます。
Discussion