Project 41

[Toy Project] 팀원 일정 및 상태 슬랙 프로필 표시 앱 개발 - 1

팀원 일정 및 상태 슬랙 프로필 표시 앱이라고 하니까 너무 길고 멋이 없는 것 같아서.. 적절한 프로젝트명이 생각나면 좋겠다 ㅎㅎ 간단히 한 줄 설명을 남기자면 Gcal ➔ Slack: Automatically update member's Slack status according to the current Google Calendar event. No Contact During Vacation! https://github.com/Gracechung-sw/on-vacation-today 이다. 👉🏻 👈🏻 아이디어 제시 및 만들게 된 동기 2021년 회고 - 습관, 일, 공부, 재미에 내가 적어 둔 2022년의 바람 중 하나엔 이런 글이 있다. 회사의 성장과 함께 만들어 나가는 팀 문화 올해 회사에 새로운 ..

[Milestone 그 이후] Hosting the Docker container on Heroku for TFserving

we built deep learning model classifies pills images, and then deploy the model using TFserving with Docker. ([Milestone 그 이후] Tensorflow Model Serving) In this post, Our main focus will be on model deployment on Heroku using TFserving with Docker. Why Docker ? Because Docker containers encapsulate everything an application needs to run (and only those things), they allow applications to be shut..

[Milestone 그 이후] Tensorflow Model Serving

1. SavedModel로 내보내기 학습시킨 모델을 tf.saved_model.save()함수로 SavedModel 포맷으로 내보낼 수 있다. 모델과 이름, 버전을 포함한 경로를 전달하면 이 함수는 이 경로에 모델의 계산 그래프와 학습결과 가중치를 저장한다. model_version = "0001" model_name = "medisharp_pill_image_model" model_path = os.path.join(model_name, model_version) tf.saved_model.save(model, model_path) 그러면 - saved_model.pb: 계산 그래프를 정의 - variables: 변수값을 담고있는 폴더로, 많은 개수의 가중치를 담은 모델의 경우 변수값이 여러개의 파일로..

[Milestone 그 이후] Docker 개념 잡기 및 Quick Start

학습시킨 딥러닝 모델을 docker를 활용한 tf서빙으로 배포하기 위해 docker에 대해 알아본 것을 정리하고자 한다. 1. Docker란 애플리케이션은 하드웨어, OS, 미들웨어 등 인프라 환경에 민감하게 반응할 때가 많다. 특히 개발 환경과 테스트 환경에서는 동작을 잘 하다가 제품 환경에서는 동작하지 않는 경우도 있다. (실제 첫번째 프로젝트때 배포때문에 너무 많은 고생을 했다. 로컬환경에서는 되는데 왜 배포환경에서는 이런 저런 에러가 발생하지?! 싶은 일들..) 도커는 이미지를 이용해, 어느 환경에서든 '이미지'안에 적힌 내용을 그대로 실행시킬 수 있다.이미지' 안에 서버 세팅에 대한 모든것을 적어놓고, 그 이미지를 실행시키면 어딜 가던 '이미지' 안에 적힌 서버셋팅 환경을 도커가 만들어준다. 이..

💊 약올림 모바일 앱 서비스 README ⏰

1. Intro 팀 명 : Medi#(Medisharp) 프로젝트 명 : Yag-Olim 배포 링크 : 배포 후 추가 예정 2. Project 💊 프로젝트 소개 🗓 약 복용 관리 서비스 '약올림'. 건강도, 편리함도 한 단계 올려보세요. 이게 무슨 약이었더라? 😅 이 약 어떻게 먹는 거였지? 😰 내가 아침에 약을 먹었던가? 😱 이제 헷갈리고 깜빡하더라도 당황하지 마세요. 100여 개의 약 정보, 내가 지정한 시간에 울리는 복용 알람, 나의 복용 현황까지 한 번에! 누구나 쉽게 이용할 수 있는 내 손 안의 약 복용 관리 서비스, 약올림 하나면 충분합니다. 오늘도 잘 챙겨먹고 있나요? 📷 쉽고 빠른 복약 정보 제공 및 관리 촬영 한 번으로 약의 정보를 찾음 공공데이터를 활용하여 복약정보를 쉽고..

[Milestone Week 4(마지막 마무리)] Push Notification/개인정보 관리/로그아웃

push notification을 구현하면서 지금까지 프로젝틀를 하면서 키운 내공들+가치들이 한꺼번에 발휘되었던 것 같다. 모든 팀원들의 책임감있는 태도에 힘이 났으며, 혼자 할 때는 막막했던 것이 HJ님과 협력하니 내가 몰랐던 부분이 채워지고, 필요한 기능이 무엇인지 정확하게 파악하고, 그 기능을 구현하기 위해 정확하고 효율적인 질문/검색을 하고, 찾은 해답을 어떻게 내 상황에 맞게 적용할 수 있었다. 그리고 추가로, 언제나 답은 '공식 문서'와 '원리 파악'에 있다는 값진 깨달음도 얻었다. 🙂 이제 앞서 [프로젝트 기획 및 준비작업] 마일스톤 정하기, UX/UI 디자인, 컴포넌트 리스트업의 에서 계획한 모든 기능구현은 마무리 되었고, 내가 한 일에 대한 회고 글도 끝이 났다. 자면서도 코딩하는 꿈을 ..

[Milestone Week 3] 복약 정보 제공 및 관리 기능

3주차 때는 2주차의 복용 일정 등록 및 관리 기능에 이어서 약올림의 또다른 핵심 서비스인 복약 정보 제공 및 관리 기능을 구현했다. 이 기능은 구현 이전부터 '약 상세 정보를 제공해주는 곳이 있나, 있으면 어디인가?' , '이 데이터를 우리 DB에 저장 할 것이냐 아니면 매번 OpenAPI로 요청할 것이냐', '어떤 정보를 제공해 줄 것인가?', 'OpenAPI를 요청하는 곳을 Client에서 할 것인가 Server에서 할 것인가?' 등에 대한 팀원간 논의가 활발하게 이루어진 부분이기도 하다. 이번에 구현했던 기능들은 기술적인 이슈나 원리를 아는 것 보다 '사례와 사용법'을 아는 것이 핵심이다. 그만큼 공식문서보다는 나보다 먼저 공공데이터, OpenAPI, xml정보의 json화를 고민했던 사람들이 기..

[Milestone Week 2] 알람 일정 CRUD 기능 구현

1. 알람 일정 등록 기능 2주차의 알람 일정, 특히 등록에 관한 기능은 약올림 서비스의 핵심 서비스 중 하나로, 카메라 촬영 또는 직접 입력으로 촬영한 이미지와 함께 알약을 등록하며 캘린더와 시간, 주기 계산 등이 모두 복합적으로 이루어져야한다. 그래서 온 팀원이 마치 한 몸인 것처럼 기능구현의 티키타카가 이루어져야했고, 실제로 그렇게 하였다! 그래서 아래와 같은 아름다운 기능이 구현 될 수 있었던 것이다. 특히 약 등록의 과정이 매우 복잡했다. 스크린 이동이 많았고, 그 스크린마다 정보(state)를 항상 가지고 이동시켜야했기 때문이다. 이 과정에서 나는 camera에 접근하여서 전방/후방카메라 선택/이미지 촬영/선택 또는 재촬영 기능과 알약 이미지를 통한 종류 예측 기능에 대해 집중하였고, HJ님이..