手把手教你如何用objection detection API实现实时目标检测(一)

本系列文章共分为三篇,包括环境配置、对图像的目标检测和利用摄像头实现实时检测三个部分,本文主要介绍相关的环境配置部分。

step1:准备相关文件

在这里我们使用的是GPU版本的TensorFlow,因此在此之前我们需要下载所需要的相关资料。主要有如下几部分:

  1. CUDA9.0安装包:下载地址
  2. cudnn7.0.5安装包:下载地址
  3. 项目所需文件:GitHub地址
  4. Protobuf3.6.0文件:下载地址
  5. anaconda3.4.3.1安装包:下载地址

这里需要特别提醒大家的是,大家在安装的时候尽量按照这里的版本,否则在后续进行操作的时候会遇到麻烦,博主一开始电脑安装的是cuda8.0,但是cuda8.0没法支持tf1.4及以上版本,多次报错很烦,最后全部卸载anaconda和cuda按照上述版本重新安装之后才成功,所以建议希望大家在配置环境的时候注意一下版本~

step2:安装anaconda、CUDA和cudnn

下载得到上述安装包后,我们直接对其进行安装即可,网上相关资料非常多,操作也较为简单,这里不再进行赘述,如果在安装过程中出现问题可以在文章下方进行评论,我会尽力帮大家解决~

step3:安装gpu版本的TensorFlow

在这里要求的TensorFlow版本必须在1.4以上,我选择安装的是1.8.0版本的TensorFlow。因为在这之前我们已经安装了好了anaconda、cuda和cudnn,我们直接打开cmd窗口,输入代码

pip install tensorflow-gpu=1.8.0

即可完成GPU版本的安装,如果这里报错,则需要检测一下是否是之前安装软件的过程中哪个步骤错了,比如是否已经将anaconda加入环境变量等。

step4:安装OpenCV

我们在后续需要实现用摄像头进行视频提取,所以在这里我们需要安装OpenCV,和上文一样,我们在cmd窗口中直接输入:

pip install opencv-python

step5:配置文件路径

我们需要对文件的路径进行配置,在这里,我们新建.pth路径文件,在里面输入文件的路径:

D:\models-master\research
D:\models-master\research\slim

在实际使用的时候,读者需要根据自己按照的位置对其进行修改。

在完成修改之后,我们将其复制到anaconda3的lib/site-packageswes文件夹下

step6:检查配置环境

在这里我们新建一个txt文件,对我们环境需要的版本进行说明,如下图:

absl-py==0.4.0
alabaster==0.7.9
anaconda-client==1.6.0
anaconda-navigator==1.5
anaconda-project==0.4.1
astor==0.7.1
astroid==1.4.9
astropy==1.3
Babel==2.3.4
backports.shutil-get-terminal-size==1.0.0
beautifulsoup4==4.5.3
bitarray==0.8.1
blaze==0.10.1
bleach==1.5.0
bokeh==0.12.4
boto==2.45.0
boto3==1.7.77
botocore==1.10.77
Bottleneck==1.2.0
bz2file==0.98
cffi==1.9.1
chardet==2.3.0
chest==0.2.3
click==6.7
cloudpickle==0.2.2
clyent==1.2.2
colorama==0.3.7
comtypes==1.1.2
conda==4.3.14
configobj==5.0.6
contextlib2==0.5.4
cryptography==1.7.1
cycler==0.10.0
Cython==0.25.2
cytoolz==0.8.2
dask==0.13.0
datashape==0.5.4
decorator==4.0.11
dill==0.2.5
docutils==0.13.1
enum34==1.1.6
et-xmlfile==1.0.1
fastcache==1.0.2
Flask==0.12
Flask-Cors==3.0.2
gast==0.2.0
gensim==3.5.0
gevent==1.2.1
greenlet==0.4.11
grpcio==1.14.1
h5py==2.6.0
HeapDict==1.0.0
html5lib==0.9999999
idna==2.2
imagesize==0.7.1
ipykernel==4.5.2
ipython==5.1.0
ipython-genutils==0.1.0
ipywidgets==5.2.2
isort==4.2.5
itsdangerous==0.24
jdcal==1.3
jedi==0.9.0
Jinja2==2.9.4
jmespath==0.9.3
jsonschema==2.5.1
jupyter==1.0.0
jupyter-client==4.4.0
jupyter-console==5.0.0
jupyter-core==4.2.1
lazy-object-proxy==1.2.2
llvmlite==0.15.0
locket==0.2.0
lxml==3.7.2
Markdown==2.6.11
MarkupSafe==0.23
matplotlib==2.0.0
menuinst==1.4.4
mistune==0.7.3
mpmath==0.19
multipledispatch==0.4.9
nbconvert==4.2.0
nbformat==4.2.0
networkx==1.11
nltk==3.2.2
nose==1.3.7
notebook==4.3.1
numba==0.30.1
numexpr==2.6.1
numpy==1.15.1
numpydoc==0.6.0
odo==0.5.0
olefile==0.45.1
openpyxl==2.4.1
pandas==0.19.2
partd==0.3.7
path.py==0.0.0
pathlib2==2.2.0
patsy==0.4.1
pep8==1.7.0
pickleshare==0.7.4
Pillow==4.0.0
ply==3.9
prompt-toolkit==1.0.9
protobuf==3.6.0
psutil==5.0.1
py==1.4.32
pyasn1==0.1.9
pycosat==0.6.1
pycparser==2.17
pycrypto==2.6.1
pycurl==7.43.0
pyflakes==1.5.0
Pygments==2.1.3
pylint==1.6.4
pyOpenSSL==16.2.0
pyparsing==2.1.4
pytest==3.0.5
python-dateutil==2.6.0
pytz==2016.10
pywin32==220
PyYAML==3.12
pyzmq==16.0.2
QtAwesome==0.4.3
qtconsole==4.2.1
QtPy==1.2.1
requests==2.12.4
rope-py3k==0.9.4.post1
s3transfer==0.1.13
scikit-image==0.12.3
scikit-learn==0.18.1
scipy==0.18.1
seaborn==0.7.1
simplegeneric==0.8.1
singledispatch==3.4.0.3
six==1.10.0
smart-open==1.6.0
snowballstemmer==1.2.1
sockjs-tornado==1.0.3
sphinx==1.5.1
spyder==3.1.2
SQLAlchemy==1.1.5
statsmodels==0.6.1
sympy==1.0
tables==3.2.2
tb-nightly==1.11.0a20180905
tensorboard==1.8.0
tensorflow-gpu==1.8.0
tensorflow-tensorboard==0.4.0
termcolor==1.1.0
toolz==0.8.2
tornado==4.4.2
traitlets==4.3.1
unicodecsv==0.14.1
wcwidth==0.1.7
Werkzeug==0.11.15
widgetsnbextension==1.2.6
win-unicode-console==0.5
wordcloud==1.5.0
wrapt==1.10.8
xlrd==1.0.0
XlsxWriter==0.9.6
xlwings==0.10.2
xlwt==1.2.0

接下来,复制解压protobuf文件得到的protic.exe文件到Windows目录下,根据上面写的关于环境的txt文件进行环境的检测,

pip install -r requirements.txt
protoc object_detection/protos/*.proto --python_out=.
python object_detection/builders/model_builder_test.py
pause

如果最后没有发生报错,并且输出ok,说明整个过程正确。

至此,环境配置部分已经完全结束。下一篇文章我们将在该环境的基础上进行图像的检测

你可能感兴趣的:(深度学习)