


Anurupa Karmakar
アヌルパ・カルマカル
Receipt Management System Using OCR
OCRを活用した領収書管理システム
Programming Language:
Python, Javascript
Email:
Address:
沖縄県宜野湾市大山6−3−2
Start Date
February 1st, 2025
End Date
August 1st, 2025

A Bit About the Project (プロジェクトについて)
A receipt management system that allows users to upload receipt images, extracts relevant information using OCR and LLM models, and stores the structured data in a PostgreSQL database. The system will support multilingual receipts and be deployed using Docker on AWS.
Use this space to talk about how you started and share your professional journey. Explain your core values, your commitment to the workplace, and how you stand out from the crowd. Add a photo, gallery, or video for even more engagement.
このプロジェクトは、ユーザーがレシート画像をアップロードし、OCRとLLMモデルを用いて必要な情報を抽出し、構造化されたデータをPostgreSQLデータベースに保存するレシート管理システムです。多言語のレシートにも対応し、Dockerを使ってAWS上にデプロイされます。
このセクションでは、プロジェクトを始めたきっかけや、これまでのプロフェッショナルとしての歩みを紹介してください。あなたの大切にしている価値観や、仕事に対する姿勢、そして他の人とは違うあなたならではの強みを伝えましょう。写真、ギャラリー、または動画を追加することで、さらに魅力的な紹介が可能です。
6 months Program Milestone (「6ヶ月プログラム進捗マイルストーン」)
February 2025 - March 2025
April 2025 - May 2025
June 2025 - July 2025
In February, the initial project setup was completed, including UI development, Firebase-based authentication, and image upload functionality. The frontend was designed using Figma and implemented with HTML, CSS, and JavaScript. OCR research was conducted, and an initial image processing pipeline was built. A GitHub repository was also created to manage version control.
March focused on integrating OCR with the uploaded images. After evaluating various OCR models, Google Vision API was selected for its high multilingual accuracy, with Tesseract as a backup. The OCR feature was successfully linked to the frontend to extract raw text from Japanese receipts. Additional learning in Python, DSA, and Japanese grammar also progressed alongside technical tasks.
2月には、プロジェクトの初期セットアップが完了しました。UIの開発、Firebaseを使った認証機能、画像アップロード機能が実装されました。フロントエンドはFigmaでデザインされ、HTML・CSS・JavaScriptで構築されました。また、OCRに関する調査も行い、初期の画像処理パイプラインを構築。バージョン管理のためにGitHubリポジトリも作成されました。
3月は、アップロードされた画像とOCRの連携に取り組みました。複数のOCRモデルを比較した結果、多言語対応に優れたGoogle Vision APIをメインに、Tesseractをバックアップとして選定。OCR機能をフロントエンドに統合し、日本語レシートからのテキスト抽出を実現しました。技術作業と並行して、Python・DSA・日本語文法の学習も進みました。
In April, the focus shifted to integrating Large Language Models (LLMs) for extracting structured data from raw OCR outputs. Various LLMs including OpenAI GPT, Gemini, and LLaMA were evaluated for semantic accuracy, with Ollama explored for lightweight deployment. A standardized schema was designed to extract key receipt fields such as date, vendor, and amount. The output was successfully formatted into structured data using the selected LLM.
May, involved designing and integrating a PostgreSQL database to store the structured receipt data. A detailed schema was developed to capture essential fields and maintain raw payloads in JSON format. The database was securely connected to the backend, enabling automatic storage of extracted information linked to authenticated users. This completed the core backend infrastructure for data management.
4月には、OCRで抽出された生テキストから構造化データを抽出するために、大規模言語モデル(LLM)の統合に注力しました。OpenAI GPT、Gemini、LLaMA など複数のモデルを意味理解の精度面から比較検討し、軽量な導入の選択肢として Ollama も検証しました。レシートの「日付」「店舗名」「金額」などの主要項目を抽出するための標準スキーマを設計し、選定したLLMを用いて正確な構造化データを生成することに成功しました。
5月には、構造化されたレシートデータを保存するための PostgreSQL データベースの設計と統合を行いました。必要な各フィールドを網羅した詳細なスキーマが作成され、生データはJSON形式でも保持できるように設計されました。データベースはバックエンドと安全に接続され、認証されたユーザーごとに自動で情報を保存できる仕組みを構築しました。これにより、データ管理のための基盤となるバックエンド構成が完成しました。
In June, the project was containerized using Docker to ensure consistency across environments. Docker images were pushed to DockerHub, and deployment was carried out on AWS, with alternatives like Heroku and Vercel explored for flexibility. Efforts were also made to initiate a CI/CD pipeline for streamlined updates and deployment. By the end of the month, the full-stack application was successfully made accessible online.
July was dedicated to testing, refining, and finalizing the system. End-to-end testing was conducted, and both OCR and LLM components were optimized for improved accuracy and multilingual support. The UI/UX was refined based on user feedback, and comprehensive technical documentation was prepared. The project concluded with a robust, production-ready receipt management system.
6月には、プロジェクト全体をDockerでコンテナ化し、環境間での一貫性を確保しました。作成したDockerイメージはDockerHubに公開され、AWS上で本番環境としてデプロイされました。柔軟な展開方法として、HerokuやVercelといった代替プラットフォームも検討されました。さらに、継続的インテグレーション/デリバリー(CI/CD)パイプラインの構築にも取り組み、更新作業の自動化を目指しました。月末には、フルスタックアプリケーションがオンラインで公開されました。
7月は、システムのテスト・最適化・仕上げに集中しました。エンドツーエンドの動作確認を行い、OCRおよびLLMの精度向上と多言語対応の強化を図りました。また、UI/UXの改善をユーザーフィードバックに基づいて実施し、技術的なドキュメントも充実させました。こうして、堅牢で実運用可能なレシート管理システムとしてプロジェクトは完成しました。
Japanese Evaluation
February 2025 ~ August 2025
Anurupaさんは、ひらがなの読み書きに安定感があり、日常会話にも少しずつ自信を持ち始めています。カタカナと語彙の習得はまだ課題ですが、文の読みがスムーズになり、日本語学習に対するモチベーションも高く、着実に成長しています。特に6月には、趣味を通して積極的に日本語を使おうとする姿勢が見られ、今後の更なる上達が期待されます。

📊 スキル別進捗チャート(2025年2月〜6月)
スキル 2月 3月 4月 5月 6月 7月
ひらがな ✅ ✅ ✅ ✅ ✅
カタカナ ❌ ❌. ❌ ❌ ❌
漢字 ❌ ❌ ❌ ❌ ❌
文法 ー ー △ △ △
日常会話 △ △ 〇 〇 〇
✅ = 出来る |〇 = 良好 |△ = 練習中 |❌ = 苦手 |ー = 未評価


