0

Я использую OpenEars в своем приложении для выполнения распознавания некоторых слов и предложений. Я выполнил основной учебник для offline speech recognition и выполнил портирование в Swift. Это процедура настройкиНедостаточное признание из-за фонового шума с использованием OpenEars на iOS

self.openEarsEventsObserver = OEEventsObserver() 
self.openEarsEventsObserver.delegate = self 
let lmGenerator: OELanguageModelGenerator = OELanguageModelGenerator() 
addWords() 
let name = "LanguageModelFileStarSaver" 
lmGenerator.generateLanguageModelFromArray(words, withFilesNamed: name, forAcousticModelAtPath: OEAcousticModel.pathToModel("AcousticModelEnglish")) 
lmPath = lmGenerator.pathToSuccessfullyGeneratedLanguageModelWithRequestedName(name) 
dicPath = lmGenerator.pathToSuccessfullyGeneratedDictionaryWithRequestedName(name) 

Признание хорошо работает в тихой комнате, как для отдельных слов и целых предложений (я бы сказал, что есть 90% попадания). Однако, когда я пытался в тихом пабе с легким фоновым шумом, приложение столкнулось с серьезными трудностями в распознавании даже простого слова. Есть ли способ улучшить распознавание речи при наличии фонового шума?

+0

Попробуйте это https://github.com/icaksama/iSphinx. Надеюсь, вам помогут. – icaksama

ответ

1

Если фоновый шум более или менее равномерно (т.е. имеет регулярный шаблон), вы можете попробовать adaptation of the acoustic model, в противном случае это открытая проблема иногда называют cocktail party effect, который can be part solved с использованием DNNS.

0

Попробуйте эту настройку, хорошо работает для меня.

try? OEPocketsphinxController.sharedInstance().setActive(true) 
OEPocketsphinxController.sharedInstance().secondsOfSilenceToDetect = 2 
OEPocketsphinxController.sharedInstance().setSecondsOfSilence() 
OEPocketsphinxController.sharedInstance().vadThreshold = 3.5 
OEPocketsphinxController.sharedInstance().removingNoise = true 

Или вы можете попробовать iSphinx библиотека.

 Смежные вопросы

  • Нет связанных вопросов^_^