임베디드랜드

안녕하세요_ms_로보틱스_스튜디오입니다.mp3
오늘의 날씨는 대체로 맑으며 약간 무더울 것으로 예상됩니다.mp3
 

 

한글 TTS 구현하기

 

작성자: Microsoft Robotics Group 김영준 수석 (yjoonkim@microsoft.com)

 

이 번 강좌에서는 단순히 로봇을 제어하는 것 외에 좀더 재미있는 것을 시도해 보도록 하겠습니다. 바로 TTS 기능입니다.

 

기본적으로 별다른 한국어 음성을 설치하지 않았다면, 기본으로 VPL에서는 영어 TTS만 사용가능합니다. 물론 무료로 OS에 탑재가 되어 있기는 하지만, 사용 제품에 비해서 그리 품질이 좋은 것은 아닙니다.

 

한국어 TTS를 구현하려면, 무료 버전도 있기는 하지만, 어느 정도 쓸만한 음성을 만들어 내기 위해서는 아무래도 상용 목소리를 구매해서 설치할 필요가 있습니다.

 

현재 저렴하면서도 품질이 우수한 한국어 목소리를 구할 수 있는 방법은 아래 사이트에 접속하여 NeoSpeech사의 제품이나 RealSpeak 제품을 구매하는 방법입니다.

 

http://www.nextup.com/neospeech.html

 

NeoSpeech 제품은 35$ 이고 RealSpeak 제품은 40$이며, 각기 한국어 목소리를 별도로 판매합니다. NeoSpeech 제품의 경우, 남성과 여성 별로 구매할 수 있습니다.

 

위의 사이트에서 샘플로 미리 들어볼 수 있으므로, 사전에 들어보고 결정할 수 있습니다.

 

본 강좌에서는 NeoSpeech 제품의 Yumi 목소리를 이용하여 설명을 하도록 하겠습니다.

 

NeoSpeech Yumi 또는 다른 제품을 구매하고 다운로드 받은 다음에 설치를 합니다.

아마도 설치 후에 재부팅을 하셔야 할 겁니다.

 

제어판에 가면 음성 이라는 메뉴가 보입니다.

 

 

사용자 삽입 이미지

그림 1

 

이 음성 메뉴를 클릭하면 아래와 같이 텍스트 음성 변환 화면이 표시됩니다. 이 화면에서 음성 선택(V)에 있는 콤보박스를 선택한 후 음성을 VW Yumi로 변경합니다.

 

 

사용자 삽입 이미지

그림 2

 

음성을 변경하고 나면, 바로 아래에 있는 다음 문장 미리 듣기(U) 부분에 위의 그림에서와 같이 한글로 예문이 표시가 됩니다.

 

원래는 위의 상태에서 한국어 목소리로 예문을 자동으로 읽어야 하는데, 불행히도 에러가 발생할 것입니다.

 

일단, 이 화면에서 목소리가 설치된 것만 확인하고 화면을 닫습니다.

 

이 오류를 해결하기 위해서 일시적으로 TextAloud 제품을 Trial Version 형태로 설치했다가 한번 실행시킬 필요가 있습니다. TextAloud Trial 용도로 한 해 무료로 설치가 가능하므로 잠시 설치했다가, 음성을 확인한 후 해당 프로그램을 삭제하시면 됩니다.

 

이상하게도 위와 같이 TextAloud에서 한번 실행시킨 후에는 정상적으로 한국어 목소리가 잘 실행됩니다.

 

TextAloud는 아래의 주소에서 다운로드 받습니다.

 

http://www.nextup.com/TextAloud/download.html

 

자 이제 다시 제어판으로 돌아가서 음성 메뉴를 클릭한 후 한국어 음성이 정상적으로 잘 실행되는 지 확인합니다. 아마도 정상적으로 잘 실행될 것입니다.

 

이제 VPL 프로그램을 실행시킵니다. VPL 프로그램에는 아래와 같이 TTS를 처리하기 위한 서비스가 기본적으로 제공됩니다.

 

 

사용자 삽입 이미지

그림 3

 

위의 TTS 서비스를 끌어다 놓고 Data 액티버티를 연결하여 아래와 같이 구성해 봅니다.

 

 

사용자 삽입 이미지

그림 4

 

위의 프로그램을 실행시켜 보면 해당 문자열이 한국어 음성으로 표시되는 것을 확인하실 수 있을 것입니다. 제가 실행 결과를 녹음하여 첨부 파일로 같이 올려 놓았습니다.

 

이번에는 아래와 같이 변경해 보고 실행시켜 봅니다.

 

 

사용자 삽입 이미지

그림 5

 

마찬 가지로 위의 실행결과도 제가 첨부 파일에 추가해 놓았습니다.

 

위의 예에서도 확인하셨겠지만, 아주 쉽게 한국어 TTS 기능을 구현할 수 있다는 것을 확인하실 수 있을 겁니다.


자 이번에는 TTS Rate를 조정해 보겠습니다. VPL에서는 TTS Rate Volume을 조정할 수 있으며, 이번 강좌에서는 Rate을 조정하는 사례를 보여주도록 하겠습니다.

 

기본적으로 Rate 0이 기본값입니다. 따라서 아래와 같이 다이어그램을 구성하고 실행하면 위의 동일한 결과가 실행될 것입니다.

 

 

사용자 삽입 이미지

그림 6

 

자 이제 위의 값을 3으로 변경해 보고 실행시켜 보세요. 아마도 빠른 음성으로 문자를 읽어줄 것입니다.

 

 

사용자 삽입 이미지

그림 7

 

이번에는 값을 -3을 변경하고 실행시켜 보세요. 그러면 상당히 느린 톤으로 문장을 읽어주게 됩니다.

Posted by suvisor