1. 程式人生 > >windows+tensorflow object detection api 深度學習目標檢測實踐

windows+tensorflow object detection api 深度學習目標檢測實踐

1、在github上下載tensorflow/model專案

1. 首先把protoc-win32資料夾下面的protoc.exe移至protobuf-python/src目錄下。

2. 在cmd中進入protobuf-python/python目錄,先執行activate tensorflow進入tensorflow環境嗎,依次執行 python setup.py build和python setup.py test 和python setup.py install 。

3. 把protoc.exe所在的目錄新增至環境變數。 通過執行 protoc --version驗證設定環境變數是否成功。

編譯proto檔案:

、這裡會報錯。

Object_detection/protos/*.proto: No such file or directory,

單個編譯的話又有好多檔案相互關聯,編譯不成功,嘗試多次後發現在models資料夾下使用  shift+右鍵 的Windows powershell中使用以下命令可以全部編譯:

Get-ChildItem object_detection/protos/*.proto |Resolve-Path -Relative | %{protoc $_ --python_out=.}  

另外即使下載的不是3.5、3.6版本,不報這個錯,windows 下的命令應該是

protoc --python_out=.  *.proto

接下來將research資料夾和research裡面的slim資料夾的地址加入環境變數PYTHONPATH中,可以使用命令

import os

print(os.sys.path)檢視pythonpath的值

在python預設的第三方庫安裝路徑中,(對於只安裝了Anaconda的人來說是\Anaconda3\Lib\site-packages,安裝官方發行版本也在類似的目錄中)新建一個path.pth檔案,在裡面寫上你tensorflow安裝的位置(位置可以用pip show tensorflow檢視)

D:\Anaconda3\envs\tensorflow\Lib\site-packages#寫你自己的絕對路徑,這裡以安裝Anaconda為例

5.配置路徑2:

再次啟動jupyter notebook測試import tf,如果成功恭喜你了,本貼結束。如果這時候只是錯誤變了,變為ImportError: cannot import name 'weakref',那麼請在tensorflow的的安裝位置中找到名為的tf_should_use.py檔案,將第28行的from backports import weakref替換為import weakref

再次開啟notebook測試,至此,大功告成!

  • 以上算是Anaconda安裝好了TensorFlow,但要想在Jupyter notebook上使用,還沒完
    接著安裝ipython,安裝jupyter。

    (tensorflow)D:\>conda install ipython
    ···
    (tensorflow)D:\>conda install jupyter
    ···
    • 1
    • 2
    • 3
    • 4

    沒錯就是這裡… 建立tensorflow這個conda環境時不設定python版本的話,因為Anaconda內建的python版本是3.6,安裝ipython時就會有這一項,並且所有包都基於py36:
    安裝ipython
    於是這個專門為TF服務的conda環境內的python就被更新成了3.6,於是我們前兩步剛裝好的TF就不能用了,於是只能把這個環境刪掉重來…

  • 輸入這個:

    (tensorflow)D:\>ipython kernelspec install-self --user
    • 1

    看到類似這個結果

    Installed kernelspec python3 in C:\Users\XXX\Jupyter\kernels\python3
    • 1

    然後再去 jupyter notebook 新建一個檔案,試試 import tensorflow as tf,這時應該就可以用啦。

  • --------------------- 本文來自 Joy_Shen 的CSDN 部落格 ,全文地址請點選:https://blog.csdn.net/index20001/article/details/73555182?utm_source=copy