标签: object-detection

从现有模型创建OpenCV Haar分类器

我想制作一个识别螺丝的应用程序.每个螺丝尺寸和形状都有一个标准,并且有软件可以提供每个螺丝的360 3d模型(例如Autocad)

我想知道是否有任何方法可以采用现有模型(某些扩展)并Haar classifier从中创建一个.

如果不清楚,我不想拍摄每张模特的数千张照片.我想以某种方式重用现有的模型

谢谢

c++ java android opencv object-detection

8
推荐指数
1
解决办法
822
查看次数

Yolo 如何在 YOLO 9000 中计算 P(Object)

目前我正在测试用于对象检测的 yolo 9000 模型,在论文中我了解到图像被分成 13X13 个框,在每个框中我们计算 P(Object),但是我们如何计算呢?模型如何知道这个盒子里是否有物体,请我需要帮助才能理解

我正在使用张量流

谢谢,

python object-detection tensorflow yolo

8
推荐指数
1
解决办法
1378
查看次数

选择tensorflow对象检测API训练超参数

我正在建立一个基于最近发布的tensorflow对象检测API的对象检测管道.我使用arXiv作为指导.我希望了解以下对我自己的数据集的培训.

  1. 目前尚不清楚他们如何选择学习率计划以及如何根据可用于培训的GPU数量进行更改.根据可用于培训的GPU数量,培训费率计划如何变化?该文提到使用了9个GPU.如果我只想使用1个GPU,我应该如何改变训练率?

  2. 使用Faster R-CNN 发布的Pascal VOC 样本培训配置文件的初始学习率= 0.0001.这比最初的Faster-RCNN论文中发布的版本低10倍.这是由于对GPU可用于培训的数量或由于不同原因的假设?

  3. 当我从COCO检测检查点开始训练时,训练损失应该如何减少?看看tensorboard,我的数据集训练损失很低 - 每次迭代0.8到1.2之间(批量大小为1).下图显示了tensorboard的各种损失..这是预期的行为吗?
    训练损失 - 更快的RCNN

object-detection tensorflow

8
推荐指数
1
解决办法
1299
查看次数

在张量流模型中使用更快的RCNN进行小物体检测

我正在尝试为小数字检测训练一个更快的rccn模型.我正在使用新发布的tensorflow 对象检测API,到目前为止已经从动物园中对预先训练好的faster_rcnn_resnet101_coco进行了微调.我所有的训练尝试都产生了高精度但低召回率的模型.在每个图像上的~120个对象(数字)中,仅检测到~20个对象,但是当检测到时,分类是准确的.(此外,我能够在我的裁剪图像上从头开始训练一个简单的回旋网,具有高精度,因此问题出在模型的检测方面.)原始图像中每个数字平均为60x30(可能大约是原始图像的一半)在将图像调整到模型之前调整图像之后.)以下是一个示例图像,其中包含我所看到的检测到的框: 在此输入图像描述

对我来说奇怪的是它如何能够正确地检测相邻数字但完全错过了在像素尺寸方面非常相似的其余数字.

我已经尝试围绕锚箱生成调整超参数,first_stage_max_proposals但到目前为止还没有改进结果.这是我使用的示例配置文件.我应该尝试调整哪些其他超参数?关于如何诊断问题的任何其他建议?我是否应该研究其他架构,或者使用更快的rccn和/或SSD来完成我的任务?

object-detection tensorflow

8
推荐指数
1
解决办法
4001
查看次数

我想知道对象检测api中边界框的大小

我用过了 API

(https://github.com/tensorflow/models/tree/master/object_detection)

然后,

我怎么知道边界框的长度?

我已经在github上实时使用了Tutorial IPython笔记本.

但我不知道用哪个命令来计算盒子的长度.

object-detection tensorflow

8
推荐指数
1
解决办法
8712
查看次数

如何为tensorflow对象检测模型运行eval.py作业

我在Google Colab上使用tensorflow的对象检测API训练了一个物体探测器.在一天的大部分时间里在互联网上进行研究后,我找不到关于如何为我的模型运行评估的教程,因此我可以获得像mAP这样的指标.

我发现我必须使用models/research/object_detection文件夹中的eval.py,但我不确定应该将哪些参数传递给脚本.

不久,我到目前为止所做的是,为测试生成标签并训练图像并将它们存储在object_detection/images文件夹下.我还生成了train.record和test.record文件,并编写了labelmap.pbtxt文件.我正在使用tensorflow模型动物园中的faster_rcnn_inception_v2_coco模型,因此我配置了faster_rcnn_inception_v2_coco.config文件,并将其存储在object_detection/training文件夹中.训练过程运行得很好,所有检查点也存储在object_detection/training文件夹中.

既然我必须评估模型,我就像这样运行eval.py脚本:

!python eval.py --logtostderr --pipeline_config_path=training/faster_rcnn_inception_v2_pets.config --checkpoint_dir=training/ --eval_dir=eval/
Run Code Online (Sandbox Code Playgroud)

这个可以吗?因为这开始运行正常,但是当我打开tensorboard时,只有两个选项卡,即图像和图形,但没有标量.另外,我用logdir = eval运行tensorboard.

我是tensorflow的新手,所以欢迎任何形式的帮助.谢谢.

object-detection python-3.x tensorflow google-colaboratory

8
推荐指数
3
解决办法
4619
查看次数

建议用于卫星图像中物体检测的CNN框架?

我正在寻找海洋大型卫星场景中的船只.我成功地应用于matterport的面膜RCNN安装卫星图像的小的子集,但它是分析像世界观庞大的图像太慢.我正在寻找可以做边界框的快速的东西,在python中,在Keras中实现,并且理想地优化(或者有很好的文档以便我可以优化它)用于卫星图像.有什么建议?

我找到了几个有希望的线索:

我可能会根据YOLT论文的建议,尝试在Keras中自定义RetinaNet的这种实现卫星图像,但是会喜欢其他建议!

python object-detection satellite-image keras convolutional-neural-network

8
推荐指数
1
解决办法
557
查看次数

使用新图像更新Tensorflow对象检测模型

我已经使用Tensorflow的对象检测Api使用自定义数据集训练了一个更快的rcnn模型。随着时间的推移,我想继续使用其他图像(每周收集一次)更新模型。目标是优化准确性并随着时间推移对较新的图像加权。

这里有一些选择:

  1. 将图像添加到以前的数据集并训练一个全新的模型
  2. 将图像添加到先前的数据集中,并继续训练先前的模型
  3. 仅包含新图像的新数据集,并继续训练以前的模型

这是我的想法:选项1:会更耗时,但是所有图像都将被“平等地”对待。

选项2:希望减少额外的训练时间,但一个问题是该算法可能会对较早的图像进行更多加权。

选项3:这似乎是最佳选择。采用原始模型,只专注于培训新事物。

其中之一明显更好吗?每个优点/缺点是什么?

此外,我想知道保留一个测试集作为准确性的控制还是每次创建一个包含新图像的新测试是更好的选择。也许将一部分新图像添加到模型中,再将另一部分添加到测试集中,然后将较旧的测试集图像反馈到模型中(或将其丢弃)?

object-detection tensorflow object-detection-api

8
推荐指数
1
解决办法
306
查看次数

google colab 在进程中设置“^C”

我正在运行从本教程中获得的代码, 我正在尝试运行tensorflow对象检测api,所有代码都运行良好,如果运行所有调用,所有单元格都会运行良好,最后,我的图像被分类。

Buuut 有 1 个电池不能很好地工作,它可以工作,但不喜欢它必须工作。

当我用它训练我的模型时!python legacy/train.py --logtostderr --train_dir=training/ --pipeline_config_path=training/ssd_mobilenet_v1_pets.config ,启动tensorflow并开始训练,但它只运行3步、4步,有时20、21、23步,最后,谷歌colab^C在过程中设置了a

我永远无法完成我的培训,因为谷歌合作实验室关闭了我的流程,有人知道发生了什么吗?

我已经尝试使用 GPU 和 TPU 实例。

[...]
INFO:tensorflow:Restoring parameters from training/model.ckpt-0
I1022 20:41:48.368024 139794549495680 tf_logging.py:115] Restoring parameters from training/model.ckpt-0
INFO:tensorflow:Running local_init_op.
I1022 20:41:52.779153 139794549495680 tf_logging.py:115] Running local_init_op.
INFO:tensorflow:Done running local_init_op.
I1022 20:41:52.997912 139794549495680 tf_logging.py:115] Done running local_init_op.
INFO:tensorflow:Starting Session.
I1022 20:41:59.072830 139794549495680 tf_logging.py:115] Starting Session.
INFO:tensorflow:Saving checkpoint to path training/model.ckpt
I1022 20:41:59.245162 139793493063424 tf_logging.py:115] Saving checkpoint to path training/model.ckpt
INFO:tensorflow:Starting Queues.
I1022 …
Run Code Online (Sandbox Code Playgroud)

python object-detection tensorflow object-detection-api google-colaboratory

8
推荐指数
1
解决办法
1万
查看次数

使用Tensorflow Object Detection API联合培训自定义模型

我试图在我构建的另一个自定义模型中使用Tensorflow对象检测API模型(在相同的代码库中).具体来说,我试图弄清楚如何处理以下(互斥点):

一种架构可能性

  • 联合训练Tensorflow物体检测模型Y与另一个自定义自动编码器模型X - 可能性1
  • 或者只是训练自定义自动编码器模型X,同时获得物体检测Y预测并将其合并到X - 可能性2中
  • 或物体检测Y输入是来自另一个自定义自动编码器X的中间层(不是tfrecord或RGB图像)的(张量) - 可能性3
  • 请注意,上图只显示了一个建筑变体(可能性3).基本上,如果我能弄清楚如何使用Tensorflow对象检测API进行联合训练,我可以做到这一切.

我已经浏览了官方的TF对象检测API 文档并搜索了网络,试图找到很好的例子,其中TF对象检测API是针对除了对象检测之外的情况而定制的.我还没找到.任何帮助或链接将不胜感激.

ps:一些相关的观点

  1. 仅供参考,我可以独立运行/训练Tensorflow OD API
  2. Stackoverflow在"告诉我你做了什么"的文化中茁壮成长,但由于这个问题是初步的,我在他们的文档或网络上找不到答案,因此动摇了社区,发现是否有人对此有一些想法.
  3. 几天前我在数据科学上发布了类似的问题,但没有回复.
  4. TF对象检测API github 新问题鼓励发布到stackoverflow以获得帮助和支持.

python object-detection computer-vision deep-learning tensorflow

8
推荐指数
0
解决办法
337
查看次数