는 CMUSphinx은 자세한 내용을 참조 pocketsphinx 엔진에서 키워드 안보를 구현하는 FAQ entry.
는 "keyphrase를 검색"모드에서 디코더를 실행할 수있는 하나의 keyphrase를 인식합니다. 명령 행 시도에서
:
pocketsphinx_continuous -infile file.wav -keyphrase “oh mighty computer” -kws_threshold 1e-20
코드에서 :
ps_set_keyphrase(ps, "keyphrase_search", "oh mighty computer");
ps_set_search(ps, "keyphrase_search);
ps_start_utt();
/* process data */
당신은 또한 우리의 소스에서 파이썬과 안드로이드/자바에 대한 예를 찾을 수 있습니다. 코드는 다음과 같습니다 파이썬, 전체 예제 here :
# Process audio chunk by chunk. On keyphrase detected perform action and restart search
decoder = Decoder(config)
decoder.start_utt()
while True:
buf = stream.read(1024)
if buf:
decoder.process_raw(buf, False, False)
else:
break
if decoder.hyp() != None:
print ([(seg.word, seg.prob, seg.start_frame, seg.end_frame) for seg in decoder.seg()])
print ("Detected keyphrase, restarting search")
decoder.end_utt()
decoder.start_utt()
임계 값이 적절한 균형을 얻을 수있는 테스트 데이터의 모든 keyphrase를 위해 조정해야는 탐지과 거짓 경보를 놓쳤다. 1e-5에서 1e-50과 같은 값을 시도 할 수 있습니다.
최상의 정확도를 위해서는 3 ~ 4 음절로 keyphrase를 사용하는 것이 좋습니다. 너무 짧은 문구는 쉽게 혼란 스럽습니다.
또한, 여러 keyphrase를 검색과 같은 파일 keyphrase.list 만들 수 있습니다
oh mighty computer /1e-40/
hello world /1e-30/
other_phrase /other_phrase_threshold/
을 그리고 -kws 구성 옵션 디코더를 사용합니다.
pocketsphinx_continuous -inmic yes -kws keyphrase_list
이 기능은 아직 sphinx4 디코더에서 구현되지 않았습니다.
CMUSphinx를 사용하지 않고 오디오 스트림에서 키워드 스포팅을 수행하는 알고리즘 설명 또는 라이브러리가 있습니까? –
물론, 당신은 "키워드 스포팅"에 대한 구글 수 있습니다 –
많은 연구 논문하지만 죽은 간단한 구현 –