pytorch的mask-rcnn的模型参数解释

2024-04-22 17:52

本文主要是介绍pytorch的mask-rcnn的模型参数解释,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

输入图像1920x1080,batch_size=8为例.

训练阶段

loss_dict = model(images,targets)

  • 入参
    • images: List(Tensor(3,1920,1080))[8]
    • targets: List(dict()[3])[8] dict详情见下表:
keytypedtypesizeremark
boxesTensorfloat32(n,4)1the ground-truth boxes in [x1, y1, x2, y2] format, with 0 <= x1 < x2 <= W and 0 <= y1 < y2 <= H.
labelsTenosrint64(n,)the class label for each ground-truth box
maskesTensoruint8(n,1920,1080)[N,H,W]the segmentation binary masks for each instance,实际就是0和1,有对象的区域就是1,否则就是0,这个照片有多少个对象就有多少个mask
area*Tensorfloat32(n,)对象面积
iscrowd*Tensorint64(n,)是否为一群对象(coco数据集会标注)
image_id*int图像编号

*为非必要参数,有一些数据集合处理的时候会标注上去*

  • 返回 loss_dict dict()[5] dict详情见下表:
keytypedtypesize损失函数remark
loss_classiferTensorfloat32()CrossEntropyLoss对象分类损失(Classification Loss):
loss_box_regTensorfloat32()Smooth L1 Loss/MSE边界框回归损失(Bounding Box Regression Loss):
loss_maskTensorfloat32()Binary Cross-Entropy Loss掩膜损失(Mask Loss):
loss_objectnessTensorfloat32()CrossEntropyLossRPN分类损失(RPN Classification Loss):前景/背景二分类损失
loss_rpn_box_regTensorfloat32()Smooth L1/MSERPN边界框回归损失(RPN Bounding Box Regression Loss)

推理阶段

predict = model(images)

  • 入参 images: List(Tensor(3,1920,1080))[8] 不变
  • 返回 predict:List(dict()[4])[8] dict详情见下表:
keytypedtypesizeremark
boxesTensorfloat32(m,4)2the predicted boxes in [x1, y1, x2, y2] format,预测的所有的边界框
labelsTensorint64(m,)the predicted labels for each instance
boxesTensorfloat32(m,)the scores or each instance
boxesTensorfloat32(m,1,1920,1080)[M, 1, H, W]the predicted masks for each instance, in 0-1 range. In order to obtain the final segmentation masks, the soft masks can be thresholded, generally with a value of 0.5 (mask >= 0.5).实际存储的是一个软掩膜,0.5以下的也有,存在比较平滑的过度

参考官方文档
maskrcnn_resnet50_fpn


  1. n为此图像上的实例个数 ↩︎

  2. m为此图像 ↩︎

这篇关于pytorch的mask-rcnn的模型参数解释的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/926458

相关文章

Go语言使用Gin处理路由参数和查询参数

《Go语言使用Gin处理路由参数和查询参数》在WebAPI开发中,处理路由参数(PathParameter)和查询参数(QueryParameter)是非常常见的需求,下面我们就来看看Go语言... 目录一、路由参数 vs 查询参数二、Gin 获取路由参数和查询参数三、示例代码四、运行与测试1. 测试编程路

Python lambda函数(匿名函数)、参数类型与递归全解析

《Pythonlambda函数(匿名函数)、参数类型与递归全解析》本文详解Python中lambda匿名函数、灵活参数类型和递归函数三大进阶特性,分别介绍其定义、应用场景及注意事项,助力编写简洁高效... 目录一、lambda 匿名函数:简洁的单行函数1. lambda 的定义与基本用法2. lambda

PyTorch中的词嵌入层(nn.Embedding)详解与实战应用示例

《PyTorch中的词嵌入层(nn.Embedding)详解与实战应用示例》词嵌入解决NLP维度灾难,捕捉语义关系,PyTorch的nn.Embedding模块提供灵活实现,支持参数配置、预训练及变长... 目录一、词嵌入(Word Embedding)简介为什么需要词嵌入?二、PyTorch中的nn.Em

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Java内存分配与JVM参数详解(推荐)

《Java内存分配与JVM参数详解(推荐)》本文详解JVM内存结构与参数调整,涵盖堆分代、元空间、GC选择及优化策略,帮助开发者提升性能、避免内存泄漏,本文给大家介绍Java内存分配与JVM参数详解,... 目录引言JVM内存结构JVM参数概述堆内存分配年轻代与老年代调整堆内存大小调整年轻代与老年代比例元空

Pytorch介绍与安装过程

《Pytorch介绍与安装过程》PyTorch因其直观的设计、卓越的灵活性以及强大的动态计算图功能,迅速在学术界和工业界获得了广泛认可,成为当前深度学习研究和开发的主流工具之一,本文给大家介绍Pyto... 目录1、Pytorch介绍1.1、核心理念1.2、核心组件与功能1.3、适用场景与优势总结1.4、优

conda安装GPU版pytorch默认却是cpu版本

《conda安装GPU版pytorch默认却是cpu版本》本文主要介绍了遇到Conda安装PyTorchGPU版本却默认安装CPU的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录一、问题描述二、网上解决方案罗列【此节为反面方案罗列!!!】三、发现的根本原因[独家]3.1 p

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

PyTorch中cdist和sum函数使用示例详解

《PyTorch中cdist和sum函数使用示例详解》torch.cdist是PyTorch中用于计算**两个张量之间的成对距离(pairwisedistance)**的函数,常用于点云处理、图神经网... 目录基本语法输出示例1. 简单的 2D 欧几里得距离2. 批量形式(3D Tensor)3. 使用不