语音识别:备用子字符串始终为空,置信度大多数情况下为0

时间:2018-12-27 09:07:33

标签: ios speech-recognition speech-to-text transcription sfspeechrecognizer

我正在尝试在iOS中使用speech recognition,但我想我们没有得到朋友...

我已经设置了SFSpeechRegonizer并相应地设置了它的委托。现在,我实现委托方法如下:

func speechRecognitionTask(_ task: SFSpeechRecognitionTask, didHypothesizeTranscription transcription: SFTranscription) {
    print("transcription:         \(transcription.formattedString)")
    print("alternativeSubstrings: \(transcription.segments.map { $0.alternativeSubstrings })")
    print("confidence:            \(transcription.segments.map { $0.confidence })")
}

无论何时调用委托方法,这都会打印出以下内容:

transcription:         Space – the final frontier. These are the voyages…
alternativeSubstrings: [[], [], [], [], [], [], [], [], []]
confidence:            [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]

转录很好。但是,alternativeSubstrings数组总是 为空,而confidence的值通常是0。它们有时不为零-但这种情况发生时是不可预测的:

confidence:            [0.56, 0.049, 0.558, 0.545, 0.476, 0.6, 0.654, 0.647, 0.829]

为什么没有alternativeSubstrings,为什么大多数时候confidence为0,我该如何解决?我是Apple的 Speech 库只是坏了还是出什么事了?

0 个答案:

没有答案