음식인식 모바일 어플리케이션

음식인식 모바일 어플리케이션은 TensorFlow 딥러닝 프레임워크로 학습된 학습모델로
사용자의 음식 이미지를 입력받아 분석, 학습 및 모델 생성을 수행하며 음식 인식 결과를 사용자에게 제공합니다.

시스템 구성

음식인식 어플리케이션은 개인 맞춤형 음식인식 기술을 구현하였으며 CNN(Convolutional Neural Network) 기반의 딥러닝 기술을 적용하여 음식 이미지를 학습(Training), 추론(inference), 분류(classification) 합니다.
개인 맞춤형 음식인식 기술이란 개인이 즐겨먹는 음식에 대해 가중치를 부여하여 음식인식의 인식률을 높여줍니다.
현재 SE웰니스 모바일 앱의 건강일기에 기능이 추가되어 있으며 식사기록, 식단, 칼로리 관리 등에 응용하여 사용할 수 있습니다.

시스템 구성 설명

음식 이미지 학습
및 추론 과정

음식인식을 위한 딥러닝 프레임워크는 Tensorflow를 사용하였으며, Google InceptionV3라는 Network 구조를 이용하였습니다. 본 프로젝트에서는 음식 이미지의 학습과 모델 생성은 서버에서 수행하고 모바일 ,어플리케이션에서는 학습 모델을 수신하여 음식 인식 (Classification) 작업을 수행합니다.

서버의 음식 학습과 학습모델 송신 과정
서버의 음식 학습과 학습모델 송신 과정
모바일 어플리케이션에서의 음식 인식,
라벨링 과정과 서버의 재학습 과정
모바일 어플리케이션에서의 음식 인식, 라벨링 과정과 서버의 재학습 과정
음식인식 학습 진행 사항 모니터링 GUI
음식인식 학습 진행 사항 모니터링 GUI 화면 (Scalars)-TensorBoard
음식인식 학습 진행 사항 모니터링 GUI 화면 (Histograms)-TensorBoard
음식인식 어플리케이션 GUI
음식인식 어플리케이션 GUI 화면
날짜 선택 화면
날짜 별 식사기록 관리(입력, 수정, 삭제)
음식인식 학습 진행 사항 모니터링 GUI 화면
아침, 점심, 저녁 선택 화면
아침, 점심, 저녁 별 음식 사진촬영, 사진 라이브러리 연동
음식인식 어플리케이션 GUI 화면
음식인식 결과 선택 화면
인식된 음식 종류 선택 저장, 학습이 안 된 이미지는 음식 이름 저장 (Labeling)
음식인식 학습 진행 사항 모니터링 GUI 화면
설정 화면
음식인식 설정 화면, 개인화 수준 반영, 음식인식 데이터 전송, 모델 업데이트 기능