과정/1차 AI프로젝트

AI 1차 프로젝트 주제 확정 및 멘토링_0907

줘요 2023. 9. 8. 10:33

0907 멘토링 내용정리

 

  1. 기획한 프로젝트 소개

  • [영상처리] 독거노인의 활동분석을 위한 웹 어플리케이션
  • [음성인식]  발음 연습을 위한 웹 어플리케이션

주제선정이유, 사용할 기술, 해결방안, 필수 요구사항 설명

 

  2. 멘토님의 프로젝트 프로세스 설명

  • [영상처리] 독거노인의 활동분석을 위한 웹 어플리케이션

영상처리기술이 음성인식기술보다 적용하기 수월하다.

 

(1) 실시간으로 촬영할 컴퓨터와 모니터링할 컴퓨터 존재

(2) 촬영된 영상은 서버에 실시간으로 전송

(3) 모니터링 컴퓨터는 서버의 영상을 실시간으로 확인할 수 있으며

이상감지 시에 로그를 기록하고 알림을 보냄(문자 등)

(4) 로그 기록 및 이상감지와 이상감지 시 알림보내기 등 프로세스가 복잡하여

짧은 1차 프로젝트 기간 동안에는 어려울 것이라 판단됨

 

  • [음성인식]  발음 연습을 위한 웹 어플리케이션 (선정)

(1) 웹 실행 시에 연습할 문장을 바로 보여주고 닉네임을 입력한 다음에 연습하기 가능

(2) 문장은 총 10개로 설정하고 랜덤으로 뿌려줌

(3) 각 문장마다 발음을 들어볼 수 있고 녹음버튼을 누르고 입력 가능 

(4) 출력된 문장과 입력된 문장을 비교하여 각 문장마다 결과(점수) 반영

(5) 10개의 문장을 완료하면 각 문장의 점수 순위 리더보드 조회 가능

(6) 필요한 요구사항이 1차 프로젝트에 적합하다 판단되어 진행하기로 함

 

 

  3. [음성인식] 웹 어플리케이션 시나리오

  • 접속
  • 연습 UI (닉네임 입력창 필요, 텍스트 10개중 랜덤으로 출력)
  • 텍스트 듣기 기능 (사용자가 들을지 선택할 수 있음 / TTS)
  • 녹음 실행 (입력장치(마이크)에 음성을 입력하면 음성을 텍스트로 변경 / STT,브라우저 마이크 사용자 권한 승인 필요
  • 결과 보여주기 (text diff를 사용하여 문자열 비교)
  • 순위 리더보드 (건당 기준)

페이지는 총 2페이지로 구성(연습페이지, 리더보드)

  • 접속
  • 연습 UI (닉네임 입력창 필요, 텍스트 3개중 랜덤으로 출력)
  • 녹음 실행 (입력장치(마이크)에 음성을 입력하면 음성을 텍스트로 변경 / STT,브라우저 마이크 사용자 권한 승인 필요
  • 문제를 풀때마다 임시로  프론트에 저장
  • 3문제 점수 평균 계산 후 결과 보여주기 (text diff를 사용하여 문자열 비교)
  • 결과를 보고나면 자동으로 순위 리더보드로 이동(3문제 평균 점수로 순위 설정)

 

 

  4. 역할 분배

 

FrontEnd(HTML, CSS, JS)

- 최지윤(연습페이지)

- 황희연(리더보드, front용 PC셋팅)

BackEnd(Python or JAVA)

- 윤다운(DB개발, 스키마 설계, 환경셋팅)

- 손수성(API 연동, 웹 서버 셋팅)

- 정주호(core module (text비교), 웹 서버 셋팅)

 

+ 소스 형상관리(github), base source code 작성 후 github 공유 >> 담당자 배정 필요

+ 프로젝트 일정 관리, 일지, 진행 사항 정리할 담당자 필요 (구글 드라이브, WBS)

 

  5. 질문 및 피드백

 

1. python과 java 혼용 가능 여부, 사용할 프레임워크

- 혼용은 가능하며, python을 단독으로 사용했을 때 와 비교했을 때 어느쪽이 더 효율적일지는 경우에 따라 다르기 떄문에 정답은 없음. 주말간 개인 공부, FastAPI 특강을 들은 후에 결정

 

2. AI 모델을 찾는 방법과 적용하는 방법

- 사용할 API를 검색 > 비용, 정확성, 사용성을 고려하여 선택 (우리는 구글 API를 사용하기로 결정)

- java를 지원하는 오픈소스가 있긴 하지만 대부분 python으로 되어있음, 양으로 비교했을 때 python이 압도적

+ 현업에서는 러프하게 프로토 타입을 만들어서 비교한 후 결정하는 경우도 많음

 

3. 생성형 AI가 생성하는 결과값 및 사용자가 입력하는 값을 DB에 저장해야할지

- 저장하지 않고 랭킹 시스템을 위해 닉네임과 점수만 DB에 저장하기로 결정

 

4. 웹 서버를 셋팅하지 않은 상태에서 구현을 먼저 할 수 있을지

각각 개인 로컬 서버에서 구현을 하고 실제 데모를 하기 위한 서버를 따로 구축해야할듯

 

  6. 전반적인 프로젝트 일정