Tensorflow Object Detection API,带有Windows的GPU和实时检测function

我正在Python中testing新的Tensorflow Object Detection API ,并且成功地使用dockerWindows上安装了它。 但是,我的训练模型(更快的RCNN resnet101 COCO) 需要15秒才能做出预测 (尽pipe精度非常好),可能是因为我只使用Tensorflow CPU。

我的三个问题是:

  • 考虑到延迟,问题在哪里? 我听说更快的RCNN是低延迟视觉检测的好模型,是因为仅执行CPU?
  • 有了这样的延迟,是否有可能通过使用张量streamGPU进行高效的实时video处理,还是应该使用更stream行的模型,如YOLO?
  • 在docker中使用tensorflow GPU的stream行手段是nvidia-docker,但在Windows上不支持。 我是否应该继续寻找用于本地预测的docker(或conda)解决scheme,还是应该将我的模型直接部署到具有GPU的虚拟实例(我对Google Cloud Platform感到满意)?

任何有关使用Tensorflow进行实时video处理的build议和/或良好做法非常受欢迎!

考虑到延迟,问题在哪里? 我听说更快的RCNN是低延迟视觉检测的好模型,是因为仅执行CPU?

当然,这是因为你正在使用CPU。

有了这样的延迟,是否有可能通过使用张量流GPU进行高效的实时视频处理,还是应该使用更流行的模型,如YOLO?

Yolo很快,但是我曾经用它来表现,准确性不是很好。 但是一个好的选择。

在docker中使用tensorflow GPU的流行手段是nvidia-docker,但在Windows上不支持。 我是否应该继续寻找用于本地预测的docker(或conda)解决方案,还是应该将我的模型直接部署到具有GPU的虚拟实例(我对Google Cloud Platform感到满意)?

我认为你仍然可以在Windows中使用你的本地GPU,因为Tensorflow支持python上的GPU。

这里是一个例子,只是为了做到这一点。 它有一个可以读取网络摄像头或IP CAM流的客户端。 服务器正在使用Tensorflow python GPU版本,并准备使用预先训练的模型进行预测。

不幸的是,Tensoflow不支持tensorflow-serving上的tensorflow-serving 。 也正如你所说, Nvidia-Docker在Windows上不受支持。 Bash on windows上的Bash on windows也不支持GPU。 所以我认为这是现在唯一的方法。