MMCV解析

0.MMCV源码结构

在这里插入图片描述

1.cnn

在这里插入图片描述
在这里插入图片描述
看名字可以猜到是和模型相关的代码

1.1bricks

在这里插入图片描述
看名字应该是各种网络层

1.1.1activation 激活函数

在这里插入图片描述
把torch上的激活函数注册到ACTIVATION_LAYERS,还实现了clamp和GELU

1.1.2 context_block

ContextBlock module in GCNet 通道注意力

1.2 utils

在这里插入图片描述

1.2.1 flops_counter

理解为计算量。可以用来衡量算法/模型的复杂度

1.2.2 fuse_conv_bn

https://blog.csdn.net/qq_42191914/article/details/103306066

2.fileio

在这里插入图片描述

2.1handlers (读写文件)

在这里插入图片描述
base.py是一个抽象类,其他的继承base ,(io.py)整合所有的handler通过注册机制,向外提供了load 和dump方法

2.2fileclient()

BaseStorageBackend是一个抽象类,其他的继承,file_client 整合所有的_backends 通过注册机制,向外提供了get和get_text方法

3.image

在这里插入图片描述
颜色转换,形态学,图像读取,tensortoimg,图像归一化

3.1hooks

钩子编程(hooking),也称作“挂钩”,是计算机程序设计术语,指通过拦截软件模块间的函数调用、消息传递、事件传递来修改或扩展操作系统、应用程序或其他软件组件的行为的各种技术。处理被拦截的函数调用、事件、消息的代码,被称为钩子(hook)
在这里插入图片描述
在这里插入图片描述

3.2 base_runner ()

Runner 对象初始化
注册各类 Hook 到 Runner 中
调用 Runner 的 resume 或者 load_checkpoint 方法对权重进行加载
运行给定的工作流,此时才真正开启了工作流

4.utils

在这里插入图片描述

4.1 config

通过 dict 生成 config
通过配置文件生成 config
自动替换预定义变量
导入自定义模块
合并多个配置文件
从 base 文件中合并
从多个 base 文件中合并
合并字典到配置
allow_list_keys 模式合并
允许删掉特定内容
pretty_text 和 dump

4.2 registry

Registry 类可以提供一种完全相似的对外装饰函数来管理构建不同的组件,例如 backbones、head 和 necks 等等,Registry 类内部其实维护的是一个全局 key-value 对。通过 Registry 类,用户可以通过字符串方式实例化任何想要的模块。

3.runner

在这里插入图片描述

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值