導航:首頁 > 五金知識 > python語音工具箱

python語音工具箱

發布時間:2022-07-01 17:14:24

『壹』 用Python實現類似語音助手的功能有什麼好的思路及工具庫

有趣的話題,高級的思路等牛人來說。
我說一個笨思路,不斷的錄音片段,不斷的比對波形。
已答就不要重復邀請了哇。另外你想要持續匹配必然是不斷錄音不斷匹配,現實世界中並沒有如同推送服務一樣的功能,可以出現了什麼聲音再調用你的程序。你只能是看看如何設計優化這個匹配和錄音的平衡,並且優化你的匹配速度:比方說你試試錄音能否多進程(線程)?如果能雙開,那麼交替覆蓋空白時間也是其中一種演算法。
你思考一下蘋果的語音助手(老版本)和安卓的語音助手,是不是都要先按一個按鈕才能開始語音助手服務?說明只有持續監聽才能解決問題,但是手機為了保證續航,又不能做持續監聽。
後來,蘋果想了個什麼辦法呢,他自己設計了一個晶元,其中有一個功能就是可以捕捉麥克風收聽到「hey siri」就調用語音助手的功能,具體的技術細節我不太清楚,有可能是讓麥克風只要收到超過多少分貝的聲音就開始小范圍匹配「hey siri」之類的吧
至於減噪,網上有不少關於用電腦軟體調節波形文件來降噪的方法教程,雖然你不能直接用,但是提供了思路
計算聲音的相似性,我個人認為可以通過計算波形的特徵來完成,我個人才疏學淺,沒有這方面的經驗,如果是語音識別,推薦你用訊飛的api試試,訊飛在這一塊技術還是蠻強的。
但是,像人類一樣可以很精準的從人群中識別出熟人聲音的功能,那個屬於人工智慧的范疇,目前研究水平還不夠到可以應用的地步。

『貳』 如何利用python在pycharm上進行語音合成

pycharm 通過 SFTP 遠程編輯項目的配置

{這個相當於代碼同步,類似git上傳,同步後你可以在伺服器上直接運行上傳的代碼;這個配置好後,才能在pycharm遠程調試時候將代碼上傳到伺服器正確位置/正確路徑上}

打開pycharm,File -> Settings…( Ctrl + Alt + s ) -> Deployment
點擊 + 按鈕,添加一個

如果你發現你的運行配置中沒有 Django 相關的項,請在項目設置的 Django 中勾選 Enable Django Support。

運行配置的設置有兩點需要注意。Python Interpreter 需要選中之前建立的遠程解釋器。Path mappings 處,需要把本機的 manage.py 與 Linux 上的關聯起來,比如:

C:/Evolution/Python/django_website/manage.py <=> /home/onlyice/work/django_website/manage.py

這可能是 PyCharm 的 bug:在使用遠程解釋器後,PyCharm 並不會自動將 Django 運行配置中的 manage.py 文件定位到 Linux 上的那份,而是會嘗試使用下面的命令來啟動 Django 調試 Server:

/usr/bin/python2 manage.py C:/Evolution/Python/django_website/manage.py

自然就找不到文件了。所以使用了 Path mappings 作為一種 hack 手段來解決。
這時就可以打斷點調試啦

Trouble Shooting

Q: 點擊調試運行失敗,顯示 「Cant set remote tunneling」

A: 調試時 PyCharm 調用將 Python Debug Server (pydevd.py) 綁定在一個隨機埠上,再使用 SSH 的埠轉發將數據通過 SSH 埠轉到 Debug Server 去。需要檢查你的 sshd 配置 (默認是 /etc/ssh/sshd_config) 是否禁用了 TCP 轉發 (AllowTcpFowarding),這個配置默認是打開的。

皮皮blog

出錯問題

pycharm channel is not opened

pycharm不能同步deployment中設置的文件內容了,在remote host窗口中打開文件提示the file is identical to local但實際上完全不同,上傳多次才能成功,或者乾脆就提示channel is not opened。應該和sftp有關。

目前還沒找到具體原因,可能是伺服器問題,過會就自己好了。

也可能是pycharm的問題,或者系統的問題?希望解決的可以留言告知一下,謝謝!

[Can't Download From Remote Server via SFTP – JetBrains IntelliJ]

pandas出錯

pycharm console import pandas Backend Qt4Agg is interactive backend. Turning interactive mode on. : cannot connect to X server
import pandas : cannot connect to X server

重啟pycharm,或者也不知道怎麼了就好了,不報錯了。。。

運行出錯

ssh://[email protected]:22/home/piting/ENV/anaconda3/bin/python3 -u /home/piting/mine/python_workspace/Oth/Competition/TianChi/Regression.py
/home/piting/ENV/anaconda3/bin/python3: can't open file '/home/piting/mine/python_workspace/Oth/Competition/TianChi/Regression.py': [Errno 2] No such file or directory

點出remote host標簽,發現沒有這個目錄,目錄下也沒有這個文件

解決:

mkdir -p 代碼目錄

再在remote host中右鍵 》 upload here

ref: [PyCharmRemote Debugging指南]

[pycharm奇淫技巧]*

[使用Pycharm進行Python遠程開發]

[Deployment in PyCharm]

『叄』 python有可以將文字轉化為語音的工具嗎

import win32com.client
speaker = win32com.client.Dispatch("SAPI.SpVoice")
speaker.Speak("Hello, it works!")
或者用
pyttsx

『肆』 Python中有沒有類似Matlab中VoiceBox的語音處理工具箱

有的,如下:
1. 解壓voicebox.zip,將整個目錄voicebox復制到MATLAB的安裝目錄下:
D:\MATLAB\R2012b\toolbox
2. 打開MATLAB,在版MATLAB命令窗口中輸入權命令:
>>cd D:\MATLAB\R2012b\toolbox
3. 將TOOLBOX下新加的voicebox工具箱加到MATLAB的搜索路徑中去。
添加voicebox工具箱的MATLAB的搜索路徑也可採用如下指令
>> addpath(genpath(' D:\MATLAB\R2012b\toolbox\voicebox'))
或者
>>path(' D:\MATLAB\R2012b\toolbox\voicebox',path)
4. 檢驗是否成功設置的方法:
在命令窗口中輸入以下命令:
which activlev.m(可以為所加工具箱的任一個M文件名稱),如果顯示正確,就說明上面的設置成功。
>> which activlev.m
D:\MATLAB\R2012b\toolbox\voicebox\activlev.m
註:這種方法貌似每次重啟MATLAB之後都要添加路徑,否則會找不到

『伍』 最受歡迎的 15 大 Python 庫有哪些

1、Pandas:是一個Python包,旨在通過「標記」和「關系」數據進行工作,簡單直觀。它設計用於快速簡單的數據操作、聚合和可視化,是數據整理的完美工具。
2、Numpy:是專門為Python中科學計算而設計的軟體集合,它為Python中的n維數組和矩陣的操作提供了大量有用的功能。該庫提供了NumPy數組類型的數學運算向量化,可以改善性能,從而加快執行速度。
3、SciPy:是一個工程和科學軟體庫,包含線性代數,優化,集成和統計的模塊。SciPy庫的主要功能是建立在NumPy上,通過其特定子模塊提供有效的數值常式,並作為數字積分、優化和其他常式。
4、Matplotlib:為輕松生成簡單而強大的可視化而量身定製,它使Python成為像MatLab或Mathematica這樣的科學工具的競爭對手。
5、Seaborn:主要關注統計模型的可視化(包括熱圖),Seaborn高度依賴於Matplotlib。
6、Bokeh:獨立於Matplotlib,主要焦點是交互性,它通過現代瀏覽器以數據驅動文檔的風格呈現。
7、Plotly:是一個基於Web用於構建可視化的工具箱,提供API給一些編程語言(Python在內)。
8、Scikits:是Scikits
Stack額外的軟體包,專為像圖像處理和機器學習輔助等特定功能而設計。它建立在SciPy之上,中集成了有質量的代碼和良好的文檔、簡單易用並且十分高效,是使用Python進行機器學習的實際行業標准。
9、Theano:是一個Python軟體包,它定義了與NumPy類似的多維數組,以及數學運算和表達式。此庫是被編譯的,可實現在所有架構上的高效運行。
10、TensorFlow:是數據流圖計算的開源庫,旨在滿足谷歌對訓練神經網路的高需求,並且是基於神經網路的機器學習系統DistBelief的繼任者,可以在大型數據集上快速訓練神經網路。
11、Keras:是一個用Python編寫的開源的庫,用於在高層的介面上構建神經網路。它簡單易懂,具有高級可擴展性。
12、NLTK:主要用於符號學和統計學自然語言處理(NLP) 的常見任務,旨在促進NLP及相關領域(語言學,認知科學人工智慧等)的教學和研究。
13、Gensim:是一個用於Python的開源庫,為有向量空間模型和主題模型的工作提供了使用工具。這個庫是為了高效處理大量文本而設計,不僅可以進行內存處理,還可以通過廣泛使用NumPy數據結構和SciPy操作來獲得更高的效率。

『陸』 如何優雅的用Python玩轉語音聊天機器人

所需硬體:
樹莓派B+
人體紅外線感應模塊
內置麥克風攝像頭(實測樹莓派免驅淘寶鏈接)
申請API:
網路語音api
圖靈api
語音聊天機器人實現原理:當有人來到跟前時--》觸發聊天功能,開始以每2s檢測錄制語音--》通過網路語音api合成文字--》傳遞給圖靈api返回回答信息--》通過網路語音合成播放
【人體感應識別部分Python代碼renti.py】


#/usr/bin/python#coding:utf-8import RPi.GPIO as GPIOimport timeimport osimport signalimport atexitGPIO.setmode(GPIO.BCM) GPIO_PIR = 14 GPIO.setup(GPIO_PIR,GPIO.IN) # Echojing = 0dong = 0 sum = 0sum1 = 0oldren = 0sleep = 0def ganying(): i = 0 ok = 0 error = 0 while i < 10: if GPIO.input(GPIO_PIR) == 1 : ok = ok + 1 if GPIO.input(GPIO_PIR) == 0 : error = error + 1 time.sleep(0.01) i = i + 1 ren = ok/(error+1) return ren

1

GPIO_PIR = 14

為 紅外線檢測模塊與樹莓派的針腳,腳本函數返回0表示無人,>0 為有人
【Python語音識別聊天部分robot.py】


#/usr/bin/python# -*- coding:utf-8 -*-import sysreload(sys)sys.setdefaultencoding( "utf-8" )import urllibimport urllib2import jsonimport uuidimport base64import osimport timefrom renti import * #獲取網路tokenappid=7647466apikey="網路API"secretkey="網路API" _url="h.com/oauth/2.0/token?grant_type=client_credentials&client_id=" + apikey + "&client_secret=" + secretkey; y_post=urllib2.urlopen(_url)y_read=y_post.read()y_token=json.loads(y_read)['access_token']#print y_read#print y_token #------------------function------------- def luyin(): os.system('arecord -D plughw:1,0 -c 1 -d 2 1.wav -r 8000 -f S16_LE 2>/dev/null') def fanyi():
#---------------語音識別部分 mac_address="haogeoyes" with open("1.wav",'rb') as f: s_file = f.read() speech_base64=base64.b64encode(s_file).decode('utf-8') speech_length=len(s_file) data_dict = {'format':'wav', 'rate':8000, 'channel':1, 'cuid':mac_address, 'token':y_token, 'lan':'zh', 'speech':speech_base64, 'len':speech_length} json_data = json.mps(data_dict).encode('utf-8') json_length = len(json_data) asr_server = 'm/server_api' request = urllib2.Request(url=asr_server) request.add_header("Content-Type", "application/json") request.add_header("Content-Length", json_length) fs = urllib2.urlopen(url=request, data=json_data) result_str = fs.read().decode('utf-8') json_resp = json.loads(result_str) if json_resp.has_key('result'): out_txt=json_resp['result'][0] else: out_txt="Null" return out_txt def tuling(b): f=urllib.urlopen("23.com/openapi/api?key="此處為圖靈API"&info=%s" % b) f=json.loads(f.read())['text'] return f def hecheng(text,y_token): #text="你好我是機器人牛牛很高興能夠認識你" geturl="u.com/text2audio?tex="+text+"&lan=zh&per=1&pit=9&spd=6&cuid=CCyo6UGf16ggKZGwGpQYL9Gx&ctp=1&tok="+y_token return os.system('omxplayer "%s" > /dev/null 2>&1 '%(geturl)) #return os.system('omxplayer "%s" > /dev/null 2>&1 '%(geturl)) def nowtime(): return time.strftime('%Y-%m-%d %H:%M:%S ') #---------------main-----------------num=0 #num用來判斷是第一次說話,還是在對話過程中first=1 #判斷是不是第一說話 當1000次沒有人動認為是第一次while True: if ganying()!=0: run=open('run.log','a') if first==0: hecheng("你好,我是牛牛機器人,你可以和我聊天,不過說話的時候你必須靠近話筒近一點,",y_token) hecheng("說點什麼吧,2秒鍾內說完哦.",y_token) first=1 #為1一段時間就不執行 num=0 #從新計數 #print ganying() run.write(nowtime()+"說點神馬吧..........."+'\n') print nowtime()+"說點神馬吧.........." luyin() #開始錄音 out=fanyi().encode("utf-8") #翻譯文字 run.write(nowtime()+"我說:"+out+'\n') print nowtime()+"我說:"+out if out == "Null": text="沒有聽清楚你說什麼" os.system('omxplayer "shenme.wav" > /dev/null 2>&1 ') else: text=tuling(out) hecheng(text,y_token) print nowtime()+"牛牛:"+text run.write(nowtime()+"牛牛:"+text+'\n') run.close() else: #print ganying() #調試查看是否為0有人沒人 #print num num=num+1 #num長時間增大說明沒有人在旁邊 if num > 1000: first=0 #0表示第一次說話

萬事俱備 運行nohup python robot.py 哈哈就可以脫離屏幕開始愉快的語音聊天啦
下面看看聊天的日誌記錄吧
後續更新。。。。。。Python如何用語音優雅的控制小車

『柒』 如何用python調用百度語音識別

1、首先需要打開網路AI語音系統,開始編寫代碼,如圖所示,編寫好回車。

『捌』 python有沒有語音控制模塊

SAPI是微軟Speech API ,
是微軟公司推出的語音介面,而細心的人會發現從WINXP開始,系統上就已經有語音識別的功能了,可是用武之地相當之少,他並沒有給出一些人性化的自定義
方案,僅有的語音操控命令顯得相當雞脅。 那麼這篇文章的任務就是利用SAPI進行個性化的語音識別。

defcallback(phrase,listener):
print(":%s"%phrase)
ifphrase==closeMainSystem:
speech.say("Goodbye.人機交互即將關閉,謝謝使用")
listener.stoplistening()
sys.exit()
elifphrase==openEclipse:
speech.say("請問您要寫PYTHON還是JAVA程序?")
speech.listenforanything(callback)
elifphrase==listenMusic:
speech.say("即將為你啟動豆瓣電台")
webbrowser.open_new("http://douban.fm/")
elifphrase==blog:
speech.say("即將進入Dreamforce.me")
webbrowser.open_new("http://dreamforce.me/")
elifphrase==php:
speech.say("啟動PHP編寫器")
os.popen("E:IDEphp_eclipseeclipseeclipse.exe")
elifphrase==php:
speech.say("啟動JAVA編寫器")
os.popen("E:IDEphp_eclipseeclipseeclipse.exe")

『玖』 Python用什麼模塊開發語音識別系統

推薦使用YQ5969,這個語音識別模塊可以支持1--8個咪頭,還可以支持本地和雲端識別不同需求。5米內本地識別率 93%以上,雲端識別率97%。這個語音識別模塊可以濾除雜訊。由於我們生活在一個相對的噪音環境里,
在遠場識別中,用戶和設備有一定距離,很多時候雜訊源距離麥克風的位置比人更近,在某種程度中也為錄制聲音帶來了一定的困難。

『拾』 怎麼用python實現語音識別

是想語音識別的參考方法如下:

1、打開文字識別軟體,關閉提示窗;

2、點擊上面的語音識別功能;

以上便是實現語音識別的方法了,希望可以幫助到您,感謝觀看!

閱讀全文

與python語音工具箱相關的資料

熱點內容
徐錦江演的三級所有電影 瀏覽:409
儀表盤分為三格是什麼車 瀏覽:59
軸承如何裝入軸承座 瀏覽:192
免費電影網站無廣告 瀏覽:631
西安朝陽門附近的電動工具租賃站 瀏覽:578
變頻空調制熱怎麼一直製冷 瀏覽:812
立式暖氣片閥門開關示意圖 瀏覽:65
家庭式自動上水裝置 瀏覽:830
姖少工具箱安卓0 瀏覽:126
類似聊齋艷譚的電影 瀏覽:422
一部電影要多少MB 瀏覽:187
大金kfr35加什麼製冷劑 瀏覽:334
古代檢測裝置有什麼用 瀏覽:87
電梯里相遇韓劇電影 瀏覽:601
煤礦上一般需要什麼閥門 瀏覽:681
仲邑五金製品有限公司 瀏覽:353
熱工自動裝置檢修中級工 瀏覽:292
韓國有一部叫做跟兒媳婦 瀏覽:954
交叉分子束實驗裝置 瀏覽:463
設備技術轉讓是什麼意思 瀏覽:420