首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以使用Detectron2获取检测对象的像素数?

是否可以使用Detectron2获取检测对象的像素数?
EN

Stack Overflow用户
提问于 2022-05-14 09:40:27
回答 1查看 248关注 0票数 0

我对深入学习完全陌生。我有一个Detectron2模型,探测位于屋顶上的太阳能电池板。我想要计算被检测面板的表面,因此我需要得到被检测对象的像素数。有什么办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-15 17:50:57

如果您使用官方框架和分割而不是检测(为了更精确的表面估计)在图像im上使用如下所示:

代码语言:javascript
复制
outputs = predictor(im)

Dict outputs有键instances (您可以看到源代码) --您可以只获取掩码布尔张量并计算它的和:

代码语言:javascript
复制
masks = outputs['instances'].pred_masks
masks.shape

# torch.Size([15, 480, 640])

因此,这里有15个对象和输入图像的布尔掩码大小作为每个对象的掩码,现在我们计算每个检测对象的像素总数:

代码语言:javascript
复制
torch.sum(torch.flatten(masks, start_dim=1),dim=1)

# tensor([32251,  8786,  2513, 11821,  1395,  2129,   496,  2722,  1020,   571,
     1060,   806,  2006,   535,   297], device='cuda:0')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72238999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档