facenet 源碼的使用


背景:在學習機器學習的時候,想做一個對抗性樣本的實驗,所以需要用上facenet ,facenet是基於TensorFlow 的人臉識別開源庫。

開發環境 : 

Windows 7 
TensorFlow 1.7 
Python 3.5.2

 

1.下載和安裝facenet 

下載命令 git clone https://github.com/davidsandberg/facenet.git   ,這里要注意一下,在環境變量中需要在path添加上Git的安裝位置,才可以執行此命令。

2.使用facenet前的准備

下載好facenet 后,打開facenet里面requirements.txt ,還需要安裝文件里面的庫包 - pip install --

 

 

 3.下載LFW數據集

下載地址 http://vis-www.cs.umass.edu/lfw/lfw.tgz,下載好后解壓到facenet/data /lfw/raw 下面,可以看到剛下載好的數據集中每張圖像的分辯率是250*250. 

另外需要在facenet/data /lfw/下新建一個lfw_160用來存放處理好的圖片。

 

 

 4.對圖像進行預處理 

因為程序中神經網絡使用的是谷歌的“inception resnet v1”網絡模型,這個模型的輸入時160*160的圖像,而我們下載的LFW數據集是250*250限像素的圖像,所以需要進行圖片的預處理。

在命令窗口進入facenet目錄 , 運行下面代碼,

python src/align/align_dataset_mtcnn.py --help 

 

 

 

 結果如上所示則表示命令可以執行。 這里要注意一點是在運行前需要在環境變量添加一條PYTHONPATH,將\facenet\src的路徑加進去才可以執行成功該命令。

 

 測試成功后,最終需要執行一條命令 

python align_dataset_mtcnn.py facenet/data/lfw/raw facenet/data/lfw/lfw_160 --image_size 160 --margin 32 --random_order--gpu_memory_fraction 0.25 

 

 執行最終執行成功后照片的像素會變成160*160的

 

 5.最后命令執行可能遇到的報錯

1.ValueError: Object arrays cannot be loaded when allow_pickle=False"     原因 numpy的版本不是 1.16.2  解決方案 執行 

pip install numpy==1.16.2

 

2.AttributeError: module 'scipy.misc' has no attribute 'imread'   原因  scipy的版本不是 1.2.1 解決方案 執行   

pip install scipy==1.2.1

 

 

 

結束語,后續我會繼續使用facenet做一些測試,實驗過程就留到下次寫了,有問題歡迎大家指出

 

參考博文  https://www.zhangshengrong.com/p/bYXxZB4MaZ/

                https://blog.csdn.net/u012505617/article/details/88038733

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM