㈠ 如何優雅的用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課程是什麼
人工智慧python課程是研究、開發用於模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學課程。想學習人工智慧python課程推薦選擇【達內教育】。
人工智慧就是寫一個程序,像人那樣去思考、判斷、邏輯推理,來服務各行各業,相當於寫個程序能模擬人那樣去思考、判斷。程序能像人那樣總結經驗,產生智慧,是社會生產力發展的主流變革方向,意義重大。人工智慧學術上一般是這樣說,人工智慧是研究、開發用於模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。目前寫人工智慧程序的第一編程語言是【Python】,所以在人工智慧課程中會講Python編程。Python語言是一個編程工具。學會以後就快速的轉到人工智慧行業中做開發。感興趣的話點擊此處,免費學習一下
想了解更多有關人工智慧python課程的相關信息,推薦咨詢【達內教育】。作為國內IT培訓的領導品牌,達內的每一名員工都以「幫助每一個學員成就夢想」為己任,也正因為達內人的執著與努力,達內已成功為社會輸送了眾多合格人才,為廣大學子提供更多IT行業高薪機會,同時也為中國IT行業的發展做出了巨大的貢獻。達內IT培訓機構,試聽名額限時搶購。
㈢ 又漲知識了,清華大學教授推薦Python400集視頻教程,拿走
Python是世界上功能最多,功能最強大的編程語言之一。通過Python,可以編寫自己的應用程序,創建 游戲 ,設計演算法,甚至編程機器人。而且Python的熱度現在一直高居不下,比如,完成同一個任務,C語言要寫1000行代碼,Java只需要寫100行,而Python可能只要20行。
清華北大教授萬贊Python全集視頻教程,這就是你需要的
如果你想選擇一種語言來入門編程,那麼Python絕對是首選!其非常接近自然語言,精簡了很多不必要的分號和括弧,非常容易閱讀理解。編程簡單直接,更適合初學編程者,讓其專注於編程邏輯,而不是困惑於晦澀的語法細節上,比起JAVA、C#和C/C++這些編程語言相對容易很多。
因此,即使是非計算機專業或者沒有基礎的小白,也能分分鍾入門。
但是呢,前提是一定要堅持學習!!!
階段一:Python基礎知識和高級特性
階段二:linux基礎
階段三:資料庫原理和sql優化
階段四:前端web開發
階段五:Python Web後端開發
階段六:爬蟲和數據分析
階段七:Python人工智慧
Python基礎語法的掌握
清華北大教授萬贊Python全集視頻教程,這就是你需要的
1. Python基礎語法的掌握是必備技能,認識到了Python語言的優雅,即使你之前用過其他開發語言,也會轉到Python的行列中
2. 掌握字元串的解析
3. 未來你會意識到各種各樣的程序直接就是把字元串傳來傳去,包括海量日誌分析,日誌即字元串,所以字元串操作就是未來做項目的基礎對文件的操作
4. Linux中一切皆文件,對文件的操作掌握了那麼你會發現在此時你有能力將之前的Linux中的Shell腳本改寫成Python腳本,至於為啥要改寫?腳本更加簡潔、易讀嘛!
5. 掌握面向對象的思想
6. 面向對象思想對於開發程序員來說,不管未來你選擇做哪一方面,使用什麼語言開發,都是必須要掌握的,對於一個開發企業級的持續可擴展的項目至關重要
7. 掌握常見設計模式和排序演算法
8. 設計模式的掌握可以讓你的項目變得更好維護,是一種經驗的總結,排序演算法很多種,項目經常會有取TopN的需求,所以常見設計模式和演算法排序面試官們很喜歡問,也是為後面的項目打好一個扎實的基礎
下面是北京大學畢業的高琪老師親手打造的python學習路線和視頻。共分為7大階段.
現在免費分享給大家哦!獲取在文末!!!
清華北大教授萬贊Python全集視頻教程,這就是你需要的
清華北大教授萬贊Python全集視頻教程,這就是你需要的
第一階段
清華北大教授萬贊Python全集視頻教程,這就是你需要的
python開發基礎和核心特性
1.變數及運算符
2.分支及循環
3.循環及字元串
4.列表及嵌套列表
5.字典及項目練習
6.函數的使用
7.遞歸及文件處理
8.文件
9.面向對象
10.設計模式及異常處理
11.異常及模塊的使用
12.坦克大戰
13.核心編程
14.高級特性
15.內存管理
第二階段
清華北大教授萬贊Python全集視頻教程,這就是你需要的
資料庫和linux基礎
1.並發編程
2.網路通信
3.MySQL
4.Linux
5.正則表達式
第三階段
清華北大教授萬贊Python全集視頻教程,這就是你需要的
web前端開發基礎
1.html基本標簽
2.css樣式
3.css浮動和定位
4.js基礎
5.js對象和函數
6.js定時器和DOM
7.js事件響應
8.使用jquery
9.jquery動畫特效
10.Ajax非同步網路請求
第四階段
清華北大教授萬贊Python全集視頻教程,這就是你需要的
Python Web框架階段
1.Django-Git版本控制
2.Django-博客項目
3.Django-商城項目
4.Django模型層
5.Django入門
6.Django模板層
7.Django視圖層
8.Tornado框架
第五階段
清華北大教授萬贊Python全集視頻教程,這就是你需要的
Python 爬蟲實戰開發
1.Python爬蟲基礎
2.Python爬蟲Scrapy框架
以上這python自學教程我已經為大家打包準備好了,希望對正在學習的你有所幫助!
㈣ 機器人編程ev3與python哪個更適合青少年
個人認為優秀的可以學Python,其他的可以學習EV3。