Project/GDSC(Google Developer Student Clubs)

2022 GDSC Flutter & ML Toy Project

JunJangE 2022. 2. 8. 14:02

GDSC SCH에서 한 학기 동안 Flutter Study 멘토링을 진행하면서 기본적인 Flutter 메커니즘, Flutter에서 UI를 그리는 법, dart 문법, 비동기, api 사용 등을 수업했다. 그동안 배운 Flutter 학습을 토대로 개발 실력을 뽐낼 수 있게 본격적인 프로젝트를 진행시키기로 했다. Toy Project는 Flutter 멘티분들과 ML 멘티분들의 협동 프로젝트로 진행했고 목표는 ML 기술을 포함시킨 Flutter 앱을 개발하는 것이었다.  

예시 작품을 보여주기 위해 내가 포함한 Flutter Core Member분들과 ML Core Member분들과 함께 1주일 동안 간단한 Toy Project를 진행했다. 주제를 정하기 위해 노션을 통해 회의를 진행했고 주제는 분리수거 가이드 앱,  수화 글씨 인식 앱 등이 있었다. 투표를 통해 주제를 선정했고 최종적으로 분리수거 가이드 앱을 주제로 하여 앱을 개발하기로 했다.

ML Core Member분들은 kaggle 데이터를 가지고 분리수거 이미지를 분류하는 모델을 tflite 형태로 우리에게 주는 작업을 진행했고 우리는 기본적인 앱을 개발하여 tflite 모델을 연동시키는 작업을 진행했다.

Lead님께서 기획과 개발을 맡아 프로토타이핑과 firebase에서 이미지 분류를 통해 저장된 분리수거 타입을 리스트 뷰로 그리는 것을 진행했다. 다른 Flutter Core Member분들은 개발을 맡아 메인화면과 스플래시 화면, firbase 생성, firbase 데이터를 토대로 레벨과 나무의 성장 등 UI에 그려주는 것을 개발했다. 나도 개발을 맡아 tflite 연동을 했고 이미지를 찍거나 갤러리에서 가져온 이미지를 분리수거 가이드해주는 UI를 그려주었다. 또한, 분류된 이미지를 firebase에 저장하는 것을 구현했다. 자세한 내용은 리드미의 링크에 나와있다.

다음 영상은 최종적으로 개발한 앱의 시연 영상이다.

시연 영상

앱을 개발하면서 ML Core Member분들이 ML을 통한 모델을 tflite로 변환하는 과정에서 정확도가 바뀌는 이슈가 있었고 데이터 정규화를 다시 하는 방법으로 해결했다. 그 외에는 문제없이 앱을 개발했다.

github

 

GitHub - Recycle-Cycle/Recycle-Cycle

Contribute to Recycle-Cycle/Recycle-Cycle development by creating an account on GitHub.

github.com