0

Kinect를 사용하여 음성 입력에 의존하는 C# 응용 프로그램을 개발 중입니다. 나는 다른 메뉴 항목을 선택하기 위해 사용자가 말할 수있는 아랍어 단어 목록을 가지고있다.강의 Microsoft.Speech Engine 영어 단어가없는 단어의 발음

저는 지난 며칠 동안 거의 성공하지 못했습니다. 발견 된 것 :

CMU 스핑크스 : http://www.ccse.kfupm.edu.sa/~elshafei/AASR.htm 첫 번째 문제점은 자바 기반이라는 것입니다. 나는 KVM과 다리 하나를 보았지만 나는이 일로 너무 멀리 갈 수 없었다. Java에서 작동하도록 설정할 수 없습니다. 이미 준비된 파일을 사용하는 방법에 대한 단계는 없습니다.

나는이 링크가 제안한대로 SRGSdocument를 사용하여 보았습니다. Specifying a pronunciation of a word in Microsoft Speech API 이것은 너무 복잡하여 내 용도에 적합하지 않으며 그것이 필요한지 모릅니다.

나는 또한 보았다 Microsoft Speech Recognition Custom Training 사람의 문제는 비슷하지만 같은 방식으로 내 문제를 해결할 수는 없다.

저는 Sakhr과 같은 상용 응용 프로그램을 사용할 수 없습니다. 예산이 없기 때문에 사용할 수 없습니다. 단순히 단어를 문법에 추가하는 것은 작동하지 않습니다.이 단어는 영어의 일반적인 발음 규칙을 따르지 않기 때문입니다.

기본적으로 내가 찾고있는 단어는 영어로 쓰여진 단어와 마이크에서 오는 다른 발음 집합을 연결할 수있는 도구입니다 (예 : 사전 학습). 그러면 음성 엔진에서 참조 할 수 있습니다 실행 중에 이것이 가능한가?

나는 어떤 옵션이든 열려 있습니다.

감사합니다.

+1

CMUSphinx는, C에 http://stackoverflow.com/questions/9093292/use-ac-library-from-c :

이 페이지는 모든 것을 설명 샤프 코드. 높은 정확도로 아랍어를 인식하도록 Microsoft 엔진을 교육 할 수있는 약간의 기회가 있습니다. CMUSphinx에 대한 자세한 내용은 http://cmusphinx.sourceforge.net을 참조하십시오. –

+0

PocketSphinx에 대해 이야기하고 있다고 가정합니까? Sphinx 4는 자바에 있기 때문에. http://cmusphinx.sourceforge.net/wiki/download/ –

답변

0

당신이하고 싶은 것은 인식기에 대한 사용자 지정 어휘집을 지정하는 것입니다. 그것은 당신이 말한 것처럼 "다른 발음으로 영어로 쓰여진 단어를 연결"할 수있게 해줍니다.

어휘집은 발음 된 단어를 발음 기호로 매핑합니다. 새 사전을 XML 문서로 작성하거나 개별 발음을 인라인으로 지정하여 기본 어휘 (사용자가 영어 인식기를 사용하는 경우 각 단어에 대해 영어 발음이있는)를 자신의 어휘집으로 대체 할 수 있습니다.

아랍어 단어의 발음을 일련의 휴대 전화로 정의 할 수 있습니다 (영어로만 나오는 전화 만 사용해야합니다. 그렇지 않으면 인식이 제대로 작동하지 않을 수 있습니다). 그런 다음 영어 어휘 또는 인라인으로 작성된 단어 (grapheme). 쉽게 호출을 통해 프로젝트에서 사용할 수 있도록 About Lexicons and Phonetic Alphabets (Microsoft.Speech)

+0

이것이 올바른 방법 인 것처럼 보입니다. 나는 실제로 며칠 전에 동일한 링크를 발견했으며 이제 XML 파일을 바로 잡으려고합니다. 다른 사람이 관심이 있다면 내가 끝나면 곧바로 정확한 단계를 게시 할 것입니다. 대답 pilikia 주셔서 감사합니다. –

+0

@Hisham Saleh, 당신이 가지고 있다면 당신의 결과를보고 싶습니다. –