当前位置:网站首页>FasterRCNN示例代码测试1:令anchor_generator = None
FasterRCNN示例代码测试1:令anchor_generator = None
2022-07-23 00:50:00 【Eden_mm】
关注RPN一栏目:
import torch
import torchvision
from torchvision.models.detection import FasterRCNN
from torchvision.models.detection.rpn import AnchorGenerator
# 定义backbone
backbone = torchvision.models.mobilenet_v2().features
backbone.out_channels = 1280
##!!!! RPN,关注这里
#anchor_generator = AnchorGenerator(sizes=((32, 64, 128, 256, 512),), aspect_ratios=((0.5, 1, 2),))
anchor_generator = None
# 定义哪个feature将会被使用进行RoIAlign
roi_pooler = torchvision.ops.MultiScaleRoIAlign(featmap_names=['0'],
output_size=7,
sampling_ratio=2)
# 整合进模型
model = FasterRCNN(backbone=backbone, num_classes=10, rpn_anchor_generator=anchor_generator,
box_roi_pool=roi_pooler)
model.eval()
# 编个数据
x = [torch.rand(3, 500, 689), torch.rand(3, 400, 654)]
a = model(x)
print(a)
——————————————————————————————————————————
##!!!! RPN,关注这里
#anchor_generator = AnchorGenerator(sizes=((32, 64, 128, 256, 512),), aspect_ratios=((0.5, 1, 2),))
anchor_generator = None
一般情况可用自己设置的anchor_generator,也可以系统默认的,参考fast-rcnn源码
def _default_anchorgen():
anchor_sizes = ((32,), (64,), (128,), (256,), (512,))
aspect_ratios = ((0.5, 1.0, 2.0),) * len(anchor_sizes)
return AnchorGenerator(anchor_sizes, aspect_ratios)
if rpn_anchor_generator is None:
rpn_anchor_generator = _default_anchorgen()
——————————————————————————————————————————————
但是我使用默认的,就发生了报错
assert condition, message
AssertionError: Anchors should be Tuple[Tuple[int]] because each feature map could potentially have different sizes and aspect ratios.
There needs to be a match between the number of feature maps passed and the number of sizes / aspect ratios specified.
推测:默认的def _default_anchorgen(),这个是FPN的,多尺度生成。
anchor_sizes = ((32,), (64,), (128,), (256,), (512,))
aspect_ratios = ((0.5, 1.0, 2.0),) * len(anchor_sizes)
(32,), (64,), (128,), (256,), (512,)分别代表五个feature_map上取值大小;
aspect_ratios =((0.5, 1.0, 2.0), (0.5, 1.0, 2.0), (0.5, 1.0, 2.0), (0.5, 1.0, 2.0), (0.5, 1.0, 2.0))
这都是我猜的。。。。。。。。还没看锚框生成,暂定
边栏推荐
猜你喜欢

Found a useful data analysis tool

UGUI源码解析——MaskUtilities

【管理篇 / 升级】* 02. 查看升级路径 * FortiGate 防火墙

Idea export jar package to JMeter
![[ctfshow web getting started]ssrf](/img/eb/19c215fcacc0f101510a77c6d1edc3.png)
[ctfshow web getting started]ssrf

差分数组操作的一些性质

The most detailed explanation of the output of three numbers from large to small

基于共轭梯度法的对抗攻击

关系表达式 大于> 小于< 全等=== Nan isNan() 逻辑运算符 双感叹号!! && || % ++ -- 短路计算 赋值表达式 快捷运算符 顺序 闰年

Compose与RecyclerView结合效果会是怎样的?
随机推荐
解读机器人视觉类别及应用原理
程序员不会 jvm?骨灰级工程师:全等着被淘汰吧!这是必会技能!
User defined type details: structure, enumeration, union
以后面试官问你 为啥不建议使用Select *,请你大声回答他!
Basic use of day05 MySQL
setup中的props和context
【微信小程序】开发入门篇(二)
基于JSP实现OA办公系统
Regular expression conversion to corresponding text gadget
股票开户网上开户安全吗,银河证券怎么样
TCP数据传输与性能
The role of include in makefile
妙啊!美团 OCTO 分布式服务治理系统,这描述也太清晰了
券商真的有保本型理财产品吗?
7. Image data processing of paddlepaddle
带你走进MySQL MVCC的世界
Internet download manager is simply a killer of downloaders
The peak season of cross-border e-commerce is coming, remittance of international collection 0 rate will help you win the peak season!
UGUI源码解析——Mask
【C语言】文件操作