코코아팹은 누구나 창의적 아이디어를 현실로 만들어 낼 수 있도록
만들고, 공유하고, 배울 수 있는 터전이
되고자 합니다.
아이디와 비밀번호를 잊으셨나요?아이디 / 비밀번호 찾기
코코아팹 회원이 아니신가요? 회원가입
2016-03-21 15:48:34
Speech to Text는 사용자의 음성을 인식하여 텍스트로 변환해주는 것을 말합니다.
STT는 다양한 곳에서 사용되고 있는데, 대표적으로 iPhone에 siri가 있습니다.
이번 컨텐츠에서는 컴퓨터에 마이크를 연결 후 구글에서 지원해주는 STT를 이용하여 프로세싱에서 음성을 입력받아 텍스트로 보여주는 예제를 실습해 보겠습니다.
구글 speech API를 사용하기 위해서는 chromium-dev 그룹에 가입을 해야 합니다.
우선 구글에 로그인을 하신 후 chromium-dev@chromium.org 에 들어가면 밑의 사진과 같이 가입버튼이 있습니다. 이것을 눌러줍니다.
버튼을 누르면 밑의 사진과 같이 나오는데 자신에 맞게 설정 후 가입하기 버튼을 눌러줍니다.(이메일 처리를 안할 경우 해당 구글 메일로 메일이 많이 날라오기 때문에 이메일 받지 않음을 선택해 주었습니다.)
가입이 완료 되었으면 가입한 계정으로 https://cloud.google.com/console 접속해 줍니다.
접속 할 경우 프로젝트 만들기가 나오는데, 원하는 프로젝트 이름을 넣고 만들어 줍니다.
프로젝트가 완성 되었으면 Speech API키를 받기 위해 화면 가운데 있는 API 사용 설정 및 관리 버튼을 눌러줍니다.
API검색 창에 speech API를 검색해 주시면 밑의 두번째 사진과 같이 검색이 됩니다.(chromium-dev 그룹에 가입이 안되있으면 검색이 안됩니다.)
검색 결과를 누르면 Speech API에 대한 간략한 소개와 함께 사용 설정 버튼이 나옵니다. 이를 눌러 줍니다.
사용 설정 누르 신후 사용자 인증 정보로 이동하셔서, 3단계 절차에 맞게 진행 하시면 마지막 단계에서 API 키가 나오게 됩니다.
(* 밑의 사진은 API키를 가려서 안보입니다. 실제로 절차대로 진행하면 빨간 밑줄 그려진 곳에 API키가 나오게 됩니다.)
API키를 받으시면 프로세싱으로 STT를 사용할 준비가 다 되었습니다.
Speech To Text 기능을 사용하기 위해서는 STT라이브러리를 사용해야 합니다.
프로세싱의 라이브러리 추가는 문서 -> processing -> libraries 폴더안에 라이브러리 파일을 넣어 주시면 됩니다.
import com.getflourish.stt.*;
STT stt;
String result;
void setup ()
{
size(600, 200);
// Init STT with default manual record mode
String key = "API키를 입력해주세요.";
stt = new STT(this, key);
stt.enableDebug();
stt.setLanguage("en");
// Some text to display the result
textFont(createFont("Arial", 24));
result = "Say something!";
}
void draw ()
{
background(0);
text(result, mouseX, mouseY);
}
// Method is called if transcription was successfull
void transcribe (String utterance, float confidence)
{
println(utterance);
result = utterance;
}
// Use any key to begin and end a record
public void keyPressed () {
stt.begin();
}
public void keyReleased () {
stt.end();
}
String key = "API키를 입력해주세요.";
이 부분에 위에서 받은 API크를 넣어 주신 후 실행을 하면 밑의 사진과 같이 나옵니다.
(해당 Text는 마우스를 따라 다닙니다.)
이 때 키보드의 아무키나 누르시고 계시면 밑에 콘솔창에 Recoding 이라는 메세지가 나옵니다.(키보드를 계속 누르고 있어야 합니다.)
이때 마이크를 통해 음성을 입력하고 버튼을 떼면 인식 진행 및 인식 결과가 콘솔창에 나오면서 밑의 사진과 같이 결과가 나옵니다.
(이 결과 또한 Text가 마우스를 따라 다닙니다.)
이번 컨텐츠에서 프로세싱을 통해 음성인식 하는 방법을 알아봤습니다.
이를 응용하면 프로세싱과 아두이노와 연결하여 음성으로 제어할 수 있는 다양한 프로젝트가 가능하니 한번 도전해 보세요.
kocoafabeditor
항상 진취적이고, 새로운 것을 추구하는 코코아팹 에디터입니다!