computer-vision - 在 FPN 对象检测模型中使用少于 5 个锚定尺度
问题描述
通常锚点大小设置为 {32, 64, 128, 256, 512}。但是,在我的数据集中,我没有像 512 x 512 这样大的框。所以我只想使用 4 个锚比例,即 {32、64、128、256}。这怎么可能,因为 FPN 有 5 个级别?
为了详细说明,请考虑下图。(来自关于detectron2的文章)
减少锚点的数量并不是很简单,因为删除比例涉及删除正在使用的 resnet(resnet 块)的一个阶段。BoxHead 和 RPN 都需要 P2 到 P5(RPN 也需要 res5/P6)。所以我的问题是如果我要删除一个锚比例(在我的例子中是 512 x 512,因为我的图像只有 300 x 300 并且对象不会超过那个大小)应该忽略哪个 resnet 块。应该忽略低分辨率块(res2)还是应该删除高分辨率(res5)?
还是结构不允许移除锚定标尺,必须使用 5 个标尺?
解决方案
您可以删除锚标尺,但请注意还要修改您的 RPN 和 BoxHead。P2 将具有最大的尺寸(在您的情况下为 512)。
但也许考虑保留所有这些并仅更改分辨率,从 16 到 256。我想这可以使您免于对模型进行大量重组,并且可以改进对较小对象的检测。
推荐阅读
- python - 如何取多列并将它们堆叠成一列,并使旧列名成为一列
- php - 如何将特定订单项数据发送到第三方脚本
- google-chrome - 在 Chrome DevTools 中,当完成时间线记录时,源面板的毫秒是什么意思?
- reactjs - 当我在 React JS 中导入所有组件时,我可以使用 foreach 吗?
- flutter - 如何通过 Dart 代码更改容器的子级?
- mongodb - Mongodb 连接字符串
- java - 在 Java 中格式化 SQL 查询的输出
- python - 如何使用 selenium 通过 Python 从类中的文本节点中抓取文本
- c# - 为什么 Assembly.GetExecutingAssembly() 在 NuGet 包中返回不同的结果?
- regex - 如何使用正则表达式删除其密码不遵循密码策略的所有行?