2022 Spring/Capston Desgin

0. Capston Design - SIGN의 시작

SIGN

내가 다니는 학교에서는 졸업작품 클래스에 해당하는 '캡스톤디자인 (이하 캡스톤)'이라는 과목이 있다. 보통은 4학년에 하지만 어쩌다 같이 해보자는 제안을 받아 4학년생 3명과 함께 3학년 1학기에 졸업작품을 만들었다. 그 이야기, Web 파트에 집중된 이야기를 이 블로그에 담아보려 한다. 근데 나의 귀찮음 때문에 끝까지 다 쓸 수 있을지는 의문이다.

 

캡스톤을 같이한 4학년들은 모두 영상처리 연구실의 학부생들이다. 처음의 캡스톤 제안도 Web 파트를 전담해 줄 수 있는가 하는 제안으로 시작되었다. 즉, 영상처리와 웹이 결합된 프로젝트를 목적으로 시작을 하였다. 

 

개강 전 여러 회의를 거처 우리의 주제는 '수화 인식 화상 회의 플랫폼 (이하 SIGN)'으로 확정하였다. 즉 Web 파트에게 요구되는 것들은 다음과 같았다.

- 화상회의 platform
- Platform의 영상 to 서버의 모델 (PyTorch)

우리가 확실하게 로드맵을 정하고 진행한 것이 아니라 위와 같이 정하고 시작을 했다. 우선 여러 경우의 수를 생각해 보았다. 무엇보다도 수화를 인식하는 모델이 Python 으로 제작된 구동되는 PyTorch 기반 모델이니 Python으로 개발하는 방향으로 생각을 했었다. 하지만 내가 Python을 전부 꿰뚫고 있는 것이 아니라 Platform을 만들기는 힘들다는 판단을 하고 다른 분야를 더 찾아보기로 했다. 이후 ZOOM의 APPs 기능에 Extension 형태로 추가를 하자는 의견을 제시했고 내 팀은 내가 개발할 수 있는 방향으로 나아가자고 했기에 나의 의견을 수긍하였다. 혼자 생각을 해 보았을 때 ZOOM의 Extension으로 개발을 한다면 범용성은 좋아지겠지만 우리가 스스로 개발한 것이 아니기 때문에 자립성이 떨어질 것 같았다. 더 찾아보다가 '노마드 코더'의 줌 클론코딩 클래스를 발견하게 되었다. 본 클래스는 Node.js 기반으로 Socket.IOWebRTC를 이용해 화상회의 플랫폼을 구현하는 클래스이다. 본 DevLog에서는 이 줌 클론 코딩 이후의 내용으로 다룰 예정이다.

 

참고

노마드 코더 '줌 클론코딩' 클래스

 - https://nomadcoders.co/noom