上一篇裝好了tensorflow的運行環境,開始嘗試運行一些實例代碼,在github上找到了一個tensorflow實現的facenet的代碼,還是遇到了很多坑!
堅持看完,有重要總結!
代碼:https://github.com/davidsandberg/facenet
clone完畢后, 直接運行validate_on_lfw.py ,接下來就是一堆坑!
可能是新裝的Ubuntu, 里面缺少太多東西了, 先裝了多少東西基本不記得了, 起碼還要安裝好這兩個:
apt-get install cmake
apt-get install python-dev
接下來從裝 dlib 開始說起
開始直接用 pip install dlib 安裝, 報錯, 錯誤內容太多,且沒有實際意義就不貼上來了,
關鍵是要再運行一次pip install dlib , 就會發現一個“非常人性化”的提示(我是真不知道為什么裝不上,找了好久安裝方法)
-- Could NOT find Boost
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython2.7.so (found suitable version "2.7.12", minimum required is "2.6")
-- *****************************************************************************************************
-- To compile Boost.Python yourself download boost from boost.org and then go into the boost root folder
-- and run these commands:
-- ./bootstrap.sh --with-libraries=python
-- ./b2
-- sudo ./b2 install
-- *****************************************************************************************************
關鍵信息就是說, 要自己去boost.org官網下載安裝包,按照以下步驟安裝!(如果第一次就提示了該多好, 非要執行兩次pip install dlib,才告訴我)
按照如上提示裝好boost后,在pip install dlib, 很順利就裝好了! (前提是一定要裝了cmake和python-dev, 否則還有其他問題,在這不多說了, 總之依賴關系不能一次性全告訴你, 就跟到機關辦手續一樣麻煩)
dlib裝好后, 還要再裝這些:
pip install matplotlib
pip install sklearn
apt-get install python-tk
這些比較順利,不多說了!
全部裝好了, 運行 validate_on_lfw.py, 依然出現奇葩的問題“段錯誤 (核心已轉儲) ” (segement fault core dump),完全無從查起, 后來知道有gdb, 目前還不知道怎么用!
后來去試代碼發現,只要是import tensorflow 就會崩潰,哪怕只有這么一句也會,
再后來從https://github.com/tensorflow/tensorflow/issues/2129 找到了解決方法, 要先import numpy,就不會崩潰, 不知道是tensorflow的什么問題導致的!
重要結論是什么呢?
1、github上的issues 真的很有用, 一般你遇到的問題, 在issues上都能找到
2、github的wiki一點要好好看, https://github.com/davidsandberg/facenet/wiki 一直就只看了“Home”,其他的“Validate on lfw”等都沒看, 導致很多問題折騰了好久
希望能對大家有所幫助!