网络模型测试&本地访问远程服务器tensorboard

5 篇文章 0 订阅
4 篇文章 0 订阅

训练网络结果和tensorboard查看

在完成tf-faster-rcnn的训练之后,我们得到了最终的训练网络模型。我们可以尝试修改demo.py文件,来使用我们刚训练好的模型对数据进行识别测试。我们已经训练好的模型放在项目根目录的output/vgg16/voc_2007_trainval/default目录下。

网络结果测试

  1. CLASSES类名修改
    首先,我们修改tools/demo.py,设置对应的CLASSES。如果这一步已经按照之前 https://blog.csdn.net/zzyincsdn/article/details/84843456 所说过的做好了,那么我们可以直接跳到下一步。如果没做好,那么这里应该修改为数据集中的数据的所有的类名集合。
    在这里插入图片描述
  2. 识别图片名称修改
    我们将需要进行识别的图片放置到项目主目录的data/demo目录下
    在这里插入图片描述
    在这里我放入了四张图片。之后对应修改我们的demo.py文件,将im_names[]数组中的名称全部替换为我们需要识别的图片的名称。
    在这里插入图片描述
    在这里我总共有四张需要识别的图片,所以填入四个名称。
  3. 使用模型进行识别
    之后就像我们最初下载和配置完成tf-faster-rcnn的代码一样,运行demo.py文件,那么会对我们放到data/demo 的四张图片进行目标识别。如果按照 https://blog.csdn.net/zzyincsdn/article/details/84780511 文章中对demo.py文件进行了存储到本地的修改的话,在项目主目录下,会生成识别完成后打下识别框的文件。通过filezilla下载到本地,查看结果如下:(由于某些原因这里打上马赛克)
    在这里插入图片描述

通过tensorboard查看远程训练结果

tensorflow为我们提供了一个很方便的网络接口来查看我们整个训练的结果,就是通过tensorboard来实现。不过由于在实验室的实际操作流程是通过远程ssh登录到服务器上来进行训练的,所以无法直接启动tensorboard查看,需要进行端口的转接。
首先回到本地环境,使用ssh命令来实现端口转接

ssh -L  16006:127.0.0.1:6006  -p 1006 root@xxx.xx.xx.xxx

这里16006是我们本地(localhost)的网络接口,6006是即将在远程服务器上启动的tensorboard使用的网络接口,root是远程ssh登录时使用的用户名,xxx.xx.xx.xxx是登录的服务器的ip,1006是使用ssh登录服务器时的root用户使用的接口。按照实际的操作来对以上参数进行修改就可以实现端口转接了。
进入到项目主目录,运行以下指令

tensorboard --logdir=tensorboard/vgg16/voc_2007_trainval/ --port=6006  

这里我们使用6006来配置tensorboard的接口,之后就可以在本地访问127.0.0.1:16001来实现对tensorboard的访问了
在这里插入图片描述
从图中我们看到total_loss还有可下降的趋势,以及各种训练数据的变化趋势。

下一步计划

调整参数和训练步长等等,训练处准确率更高和丢失更少的FasterRCNN模型

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值