tensorflow contrib_WSL的深度学习环境(三)Tensorflow的object_Detection安装

在Github的tensorflow官网里,可以找到Tensorflow的模型花园(Model Garden),里面有很多tensorflow的SOTA(state-of-the-art )模型和项目。https://github.com/tensorflow/models

0b0145a9e6f6ebdcc637734d9a2f516e.png

tensorflow的模型花园

我们只关注其中在research下的一个项目:object_detection(目标检测)。为前面安装好的WSL和Anaconda配置一个tensorflow的运行环境,能够运行起来这个目标检测项目下的Jupyter notebook:object_detection_tutorial.ipynb,网上和许多计算机视觉书籍都有关于这个目标检测代码的解释。https://github.com/tensorflow/models/tree/master/research/object_detection

63ac4d29c430277265a65fc66bbebf47.png

tensorflow的目标检测

通过git下载这个models目录(其实只有research目录有用)非常费时间,网络上已经有人下载好了,大家可以到百度搜索这个网盘资源,但是从Github可以下载到最新的版本(目前还在有部分更新)。

research目录移动到home目录下,现在开始安装tensorflow。

激活前面已经创建好的tensorflow:

     source activate tensorflow
  • 安装1.14版本的tensorflow
     conda install tensorflow=1.14
  • 降级numpy到1.16

安装完成后,用conda list命令可以查看到numpy可能是高于1.16版本的1.18,只是后需要降级安装。安装命令如下:

    conda install numpy=1.16
  • 编译proto文件

进入到刚才下载的research目录,用protoc命令生成protos目录下proto协议文件的python文件。

protoc object_detection/protos/*.proto --python_out=.

Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准。他们用于 RPC 系统和持续数据存储系统。提供一个具有高效的协议数据交换格式工具库(类似Json)。
但相比于Json,Protobuf有更高的转化效率,时间效率和空间效率都是JSON的3-5倍。
可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。protoc是proto文件的编译工具。

  • 运行research目录下的setup.py
python setup.py buildpython setup.py install
  • 创建模型测试

还在reaserch目录下,运行创建模型的测试文件

python object_detection/builders/model_builder_test.py

这时会报一些没有找到模块的错误,一一搜索百度安装即可。

例如:ModuleNotFoundError: No module named 'matplotlib'

conda install matplotlib

当测试通过,会看到如图结果:

d9044955e4f5d29d76e7fb9211e1fc38.png

model_builder_test通过的结果

  • 运行jupyter服务
jupyter notebook
269344483fc2a6932da31bb9eac629f3.png

启动Jupyter服务

由于WSL没有安装可视化的图形界面,就没有浏览器可以调出,所以只能拷贝上图中的链接地址,在Windows下打开浏览器输入。看到如下的网页:

d98d6a659c5e4096bfdfac7ee957318d.png

jupyter notebook网页

在object_detection目录下找到这个.ipynb的文件,点击打开。

0b6e28305ba5196ee6261a7655b1c51d.png

Demo程序运行

点击上面的Run按钮可以单步调试运行,如果只是警告,可以得到最后运行的结果如图:

22060c28064a1ba7502e0ffed741666f.png

运行结果

  • 前面可能遇到的问题:
  • 如果安装了2.0版本的tensorflow,需要卸载根除所有tensorflow版本,再重新安装
conda uninstall tensorflow
  • ModuleNotFoundError: No module named 'absl'
 conda install absl-py
  • ModuleNotFoundError: No module named 'PIL'
conda install pillow
  • AttributeError: module 'tensorflow' has no attribute 'contrib'

Tensorflow 需要降级, 如果是 'keras' 需要tensorflow升级

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值