人工智能?使用Python和dlib進行人臉檢測
“Dlib是一個現代化的C ++工具包,包含用於創建復雜軟件的機器學習算法和工具”。它使您能夠直接在Python中運行許多任務,其中一個例子就是人臉檢測。
安裝dlib並不像只做一個“pip install dlib”那麽簡單,因為要正確配置和編譯dlib,您首先需要安裝其他系統依賴項。如果你按照這裏描述的步驟,它應該很容易讓dlib啟動並運行。(在本文中,我將介紹如何在Mac上安裝dlib,但如果您使用的是Ubuntu,請務必查看相關資源部分的鏈接。)
你需要確定的第一件事是你已經安裝和更新了Hombrew。如果您需要安裝它,請將其粘貼到終端中:
或者,如果您需要更新Hombrew,請輸入以下內容:
您現在可以使用Homebrew來安裝CMake,Boost.Python,以及在您的系統中正確配置和編譯dlib所需的兩個依賴關系:
最後,您需要手動下載並安裝XQuartz。
您現在已準備好安裝dlib。我們將通過首先為這個項目創建一個孤立的虛擬環境來做到這一點。我將使用virtualenv,但您可以使用任何您熟悉的虛擬環境工具,包括Python的venv模塊。需要scikit-image庫才能讀取我們稍後將傳遞給dlib的圖像文件,因此我們還需要pip安裝它:
就是這樣。有了這個,你應該有可用的dlib。
Dlib
Dlib提供了不同的臉部檢測算法。我將在這裏使用的是基於CNN的人臉檢測器。您可以下載預訓練模型:https://github.com/davisking/dlib-models。由於使用此模型的計算成本很高,因此最好在GPU上執行以下代碼。使用CPU也可以,但速度會更慢。
要在下面的要點中運行人臉檢測代碼,我建議首先在虛擬環境中再安裝兩個庫。這些庫將使與代碼交互和可視化結果更容易:
安裝完庫後,您需要確保:
下載預訓練模型(http://dlib.net/files/mmod_human_face_detector.dat.bz2)並將其存儲在項目的根目錄中
創建一個名為'faces'的新目錄,在該目錄中存儲帶有希望檢測的臉部的.jpg。
有了這個,你終於準備好開始在圖片中檢測臉部了!您可以通過在Jupyter Notebook中運行以下代碼來完成此操作
在運行代碼之後,您應該看到圖像中的臉部周圍出現藍色方塊,如果您問我,考慮到我們只寫了幾行代碼,這非常棒!
人工智能?使用Python和dlib進行人臉檢測