2012-10-03 4 views
2

음성을 녹음하고 이에 따라 그래프를 그릴 응용 프로그램을 개발하려고합니다.Java로 음성 샘플링

다음은 내가 기대하고있는 결과입니다.

"Hello"시스템이 "Graph A"라고 말하는 소리를 User1이 녹음 할 때 말합니다. 이제 User2가 "Hello"와 동일한 사운드를 녹음하면 시스템은 "Graph B"즉 (Graph A! = Graph B)를 생성해야합니다. 이제 다시 User1은 "Hello"시스템이 동일한 그래프 "그래프 A"를 생성해야하는 것과 같은 소리를 녹음합니다.

자바 샘플링 알고리즘을 사용하고 있지만, 녹음 된 두 번째 시간은 이전에 녹음 된 것보다 항상 다양합니다 (배경 잡음, 음성의 자연적 변화 또는 기타 요인으로 인해 발생할 수 있음).

내 질문은 입니다. 1. 정말 할 수 있습니까? 2. JAVA에 내장 라이브러리가있어 출력을 얻을 수 있습니다.

+1

우리가 로봇이 아니기 때문에 다르게 나타나는 것이 정상입니다. 어떤 언어를 목표로합니까? 음성 인식 시스템을 구축하고 싶습니까? http://cmusphinx.sourceforge.net/과 같이 Java로 구현 된 일부 구현이 있습니다. – Seitaridis

+0

@Seitaridis 아니, 음성 인식을 시도하지 않습니다. 나는 그저 사용자를 감지하고 싶다. 언어가 무엇을 의미합니까? 프로그래밍 언어는 Java입니다. 음성 언어는 산스크리트어입니다. –

+0

당신이 해결하려고하는 문제는 화자 확인/식별과 같습니다. http://en.wikipedia.org/wiki/Speaker_recognition –

답변

1

나는 간단한 사운드 압축/인식 라이브러리와 조금 놀고 있었는데 내가 건너 한이

http://code.google.com/p/musicg-sound-api/downloads/list

당신은 WAV 형식으로 사운드를 녹음 한 후 두 개 (또는 그 이상)의 wav 파일을 비교할 수 있습니다 유사도 (%)

+0

배경 잡음과 같은 외란을 필터링하거나 처리합니까? –

+0

@Ravinder, 나는 소란이 5-8 %의 작은 차별화를 일으킬 것이라고 생각한다. 우리는 그것을 코딩에서 처리 할 수 ​​있습니다. –

+0

@Ravinder 그렇습니다. 위의 Uday Sawant가 언급했듯이 달성하려는 유사성의 비율에 전적으로 의존합니다. 내 지식에 관해서는 동일한 범위 (엔진, 군중 등)에 있지 않으면 백그라운드 노이즈를 차단하는 것이 어려울 것입니다. 무엇이 무엇인지 (주파수가 좁아 집니까?) –