Skip to the content.

← go back to the list

Typing for ALL

Members

1. Introduction

Background

채팅 프로그램에는 손의 사용이 많이 요구되기 때문에, 손을 사용하는 것에 제약이 있는 사람들은 채팅에 불편함을 느낀다. 이러한 문제를 해결하기 위해 우리는 음성으로 text를 타이핑 해주고 얼굴 인식을 통해 얼굴표정을 이모지로 변환하여 타이핑해주는 프로그램을 기획하였다.

Target User

손을 사용하는것이 불편한 사람들을 타겟 유저로 하여 프로그램을 기획하였다. 유저는 손가락을 사용하여 타이핑 할 필요 없이 목소리와 얼굴 표정만으로 원하는 말과 감정(이모지)를 전송할 수 있다.

Goal

유저들이 손가락의 사용을 최소화하여 음성으로 text 를 입력하고 얼굴인식을 이용하여 다양한 이모지를 입력할 수 있도록 한다.

2. Images of our Program

Main Screen

Voice Recognition

Voice Recognition

Send

Demo Video

3. Implementation

초기 Idea sketch

최종 완성본

Schedule

What we use

  1. Voice Recognition
    1. IBM Watson voice recognition
    2. https://www.ibm.com/kr-ko/cloud/watson-speech-to-text
  2. Face Recognition
    1. Naver Facial emotion Recognition
    2. https://developers.naver.com/docs/clova/api/#/CFR/API_Guide.md
  3. Web
    1. Framework - django
    2. HTML, CSS, JavaScript

How to build

  1. Voice Recognition User의 음성파일을 IBM서버로 보내 text 형태로 Return 받는다.
  2. Face Recognition User의 얼굴 이미지를 Clova ai. 서버로 보내, 감정을 분석 한 후 감정에 맞는 이모지를 추천한다.
    1. 본 채팅 프로토타입이 실제 채팅창처럼 보일 수 있도록, 채팅창 이미지와 관련 아이콘들로 HTML 화면을 구성하고, CSS로 디자인하는 작업을 하였다.
    2. 해당 채팅 아이콘 (음성인식 아이콘, 얼굴인식 아이콘)을 클릭하였을 때 관련 API (IBM, Clova)가 작동할 수 되도록 하는 Javascript 알고리즘을 구현하였다.
    3. 사용자가 마우스로 클릭하였을때, 이모지가 선택되거나 메시지가 전송되는 이벤트를 가시화해서 Interactive한 요소를 추가했다.
    4. 상기 항목들을 통해 본 채팅 프로토타입이 구현하고자 하는 일련의 채팅 과정을 사용자가 실제처럼 체험할 수 있도록 하였다.

Github

Limitation

Future plan

Review

Reference

Source Code