2012-12-24 5 views
6

[가능하면 중복]하지만 아래 질문에 대한 답변을 찾지 못했습니다.Android : 음성 인식

나는 지난 이틀 동안 음성 인식에 대한 몇 가지 연구를하고있다 그리고 나는 나의 질문에 대한 답변을하지 않았다 :

  1. 이 서비스로 음성 인식을 실행할 수 있습니까? 이런 식으로 구현하고 싶습니다 : 음성 인식을 통해 내 전화가 수면 모드에 있지만 번호를 호출해야합니다.
  2. 전철, 버스 등에서 음성 인식이 제대로 작동합니까?
  3. 음성 인식과는 별도로 음성을 감지하는 센서가 있습니까?
  4. 음성 인식이 제대로 작동하려면 사용자가 전화기에 더 가까이 말할 필요가 있습니까?
+7

* 음성 * 인식 또는 * 음성 * 인식을 ​​의미합니까? ([태그 : 음성 인식] 발췌 부분을 읽으십시오 : "음성 인식은 말하는 사람의 신원을 나타내며"음성 인식 "을 의미하기 위해 자주 오용됩니다 - 무엇이 말하고 있는지 식별하십시오.) –

+2

다음 번에 하나의 질문을 찾으십시오. 한 번에 한 가지 질문 만하면됩니다. 그 대답을 찾는 데 도움이 될 것입니다. –

답변

10

1) 그것은이 콜백 메소드가 결과를 얻기 위해 사용하는 구글 API를,에서 만든 같은 서비스에 음성 인식 기능을 넣어 적절한 방법이다. 지속적으로 실행하려면 서비스가 절전 모드로 전환되는 것을 방지하는 wakelock을 처리해야합니다. 여기에 더 많은 정보가 제공됩니다. Wake locks android service recurring 큰 배터리 단점이 있습니다. CPU가 계속 작동하고 수신되는 사운드 데이터를 연속적으로 계산해야하기 때문입니다. (필터, 임계 값 등으로 줄일 수 있음)

2) 음성 인식은 간단한 작업이 아닙니다. 참조 할 수있는 많은 계산 및 데이터가 필요합니다. 입력 된 오디오가 깨끗하지 않으면 (잡음, 많은 사람의 목소리 등) 올바른 출력을 얻는 것이 더 어렵습니다. 정확도를 높이기 위해 할 수있는 일은 필터 입력 오디오 : 노이즈 억제, 저역 통과 필터 등입니다. 100 % 정확도는 기대할 수 없지만 80-95 %를 달성 할 수 있습니다.

하드 더 많은 인간의 목소리를 필터링하는 것입니다. 그러나 단어의 시작과 끝을 결정하는 적응 임계 값을 가진 간단한 진폭 (오디오 강도 레벨) 알고리즘을 사용할 수 있습니다. 적절한 음성은 전화/장치에 가장 가까운 가장 큰 소리입니다. 따라서 에 따르면 4)은 소리가 가장 크기 때문에 사용자가 마이크 가까이 말할 때 정확도가 더 좋습니다.

3) 센서로 무엇을 의미하는지 알지 못하지만 단순히 단어를 디코딩하는 대신 사람의 목소리를 감지하는 알고리즘이 있습니다. 이 알고리즘은 일부 코드가 된 Speex 프로젝트 문서에서 찾을 수 있어야 음성 활동 감지 (VAD)라고 http://www.speex.org/

음성 인식을 처리 할 수 ​​

가장 간단한 방법은 구글 음성 API를 느릅 나무를 사용하는 것입니다 꽤 좋은, 그리고 그것은 언어의 많음을 인식하지만, 필요 인터넷 연결 - 결과를 얻는 데 시간이 걸립니다.
더 빠른 CMU Sphinx이지만 모든 디코딩이 장치에서 이루어지기 때문에 언어 모델이 거의없고 RAM 메모리와 프로세서 계산이 더 필요합니다. 필자의 의견으로는 dicitionary (인식되는 단어)가 명령 (왼쪽, 오른쪽, 뒤로, 멈춤, 시작 등)처럼 작을 때 매우 좋다.

+0

입력 해 주셔서 감사합니다. 나는 내가 어디에 있든 도움을 요청할 때 자동으로 긴급 전화 번호로 전화 할 응용 프로그램을 개발하려고했습니다. 버스, 시장 또는 어딘가에있을 수 있습니다.나는 제 1 질문에 대한 답변을 얻지 못했습니다. 입력이 있다면 알려주세요. –

+0

내 대답을 업데이트 했으므로 첫 번째 질문도 다루었습니다. 스핑크스는 매우 빠르고 매우 인식하기가 필요한 단어가 하나 있기 때문에 매우 신속합니다. "HELP" – MP23

+0

귀하의 의견을 다시 한번 감사드립니다. 네 번째 질문 및 답변과 관련하여 말씀 드렸듯이 정확성을 높이기 위해 마이크 가까이에서 이야기해야합니다. 나는 버스에 있다고 가정하고, 너무 혼잡하고 시끄러운 곳에서 도움이 필요하다. 올바른 단어를 인식하는 데 도움이되지 않을 수도있다. –