Python中導入第三方聲源庫Acoular的邏輯解釋以及Acoular的下載
【聲明】歡迎轉載,但請保留文章原始出處→_→
秦學苦練:http://www.cnblogs.com/Qinstudy/
文章來源:http://www.cnblogs.com/Qinstudy/p/8987520.html
【正文】
秦學苦練博主,你好!現在有個項目是關於聲源定位的,需要用到Python的第三方庫:聲學庫(也就做聲學包,英文名叫Acoular),我自己去安裝Python的第三方包Acoular,按照官網上的安裝方法總是不行!秦學苦練博主,能解答下我的疑惑嗎?
acoular聲學庫學習者---小王同學
秦學苦練的回答:
小王同學,我接觸acoular聲學庫有一段時間了,自己當時去下載安裝acoular包時,一會兒安裝、一會兒卸載,費了一番精力才征服它。
既然是下載安裝某個包或者軟件,那不同的操作系統,安裝步驟、方法會有差異。所以,小王,我首先說下自己電腦的情況:win10系統; Python語言版本:Python3.6.4
我是按照下面的方法下載、安裝acoular的:
首先安裝Anaconda,然後使用Anaconda Prompt命令行去下載acoular包,最後將下載的acoular包導入到Python。
小王,你先不要著急下載acoular庫,在你知道如何下載acoular庫之前,我先介紹另外三個軟件:Anaconda、Python、PyCharm。
只有知道了自己失敗的原因後,下次安裝聲源庫acoular時,才會水到渠成!
小王啊,你可能會問,你直接告訴我安裝acoular的具體步驟就OK了,哪來那麽多廢話?哈哈,我為什麽要講Anaconda、acoular和Python、PyCharm四者的邏輯關系呢,因為我常常有這樣的經歷:學習一個東西、安裝一個軟件時,如果自己沒有進一步地去了解、理解這些步驟,僅僅知道機械地去下載、安裝,而不去探究背後的為什麽。沒過幾天,自己就會遺忘,然後,下次安裝的時候,我還得從頭再來!
所以,秦學苦練常常提醒自己:學習概念不僅僅要學習概念的本身,更重要的是了解、理解知識的由來!
下面我會從兩部分論述,第一部分是第二部分的鋪墊,也就是基礎,搞懂了第一部分,第二部分acoular的安裝、第三部分acoular導入Python都是小菜一碟!
一.Anaconda、acoular和Python、PyCharm四個的基本概念以及四者邏輯關系
二.acoular的安裝步驟(親測有效)
三.acoular導入Python中
一.Anaconda、acoular和Python、PyCharm四者的邏輯關系
1.集合與元素的關系(Anaconda、acoular)
1.1 Anaconda(一種集成開發環境)
Anaconda是一種集成開發環境,Anaconda中附帶了一大批常用的數據科學包,其中包括conda、python、Numpy等150多個科學包。Anaconda是在conda上發展出來的,Anaconda 的下載文件比較大(約 500 MB),因為它附帶了 Python 中最常用的數據科學包。如果你的項目只需要某些很少的包,同時你也想節省計算機空間,這時安裝迷你版的集成開發環境,叫做miniconda,裏面只包含conda包和python包,剩下的包,如果自己需要哪些包,使用命令行去下載就可以了!
conda包是一個包管理器和環境管理器。在聲源定位中,你會用到很多第三方的開源包,如Numpy包、Scipy包等,而conda(包管理器)可以很好地幫助你在計算機上安裝和管理這些包,你完全可以用conda包去安裝、卸載和更新自己需要或者不需要的包。
1.2 acoular(用來做聲源定位的一個包(也叫做庫)
acoular是一個包,這個包是acoular開發團隊打造的,你可以用acoular包做聲源定位的相關算法。比如$ conda install –c acoular acoular ,執行這條語句後,conda就會幫助你在計算機上安裝acoular包,acoualr包是一個用來做聲源定位的數據包。
總結:
acoular是一個包,這個包是acoular開發團隊打造的,你可以用acoular包做聲源定位的相關算法。而Anaconda是一種集成開發環境,其中包含了acoular包,acoular包只是Anaconda中150多個包中的一個。如果你在Anaconda Prompt命令行中輸入$ conda install -c acoular acoular ,成功安裝acoular包之後,Anaconda中就會含有acoular包。
1.3 Anaconda與acoular的邏輯關系
小王啊,你也看到了,1.1、1.2講了Anaconda、acoular的基本概念,下面講下兩者的邏輯關系:總的來說,如果你的計算機上安裝了acoular包,而且也安裝了Anaconda集成開發環境的話,Anaconda中就會有這麽一個包,名字是acoular。就像數學中。集合與元素的關系,Anaconda相當於集合,當你把acoular(做聲源定位的包)元素添進到Anaconda集合中時,acoular就成為了集合中的一個元素。
2.Python語言的依賴工具---PyCharm
2.1 Python(一門編程語言)
小王同學,既然你說自己是acoular聲源庫學習者,所以我覺得你懂一點編程方面的東西,下面我用類比的方法向你介紹Python語言。Python是一門編程語言,它和java、c++語言一樣,都是高級語言,編程語言的安裝是需要設置環境變量,也就是添加PATH路徑的。所以你要學習如何去添加路徑(PATH)。Python語言安裝時,有個對話框中:為python添加環境變量,打上對勾,就不用自己手動去添加環境變量了!
如果你安裝的時候忘了打上對勾,需要自己手動去添加環境變量。比如,你的Python的安裝目錄名稱為: D:\Python3.6.4,這時你只需要在PATH路徑的最後面加上“ ;D:\Python3.6.4 ” (這是在windows7系統);如果在windows10系統中,你要做的更簡單了,只需要在PATH路徑中新建一個文件,然後添加“D:\Python3.6.4”即可。需要提醒你的是,win10中,添加PATH路徑沒有分號,這是win10和win7系統設置PATH路徑的一個很大的區別。
小王,如果,你沒有配置好PATH路徑,首先耐心地去檢查PATH路徑配置是否出錯了,細心地去檢查幾次。若你還是找不到原因的話,可以問問身邊的夥伴。當然,更簡便的辦法,是卸載Python後,重新安裝,這時你就要記住:有對話框中,為python添加環境變量,打上對勾,就不需要自己手動去添加環境變量了。
2.2 PyCharm(一種集成開發環境)
小王同學,下載安裝以及配置好PATH路徑後,如果你想很好的編寫Python代碼,你需要安裝一個十分好用的集成開發環境--PyCharm。有了PyCharm後,你不用在命令行苦逼地敲寫編譯、運行代碼了。你只需要在PyCharm集成開發環境中編寫代碼,然後點擊Run按鈕,PyCharm就會替你編譯、運行代碼。總而言之,用集成開發環境代替自己在命令行去編譯、運行代碼,這樣,你就能節省許多時間,用節省下來的時間去學習你感興趣的東西!
那麽,PyCharm是什麽呢?PyCharm是一種集成開發環境,PyCharm是由JetBrains公司打造的一款Python IDE(叫做Python集成開發環境),PyCharm具有一般集成開發環境具備的功能,比如, 調試、語法高亮、Project管理、代碼跳轉、智能提示等。
3.Anaconda、acoular、Python、Pycharm四者的邏輯關系
秦學苦練的邏輯分析:小王同學,你看了Anaconda、acoular、Python、Pycharm四者的基本概念後,我向你提個問題,問題如下:
如果我現在的目的,是在PyCharm集成開發環境中去使用Anaconda集成開發環境中的acoular包,我該怎麽做呢?下面是邏輯分析:
因為我要用到acoular這個包,如果使用Project Interpreter(項目編譯器)中的D:\Python3.6.4\python.exe路徑,是不可能導入出acoular包,原因是acoular包位於Anaconda集成開發環境中,所以當Project Interpreter(項目解釋器)中的路徑是:D:\Python3.6.4\python.exe 時,PyCharm會報錯,報錯如下:找不到“acoular”。
正確的做法是將Project Interpreter(項目編譯器)中的路徑改為:D:Anaconda\python.exe ,這樣修改後,編譯器就會沿著D:Anaconda\python.exe這條路徑去尋找Anaconda中的acoular包,最後找到了acoular包。於是在PyCharm集成開發環境中,編譯通過,即acoular導入成功!
二. acoular的下載步驟(親測有效)
小王同學,如果你想要下載並使用acoular聲學庫,你首先需要下載下面這些庫:
NumPy,SciPy,Traits,scikit-learn (aka sklearn),pytables (aka tables),numba,PyQt,traitsui,libpython (only for Windows),configparser (only for Python 2.7),
six (only for Python 3)
你可能會問:為什麽需要下載上面這些庫呢?其實,當你自己去使用acoular聲學庫後,答案是挺簡單的。因為acoular聲學庫裏面的許多算法(比如繪制圖形的plot函數、array數組)都依賴上面這些庫。所以,小王,如果你手動去刪除某個庫,程序是會報錯的,報錯原因是:找不到你刪除的那個庫。
小王,如果你一個個去下載上面這些庫,是很繁瑣、浪費時間的,所以我推薦你使用另一種簡便的方法:第一步先安裝Anaconda,然後使用Anaconda Prompt命令行去下載acoular包,最後將下載的acoular包導入到Python。
總的來說,下載並使用acoular可以分成下面幾個步驟:
1.下載並安裝Anaconda(註意:Anaconda中路徑PATH的配置);
2.使用Anaconda Prompt命令行去下載acoular包;
3.將acoular聲學包導入PyCharm集成開發環境中。
下面秦學苦練博主按步驟一步一步往下執行:
1.下載並安裝Anaconda(Anaconda中路徑PATH的配置)
小王同學,Anaconda的下載和安裝網上有許多教程,從你寫的信中,我相信你具備下載並安裝Anaconda的實力。但我需要提醒你:Anaconda的安裝過程需要配置路徑PATH,如果沒有配置路徑PATH,那麽你在Anaconda Prompt命令行中輸入:conda ,會報錯,報錯內容如下:‘conda’不是內部、外部命令,也不是可運行的程序或批處理文件。編譯器為什麽會報錯呢,原因是小王你沒有配置路徑PATH。解決辦法如下:
Anaconda安裝時,有個對話框中:為Anaconda添加環境變量,打上對勾,就不用自己手動去添加環境變量了!
如果你安裝的時候忘了打上對勾,需要自己手動去添加環境變量。比如,小王同學,你的Anaconda的安裝目錄名稱為:D:\Anaconda。
在windows10系統中,你只需要在PATH路徑中新建一個文件,然後添加“D:\Anaconda\Scripts”即可。需要提醒你的是,win10中,添加PATH路徑沒有分號,這是win10和win7系統設置PATH路徑的一個很大的區別。
小王,要是你配置好PATH路徑後,再次在Anaconda Prompt命令行中輸入:conda ,如果能運行,則環境配置這一關,你順利通過了!如果,仍然報錯:‘conda’不是內部、外部命令,也不是可運行的程序或批處理文件。首先,你要去耐心地去檢查PATH路徑配置是否出錯了,細心地去檢查幾次。若你還是找不到原因的話,可以問問身邊的夥伴。當然,更簡便的辦法,是卸載Anaconda後(卸載Anaconda的方法:雙擊uninstall圖標,等待程序運行就OK了),然後重新安裝,這時你就要記住:有對話框中,為Anaconda添加環境變量,打上對勾,就不需要自己手動去添加環境變量了。
2.使用Anaconda Prompt命令行去下載acoular包
小王同學,既然你現在看到了第二部分,第一部分的內容、註意事項(為Anaconda配置環境變量)你一定都弄懂了。下面秦學苦練用圖片和文字交錯的方式,說明acoular下載過程。
第一步:在Anaconda Prompt命令行中輸入如下代碼 :
conda install -c acoular acoular
小王,你可能要問這是什麽意思?其實,你認真的讀一讀,看懂代碼中的英文單詞,大致能猜出這條語句的作用。我想你已經猜出來了,上面這行語句作用是:用conda(一個包管理器和環境管理器,用conda包去安裝、卸載和更新
自己需要或者不需要的包)去下載、安裝acoular聲學庫。
小王,你輸入這行代碼運行後,Anaconda Prompt命令行界面如下:
第二步:Anaconda Prompt命令行中出現:Proceed([y]/n)?
這條語句意思是編譯器在詢問:是否需要覆蓋舊版本?如果覆蓋舊版本,輸入:y ;如果不覆蓋舊版本,輸入: n 。這裏你選擇覆蓋舊版本,所以鍵盤輸入:y 。
小王,如果你選擇覆蓋舊版本之後,Anaconda Prompt命令行中會下載相應的文件、數據包,Anaconda Prompt命令行中界面如下:
第三步:輸入acoular庫提供的一個例子,驗證acoular是否安裝成功
小王同學,你耐心地等待第二步完成後,在Anaconda Prompt命令行中輸入如下代碼:
acoular_demo
上面這行代碼是顯示acoular庫中的一個例子,等待幾秒鐘後,電腦上會出現兩張圖片,一張是含有3個聲源的聲源圖,另一張是64個麥克風的圖片。Anaconda Prompt命令行中界面如下:
小王,當你執行完上面三個小步驟後,acoular的下載、安裝就成功了。接下來,秦學苦練會告訴你,如何將acoular導入Python中?
三. Acoular導入Python中
小王,如果你想要在Python中使用acoular聲學庫,你需要將PyCharm集成開發環境中的Project Interpreter(項目編譯器)的路徑進行修改。因為當Project Interpreter(項目解釋器)中的路徑是:D:\Python3.6.4\python.exe 時,PyCharm會報錯,報錯如下:找不到“acoular”。
還記得一.3 中,Anaconda、acoular、Python、Pycharm四者的邏輯關系中,秦學苦練的邏輯分析嗎?
在PyCharm集成開發環境中去使用Anaconda集成開發環境中的acoular包,該怎麽做呢?下面是邏輯分析:
因為小王你要用到acoular這個包,如果使用Project Interpreter(項目編譯器)中的D:\Python3.6.4\python.exe路徑,是不可能導入出acoular包,原因是acoular包位於Anaconda集成開發環境中,所以當Project Interpreter(項目解釋器)中的路徑是:D:\Python3.6.4\python.exe 時,PyCharm會報錯,報錯如下:找不到“acoular”。
正確的做法是將Project Interpreter(項目編譯器)中的路徑改為:D:Anaconda\python.exe ,這樣修改後,編譯器就會沿著D:Anaconda\python.exe這條路徑去尋找Anaconda中的acoular包,最後找到了acoular包。於是在PyCharm集成開發環境中,編譯通過,即acoular導入成功!
雙擊打開PyCharm後,點擊File/Setting/Project:/Project Interpreter,然後將Project Interpreter的路徑修改為:D:Anaconda\python.exe 。具體操作如下圖:
小王啊,你走完這些步驟後,acoular聲學庫的下載安裝以及導入就成功了!你可以用acoular庫去實現聲源定位的算法,好好地去完成你的項目吧,祝你好運!
四.方法論
小王同學,很高興,你能提出“Python中如何導入第三方聲學庫Acoular”的問題,這個有意思的問題促使我去思考Anaconda、acoular、Python、Pycharm四者的邏輯關系。給你講述了Acoular庫的下載、安裝以及導入的知識,我覺得秦學苦練對“Python中導入聲學庫Acoular”的邏輯解釋又加深了!這讓博主又一次明白:學習概念不僅僅要學習概念的本身,更重要的是了解、理解知識的由來!
Python中導入第三方聲源庫Acoular的邏輯解釋以及Acoular的下載