helppy, 다섯번째 여정
끝이 보인다! helppy의 여정!
solution_challenge helppy안녕하새요, 여러분!
다섯 번째 helppy 팀블로그 포스팅을 맡게 된 이슬비입니다.
드디어 저희팀 팀블로그가 한 바퀴를 돌아 다시 제가 쓰게 되었습니다! :)
12주차(3/13 + 3/16)
이번 주에도 역시 두번의 회의를 진행하였습니다.
1. 3월 13일
-
Frontend: 저희 팀에서 가장 고생하고 있는 우리 재영님 … ❤️ 구현하고자 하는 기능이 모두 난이도가 있다보니까 여간 쉽지 않은 듯합니다 …
현재까지는- ImReader 어플을 켰을 때: 메인화면에 쇼핑몰 어플, 배달 어플 등 여러 가지 어플이 디스플레이 되는데, 이때 해당 어플이 없으면 곧바로 플레이스토어로 들어가게 됩니다. 그런데 여기서 어플이 있더라도 무조건 플레이스토어로 들어 가는 이슈가 있어 해당 이슈를 해결하는 과정에 있어요!
- TTS API 연동: 아직 시도 중!
- 이미지 정보: 저번 팀블로그를 보셨다면 아시겠지만, 현재 서버에 모델을 연동하고 추출되는 글자를 웹페이지로 출력하는 부분까지는 가능한데요, 사실 이보다 더 중요한 건 프론트에서 서버로 이미지 정보를 넘겨주는 것입니다. 이 이미지를 어떻게 변환하고 넘겨줄지에 대해서는 아직 논의 중에 있어요.
이러한 부분들이 구현 및 진행된 상태입니다.
아무래도 다른 것보다도, 보이스 오버의 제스처 기능, 화면 속 컴포넌트를 따오는 일 등이 다른 것보다 우선 순위에 있다보니 앞으로는 이 부분에 집중해주시기로 하셨습니다! 👀
-
Backend: 저희 팀에서 백엔드를 맡고 계신 인재님께서는 이번 주에 이미지를 Byte Array로 바꾼 정보를 Byte String로 변환하여 모델의 input 값으로 넣어주는 시도를 계속해서 하셨습니다!
하지만 계속해서 싪패해서 노력하셨는데요, 사실 이것도 비하인드가 있답니다 ~~^^ 사진 속에 글자가 없는 이미지를 Byte Array로 바꾸어 계속 시도해보셨던 우리 인재님 😇
문제점을 깨닫고, 글자가 있는 이미지를 input 값으로 넣으니 전처럼 잘 나오는 것을 확인하였답니다! 그리고 결과가 더 명확하게 나올 수 있도록 모델의 결과값의 구조를 살짝 수정하여서 아주 깔끔한 결과값을 받을 수 있었어요! 그 부분은 이따 같이 확인해보도록 하죠 😃
그리고 서버(Local)에서 모델을 바로 돌리니 inference 시간도 더 길어지고 CPU가 감당하지를 못하여 GCP 사용 등을 고려해보기로 하였습니다.
- DeepLearning: 저랑 준석님은 이제 할 일이 없어졌답니다 … 이유는 바로 어떤 모델을 사용할지 확정을 했기 때문이죠! 저희는 easyOCR이라는 오픈 소스를 사용하기로 정했습니다. 이를 직접 fine-tuning 해봤지만, 기존보다 성능이 떨어지는 놀라운 결과를 보여주어 기존 모델을 가져가기로 했답니다 ~!
앞으로는 회의 때 틈틈이 솔챌 제출 ppt나 데모 비디오 스크립트를 만들어야겠어요 ^_^ 🫶
2. 3월 16일
- Frontend: 재영님은 계속해서 제스처 기능을 구현 중이십니다! 파잇팅 온니 … 👏
-
Backend: 서버가 모델을 힘들어하는 탓에 GCP를 이용하기로 하였습니다! 그래서 helppy 이름으로 google 계정을 새로 만들고, 무료 크레딧을 받았답니다 ~
(인재씨 꼭 솔챌 끝나면 카드 해지해줘유,,, ㅠ)그리고 Postman을 활용해서 모델값을 받아오는 것을 한 번 더 확인했는데요,
여기서
encoded_data
: 재영님 넘겨주실 byte Array를 집어넣고base64.b64decode
: 디코딩 된 base64를 req body로 받아ocr_model
: 그 값을 모델에 넣어주게 됩니다!
이런 플로우를 거치게 됩니다.
아래 이미지를 source 이미지라고 했을 때,
Postman에서 그 결과를 확인해보면 이런 식의 결과값을 받을 수 있답니다.
이렇게 Helppy의 다섯 번째 이야기를 함께 해봤습니다.
이제 제출 전까지 할 수 있는 회의가 고작 4번뿐 …!
우리 모두 끝까지 힘내서 유종의 미를 거둘 수 있었으면 좋겠습니다 ㅎㅎ
Helppy 화이팅 ❤️🔥