问题标签 [detectron]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
363 浏览

pytorch - Detectron2 在我的 model_final.pth 中添加更多类或微调现有类

我使用“COCO-InstanceSegmentation/mask_rcnn_X_101_32x8d_FPN_3x.yaml”并给出了一个包含橙子、苹果和菠萝图片的自定义数据集。现在我的模型已经准备好并且能够预测所有 3 种水果。假设现在我需要添加更多水果或为菠萝添加更多数据(我已经没有为系统提供足够的数据)。

我可以加载模型并使用新数据集开始训练(在它已经拥有的权重之上)吗?结果会有多好?

会影响之前的预测吗?由于橙色和苹果的预测正确,我不想搞砸。我将只在第二次培训中发送菠萝的图片,并计划在以后的培训中添加新的课程,如香蕉或西瓜。

这是正确的方法吗?或者让我知道我们是否有更好的选择

0 投票
1 回答
4589 浏览

python - Detectron2 - 在目标检测阈值处提取区域特征

我正在尝试使用detectron2框架提取类别检测高于某个阈值的区域特征。稍后我将在我的管道中使用这些功能(类似于:VilBert第 3.1 节训练 ViLBERT)到目前为止,我已经使用此配置训练了一个 Mask R-CNN,并在一些自定义数据上对其进行了微调。它表现良好。我想做的是从我训练的模型中提取特征,用于生成的边界框。

编辑:我查看了关闭我帖子的用户所写的内容并试图对其进行改进。尽管读者需要关于我在做什么的上下文。如果您对我如何使问题变得更好有任何想法,或者您对如何做我想做的事情有一些见解,欢迎您提供反馈!

我有个问题:

  1. 为什么我只得到一个预测实例,但是当我查看预测 CLS 分数时,超过 1 个通过阈值?

我相信这是产生 ROI 特征的正确方法:

然后

这应该是我的 ROI 功能。

我非常困惑的是,除了使用推理时产生的边界框外,我还可以使用提案和提案框及其类分数来获得该图像的前 n 个特征。很酷,所以我尝试了以下方法:

我应该在我的预测对象中获得我的建议框功能及其cls。检查这个预测对象,我看到每个框的分数:

预测对象中的 CLS 分数

在 softmaxing 并将这些 cls 分数放入数据框中并将阈值设置为 0.6 后,我得到:

在我的预测对象中,我得到了相同的最高分,但只有 1 个实例而不是 2 个(我设置了cfg.MODEL.ROI_HEADS.SCORE_THRESH_TEST = 0.7):

预测实例

预测还包含张量:Nx4 或 Nx(Kx4) 边界框回归增量。我不完全知道他们做什么和看起来像:

预测对象中的边界框回归增量

另一个奇怪的是,我的提案框我的预测框不同但相似:

提案边界框

0 投票
1 回答
681 浏览

python - 使用 dlib 进行多目标跟踪

我正在尝试从 pyimagesearch web 实现以下代码,以使用 dlib 进行多对象跟踪。我尝试自定义它以使用detectron2 而不是Mobilenet + SSD Caffe 模型运行它。这是代码

无论如何,我一遍又一遍地遇到这个错误,此时我不知道我做错了什么

我已经检查了 dlib.rectangle 的输入顺序是否正确,所以我愿意接受你能给我的任何想法。

0 投票
1 回答
219 浏览

python - 存储给定百分比的形状轮廓坐标

我正在 Detectron2 上构建一个以蘑菇为主题的项目。预测工作正常,我现在正在尝试生成具有预测区域(该区域的所有 XY 坐标)的图像的类似 COCO 的注释。为此,我需要做两件事:

  • 检索预测形状/区域的 XY 坐标并“缩小”以仅保存主要边缘(以避免保存太多数据点)
  • 将“已保存”点重新绘制到主图像上,以供用户判断是否保存了足够多的点

不幸的是,我在这两个方面都失败了。在第一点上,我(认为)我与二进制 numpy 对象相同,但我对它的大小感到惊讶并且我没有设法将它转换为 XY 坐标集

关于第二点,我收到一个错误,我无法弄清楚如何调试:

我正在使用的代码部分在这里:

仅供参考,我也尝试找到并绘制轮廓,但这似乎不起作用(请参阅我的帖子https://github.com/facebookresearch/detectron2/issues/1702#event-3501434732)。

你有什么线索吗?

谢谢!

0 投票
1 回答
4572 浏览

python - 在部分 COCO 数据集上训练 Detectron2

我正在尝试使用 Detectron2 和 COCO 数据集训练模型以进行车辆和人员检测,但我遇到了模型加载问题。

我在 SO 和https://github.com/immersive-limit/coco-manager(filter.py 文件)代码上使用了帖子来过滤 COCO 数据集,以仅包含来自“人”、“汽车”类的注释和图像、“自行车”、“卡车”和“自行车”。现在我的目录结构是:

基本上,我在这里所做的唯一一件事就是删除与这些类不对应的文档和图像,并更改它们的 ID(因此它们从 1 变为 5)。

然后我使用了 Detectron2 教程中的代码:

在训练期间,我收到以下错误:

尽管在训练期间减少了总损失,但该模型无法预测训练后的任何有用信息。我知道由于大小不匹配(我减少了课程数量),我应该收到警告,这从我在互联网上看到的情况来看是正常的,但在每个错误行之后我都没有得到“跳过”。我认为该模型实际上没有在这里加载任何东西,我想知道为什么以及如何解决这个问题。

编辑

为了比较,几乎相同情况下的类似行为被报告为问题,但它在每个错误行的末尾都有“跳过”,使它们有效地发出警告,而不是错误: https ://github.com/facebookresearch/detectron2/问题/196

0 投票
1 回答
241 浏览

python - 如何让 X 服务器在detectron2 中显示图像?

我正在关注detectron2 入门教程,以使用他们的机器学习模型之一检测图像中的对象。我正在使用 AWS 机器学习 AMI 和 jupyter 笔记本来执行此操作。该模型成功检测到图像中的对象,但 openCV 似乎无法正常工作,因为我没有在控制台中获得输出。我得到的错误是无法连接到 X 服务器。

这是我用来运行模型的命令:

这是 demo.py 文件:

0 投票
1 回答
3836 浏览

python - 如何训练用于无人机姿态估计的自定义关键点检测器。探测器2

因为我在其他地方找不到答案,所以我决定在这里描述我的问题。我正在尝试创建Eachine TrashCan Drone 的关键点检测器以估计其姿势。我遵循了一些教程。第一个是使用 TensorFlow ObjectDetectionAPI,因为我找不到解决方案,所以我尝试使用detectron2。一切都很好,直到我需要注册自己的数据集来重新训练模型。

我在 Google Colab 上运行代码并使用 coco-annotator 进行注释(https://github.com/jsbroks/coco-annotator/

我不认为我错误地注释了我的数据集,但谁知道呢,所以我将在下面的超链接中展示给你看:图片由我做的注释

我使用该代码注册数据:

这没有给我一个错误,但是当我尝试使用该代码开始培训过程时:

我最终得到了这个:

这是您可以下载我的文件的地方:

https://github.com/BrunoKryszkiewicz/EachineTrashcan-keypoints/blob/master/TrashCan_Datasets.zip

在哪里可以找到我的 Colab 笔记本:

https://colab.research.google.com/drive/1AllLZxrR64irms9mm-RiZ4DNOs2CaAEZ9?usp=sharing

我创建了这么小的数据集,因为首先,我想经历一下训练过程。如果我能做到这一点,我会让我的数据集更大。

现在我什至不确定是否有可能重新训练人类关键点模型来获取类似无人机的物体或任何其他物体的关键点。我需要说我对这个话题很陌生,所以我请求你的理解。如果您知道任何有关创建自定义(非人类)关键点检测器的教程,我将不胜感激。

此致!

0 投票
1 回答
1681 浏览

computer-vision - 如何在 Detectron2 中进行超参数调整

Detectron2 COCO Person Keypoint Detection Baselines with Keypoint R-CNN R50-FPN

如何使用上面的模型进行超参数调整?我必须打开哪些文件?

谢谢

0 投票
1 回答
2959 浏览

deep-learning - 如何在 Detectron2 中保存和加载自定义数据集的模型?

我尝试使用以下方法保存和加载模型:所有键都已映射,但输出#1 中没有预测

我也尝试过使用官方文档但无法理解输入格式部分

0 投票
1 回答
949 浏览

deep-learning - Detectron2 可视化器-“可视化器”对象没有属性“get_image”

我运行detectron2进行对象检测。

在 origina 中,在 trining 之后,我运行以下代码:

它工作得很好。

现在,在过滤了一些分段对象之后,我尝试运行代码并只显示一些段,所以我构建了一个数组arr_in,其中仅包含我想要呈现的实例数,我尝试附加它到 v.draw_instance_prediction。

但它不起作用。我要问的是如何从类型预测中附加变量?

谢谢