如何在Python中將語音轉換為文本

2020-12-15 三微授漁

語音識別是計算機軟體識別口語中的單詞和短語並將其轉換為人類可讀文本的能力。在本教程中,你將知道如何使用SpeechRecognition 庫在Python中將語音轉換為文本 。

因此,我們不需要從頭開始構建任何機器學習模型,該庫為我們提供了各種著名的公共語音識別API(例如Google Cloud Speech API,IBM Speech To Text等)的便捷包裝。

讓我們開始吧,首先使用pip安裝庫:

pip3 install SpeechRecognition

打開一個新的Python文件並導入它:

import speech_recognition as sr

從文件讀取

確保當前目錄中有一個音頻文件:

filename = "speech.wav"

該文件是從 LibriSpeech 數據集中獲取的,但是你可以帶上你想要的轉換的東西,只需要更改一下文件名即可,現在讓我們初始化語音識別器:

# initialize the recognizer

r = sr.Recognizer()

以下代碼負責加載音頻文件,並使用Google Speech Recognition將語音轉換為文本:

# open the file

with sr.AudioFile(filename) as source: # listen for the data (load audio to memory) audio_data = r.record(source) # recognize (convert from speech to text) text = r.recognize_google(audio_data) print(text)

這將需要幾秒鐘才能完成,因為它將文件上傳到Google中獲取到輸出,這是我獲取到的結果:

I believe you're just talking nonsense

從麥克風讀取

這需要在你的機器上安裝PyAudio,以下是取決於你的作業系統的安裝過程:

Windows系統

安裝它:pip3 install pyaudio

Linux系統

需要安裝依賴項:

sudo apt-get install python-pyaudio python3-pyaudio

pip3 install pyaudio

蘋果系統

需要先安裝portaudio,然後才可以安裝它:

brew install portaudio

pip3 install pyaudio

現在,讓我們使用麥克風轉換語音:

with sr.Microphone() as source: # read the audio data from the default microphone audio_data = r.record(source, duration=5) print("Recognizing...") # convert speech to text text = r.recognize_google(audio_data) print(text)

它會從你的麥克風錄取到5秒鐘,然後嘗試將語音轉換為文本!

它與先前的代碼非常相似,但是我們在這裡使用Microphone()對象從默認麥克風讀取音頻,然後在record()函數中使用duration參數在5秒後停止讀取,然後上傳音頻數據向Google獲取輸出文本。

你還可以在record()函數中使用offset參數在偏移幾秒鐘後開始記錄。

另外,你也可以通過將language參數傳遞給accept_google()函數來識別不同的語言。例如,如果你想識別別的語言(如:西班牙語音),則可以使用:

text = r.recognize_google(audio_data, language="es-ES")

使用此庫將語音轉換為文本非常簡單。該庫在國外被廣泛使用,如果有需要可以去掌握它。

相關焦點

  • 使用Python三步完成文本到語音的轉換
    這裡小編將介紹文本到語音翻譯的基礎知識。簡要介紹文本語音轉換,然後介紹如何開始安裝Google文本語音轉換(gTTS)模塊。然後繼續了解gTTS模塊的工作原理,並編寫一個簡單的程序以更好地掌握總體概念。最後將探索更多有關使用此模塊可以完成的工作的想法,然後嘗試理解可以使用gTTS完成的許多實際用例。
  • 本是同根生:在Word中將文本轉換為表格的又一種方法
    本是同根生:在Word中將文本轉換為表格的又一種方法大家好,我是百家號@愛玩電腦,不會IT高科技,只講電腦小知識。今天給大家講講在Word中將類似表格的文本轉換為表格的操作方法。一種方法是把他粘貼到文本文件中,然後在Excel中導入文本文件,來進行操作。這種方法可以參考我的另外一篇文章:巧用Excel篩選數字文本混排的數據中的數字中第二步、第三步的操作。
  • 在 Python 中將浮點數轉換為 int
    Python 提供了幾個用於數據類型轉換的內置函數和模塊。使用這些內置函數中的一些,可以輕鬆地將浮點數轉換為整數。本教程將討論可用於在 Python 中將 float 轉換為 int 的幾種方法。int()在Python中使用函數將float轉換為intint()Python 中的函數接受一個參數,該參數可以是表示數字的任何數據類型,並將該參數轉換為整數。該int()函數很靈活,能夠接受從string、到float甚至integer本身的參數。對於浮點數,該int()函數會忽略數字的小數部分,並返回整數部分或小數點之前的部分作為所需的輸出。
  • 如何將語音文件轉換為文字?這5款軟體輕鬆做到!
    後來聽說將語音文件其實是可以轉換為文字的,不用那麼麻煩,自己去錄入。下面,小編就開始正題,介紹5款將語音轉換為文字的軟體。第二款 風雲語音文字轉換器風雲語音文字轉換器可以輕鬆語音轉換為文字,同時還有這款軟體還有翻譯文本與文字轉語音兩種功能。軟體界面整潔功能比較多,轉換速度很快,準確率也很高,可以直接保存為Word文檔。提高自己的工作效率。
  • iOS——轉換文本到語音
    語音合成框架管理iOS、tvOS和watchOS的語音和語音合成。(要在macOS中執行文本到語音的任務,請使用nsspeech合成器類。)合成語音需要兩個主要步驟:創建一個或多個avspeech hutterance對象,其中包含要說話的文本。可選地,為每個話語配置語音參數(如語音和速率)。
  • 如何在 Linux 中將文件編碼轉換為 UTF-8
    字符            二進位A               01000001B               01000010在 Linux 中,命令行工具 iconv 用來將使用一種編碼的文本轉化為另一種編碼。
  • 如何將文本轉換為表格?
    如圖 8‑5所示為某中學期末考試成績,老師在錄入時以文本形式錄入,但現在為了能方便閱讀,希望將錄入到文檔中的學生成績以表格的形式顯示出來,應該如何操作
  • 掌握Excel轉換文本,快速轉換為其他形式
    在Excel中處理文本時,有時需要將現有的文本轉換為其他形式,如將字符串中的全/半角字符進行轉換、大/小寫字母進行轉換、貨幣符號進行轉換等。一、使用ASC函數將全形字符轉換為半角字符如果需要快速修改表格中的全形標點符號為半角標點符號,可以使用ASC函數快速進行轉換。
  • 微軟文本-語音合成轉換技術新裡程碑!完美再現真人聲調
    該功能目前可通過Azure Cognitive Services語音服務進行預覽。該功能可以讓聊天機器人和虛擬助理的交互更自然、更具吸引力,比如將電子書等數位化文本轉換為有聲讀物,讓車載導航系統的功能更加強大等。
  • 文字轉語音在線轉換如何操作?一款文字轉語音助手就夠了
    文字轉語音在線轉換如何操作?但筆者發現很多APP轉換出的音頻都比較死板,沒有一丁點情感起伏。下面我就給大家分享一個非常不錯的文字語音轉換工具,語音輸出有感情不死板,保證讓你百分百滿意! 應用介紹:手機應用市場或瀏覽器都可搜索到此應用,它採用智能的文字識別技術,為你精準的將文本轉換為音頻播放。
  • 基於python將音頻文件轉化為文本輸出
    實驗目的:學習利用python進行音頻轉文本文件實驗環境:已正確安裝python3.51、需要安裝的第三方庫(1)安裝speechrecognition>speechrecognition集合了幾個語音識別庫的接口,非常的實用,本節主要用到能脫網工作的識別方法recognize_sphinx(),該方法會依賴pocketsphinx庫。
  • 教你怎樣用python進行語音識別
    通過speech recognition可以調用多種平臺上的模型,比如google API,CMU sphinx,Microsoft Bing Speech,IBM Speech to Text,Wit.ai 等離線轉換對於國內的網絡環境,無法用google API來將語音數據轉換成文本文件,因為在調用這個包的時候,需要連接到
  • 如何將Word文本轉換為Excel
    有時您需要將Word文檔轉換為Excel工作表。 您不必複製每條信息,然後將其粘貼到Excel工作表中。操作步驟:第1步打開要轉換為Excel工作表的Word文檔。 在計算機上打開後,點擊「文件」選項,然後選擇「另存為」選項。 選擇要放置新文檔的目標文件夾,例如單擊桌面,然後選擇一個新文件夾或任何其他現有文件夾。
  • 文字語音技能:如何將英文語音轉換成TXT文檔
    平時我們想要在電腦上將語音轉換成文字的時候,大家都是怎麼操作的呢?平日裡我們難免會有犯懶的時候,手指不想動不願意打字只想動動嘴發語音,但如果與對方關係並沒有鐵到可以不顧禮貌動不動發語音的情況啊,這時候我們可能就會想到轉換。
  • 使用Python和Keras創建簡單語音識別引擎
    這些聲波由麥克風記錄,然後轉換為電信號。然後使用高級信號處理技術處理信號,分離音節和單詞。得益於深度學習方面令人難以置信的最新進展,計算機也可以從經驗中學習理解語音。語音識別通過聲學和語言建模使用算法來工作。聲學建模表示語音和音頻信號的語言單元之間的關係;語言建模將聲音與單詞序列進行匹配,以幫助區分聽起來相似的單詞。
  • 在Python中使用JSON
    此外,你還將學習如何將JSON轉換為dict並漂亮地列印它。目錄表什麼是JSON?使用 json 模塊在Python中解析 JSON    ○ 例子: 將JSON 字符串轉換為 dict    ○ 例子: 在Python中 讀取JSON 文件將字典轉換為 JSON 字符串(附帶例子)將JSON 寫入到文件 (附帶例子)優美輸出 JSON (附帶例子)什麼是
  • Python語音識別終極指北,沒錯,就是指北!
    最重要的是,在 Python 程序中實現語音識別非常簡單。閱讀本指南,你就將會了解。你將學到:•語音識別的工作原理;•PyPI 支持哪些軟體包; •如何安裝和使用 SpeechRecognition 軟體包——一個功能全面且易於使用的 Python 語音識別庫。
  • 語音直接翻語音!谷歌語音翻譯新突破,不再需要中間文本
    這些系統通常被分成三個獨立的部分:自動語音識別將源語音轉錄為文本,機器翻譯將轉錄文本翻譯成目標語言,文本語音合成(TTS)(從翻譯文本生成目標語言的語音)。將任務劃分為這樣的級聯繫統非常成功,為許多商業語音翻譯產品提供了支持,包括谷歌翻譯。
  • Excel文本型數值如何轉換為純數字?
    excel文本型的數值如何轉換為純數字?這個是使用數據裡面的分列命令進行修改的,一起來看看吧。1.當前我們可以看到這個數值單元格左上角會有一個綠色的三角號。  2.然後點擊旁邊的嘆號標誌,就會顯示當前數字格式是文本型。下面要進行轉換。
  • 如何使用 Python 實現網頁自動化朗讀?
    網頁轉換成語音,步驟無外乎:網頁正文識別,獲取到正文的文本內容;文本轉語音,通過接口將文本轉換成語音文件;語音文件的發聲,即將語音文件讀出;文本轉語音文本轉語音,百度、阿里、騰訊、訊飛等都有提供 REST API 接口,阿里和騰訊的申請相對時間較長,阿里的貌似還要收費,百度和訊飛的在線申請後即可使用。