h
Receipt
- 간편한 음식 재료 분류 프로그램
- OCR 인식을 통한 영수증
(이미지)
- App Link:
(app 이미지)
Project Outline
Project Information 프로젝트 정보
- 프로젝트명: 레시피담자
- 간편한 음식 재료 분류 프로그램
- 장을 봐온 음식들을 간편하게 영수증 사진을 찍어서 재료들을 인식하고
- 종류별로 분류하고
- 재료를 사온 순서대로 sorting 해주기
- 종류: 자유주제 개인 프로젝트
Features 특징
Full-Stack Machine-Learning Project
#### DS (Data Science) - Machine Learning & Deep Learning 모델링 - 모델 성능 평가 및 모델 개선 - 모델 경량화 (tensorflow-lite) #### DA (Data Analysis) - EDA 및 시각화 분석 - Trend Dashboard 구현 (Looker-Studio) #### DE (Data Engineering) - Back-end : Cloud DB 구축, 프로그램 Flask 배포 - Front-end : Web page 제작 (HTML5, CSS3)
Tech Stack 기술 스택
#### 프로그래밍 언어 및 프레임워크: - 안드로이드 앱: Java 또는 Kotlin 사용. - iOS 앱: Swift 사용. - 크로스플랫폼: Flutter(Dart) 또는 React Native(JavaScript) 사용.
#### OCR 기술: - Google ML Kit: 모바일 환경에서 텍스트 인식을 지원.
#### 백엔드 및 데이터베이스: - Firebase: 실시간 데이터베이스와 인증 기능 제공. - SQLite: 로컬 데이터베이스로 간단한 데이터 저장 가능.
Process Pipeline 파이프라인
1) 프로젝트 설정 개발 환경 구축: 선택한 프레임워크에 맞는 개발 환경 세팅. Flutter 예시: Flutter SDK 설치, Android Studio 또는 VS Code 설정.
2) 영수증 이미지 처리 카메라 및 갤러리 접근 권한 설정:
사용자가 영수증을 촬영하거나 이미지를 선택할 수 있도록 구현. 이미지 전처리:
이미지의 기울어짐, 조명 등을 보정하여 OCR 정확도 향상.
3) 텍스트 인식(OCR) 구현 OCR 엔진 통합:
Google ML Kit 또는 Tesseract OCR을 앱에 통합. 영수증 이미지에서 텍스트를 추출. 텍스트 데이터 획득:
추출된 텍스트를 문자열 형태로 받아옴.
4) 품목 추출 및 분류 텍스트 파싱:
영수증의 형식에 따라 라인별로 텍스트를 분리. 정규식 또는 키워드 매칭을 통해 필요한 품목 추출. 품목 데이터베이스 구축:
일반적으로 구매하는 품목들의 리스트와 카테고리를 사전에 정의. 추출된 품목을 이 데이터베이스와 매칭하여 분류.
5) 레시피 추천 기능 구현 레시피 API 활용:
Spoonacular, Edamam 등의 공개된 레시피 API를 사용. 보유한 재료 목록을 기반으로 레시피를 검색. 추천 알고리즘 개발:
재료 매칭률, 사용자 선호도 등을 고려한 레시피 추천 로직 구현.
6) 사용자 인터페이스(UI/UX) 디자인 와이어프레임 및 프로토타입 제작:
앱의 화면 흐름과 레이아웃 설계. UI 구현:
직관적이고 사용하기 쉬운 인터페이스 개발. Material Design 또는 Cupertino 디자인 가이드라인 참고.
7) 데이터 저장 및 관리 로컬 저장소 활용:
SQLite 또는 Hive 등을 사용하여 앱 내에 데이터 저장. 클라우드 동기화(선택 사항):
Firebase를 활용하여 여러 기기에서 데이터 동기화 가능.
8) 테스트 및 디버깅 기기별 테스트:
다양한 해상도와 OS 버전에서 앱 테스트. 에러 처리 및 예외 처리:
Project Results 결과물
완성 후 깃헙이랑 대쉬보드 올리기
Project Index 프로젝트 목차
(Part1) Introduction 서론
Depression & MDD 우울증과 주요우울장애 MDD Diagnostic Criteria MDD 진단기준 Necessity of Research 연구 필요성 Purpose & Benefit 목표 및 기대효과 Dataset 선정 데이터셋 Environments setting 개발환경 세팅
(Part2) Database 데이터베이스
Data Preprocessing 데이터 전처리 Cloud Database 클라우드 DB 구축 SQL query SQL쿼리
(Part3) Trend Analysis 트렌드 분석
EDA 탐색적 데이터 분석 Dashboard 대시보드
(Part4) Modeling 모델링
Preprocessing for Modeling 모델링용 전처리 Logistic Regression 로지스틱 회귀 LightGBM LGBM 모델 MLP 다층 퍼셉트론 신경망 1D-CNN 합성곱층 신경망 Final Model 최종 모델 선정 Model Compression 모델 경량화
(Part5) Deployment 배포
Web page Design 웹페이지 제작 Flask app Deployment Flask 앱 배포 Webpage Screenshots 웹페이지 스크린샷
(Part6) Conclusion 결론
Key Takeaways 프로젝트 핵심 My Takeaways 느낀점 회고