Wataの锟斤拷
  • 首页
  • 归档
  • 分类
  • 标签

mmcv组件6

MMCV核心组件Hook ​ MM的整个算法过程就像一个黑盒子:给定输入后(配置文件),黑盒子就会吐出算法结果。整个过程封装度非常高,几乎不需要手写什么代码,Hook机制的作用就是在算法执行过程中加入自定义操作呢 Hook就是一种一种触发器,可以在程序预定义的位置执行预定义的函数。MMCV根据算法的生命周期预定义了6个可以插入自定义函数的位点,用户可以在每个位点自由地插入任意数量的函数操作,如下
2024-03-05

mmcv组件5

MMCV核心组件Runner ​ 在2.0.0版本以后,Runnner从mmcv中移至mmengine,大体用法不发生改变,调用方式发生如下改变: 12from mmcv.runner import Runner # < 2.0.0from mmengine.runner import Runner # >= 2.0.0 官方文档提示: 我们希望你在教程中更多地关注整体结构,而非具
2024-03-05

MMCV组件4

MMCV核心组件Config 配置文件读取 配置类提供了统一的接口 Config.fromfile(),来读取和解析配置文件。 合法的配置文件应该定义一系列键值对,这里举几个不同格式配置文件的例子。 Python 格式: 123test_int = 1test_list = [1, 2, 3]test_dict = dict(key1='value1', key2=0.1)
2024-03-04

MMCV组件3

MMCV核心组件Registry ​ 从2.0.0版本开始,config 和 registry 机制移动到了 mmengine 里面,本文是以mmengine模块中的registry讲解的,其实老版本的registry也差不多,调用的时候从mmcv.utils里面调用就行 ​ OpenMMLab 的算法库支持了丰富的算法和数据集,因此实现了很多功能相近的模块。例如 ResNet 和 SE-Res
2024-03-04

MMCV组件2

MMCV核心组件学习FileClient FileClient源码分析: ​ 图片的读取一般包括两个步骤: 给定文件路径,读取文件内容(字节流) 对文件字节内容进行解码 ​ 第2步文件解码非常简单,通过 mmcv.imfrombytes 函数即可实现,该函数会对不同图片格式进行相应解码。用户各种各样需求基本上都出现在第一步,例如: 给定图片名(或者图片路径),直接读取文件内容即可 利用
2024-03-03

编程方式对比

编程方式对比与面向接口编程介绍 面向对象编程 (OOP) 面向对象编程强调使用类和对象来封装数据和行为。在OOP中,对象是数据和操作这些数据的方法的集合。 123456789101112131415class Car: def __init__(self, brand, model): self.brand = brand self.model = model
2024-03-03

MMCV组件1

MMCV核心组件FileHandler ​ 注意:在2.0.0版本以后,FileHandler和FileClient的功能已经转到mmengine中了(它们在mmengine.fileio模块中),但是功能和用法大体不变,导入和使用方式如下: 123456789101112# 在2.0.0半本以后,mmcv.load 函数已经被移除。在新版本中,# 此功能已经被重新设计和整合到了 mmcv.co
2024-03-03

MMseg1

MMseg教程(1) 配置文件的结构: config: ├─ _base_ ├ ├─datasets ├ ├─models ├ └─schedules ├─ unet ├─ upernet ├─ vit ├─ ... ​ config文件夹下有各种模型的配置文件夹,各个模型配置文件夹下装有该模型的不同网络,在不同的数据集下的配置,由于配置有很多的相似部分,因此这些配置都继承
2024-02-28

Effective Python note(2)

Effective Python note(2) 类与继承: 尽量用辅助类来维护程序的状态,而不要用字典和元组 ​ 在Python编程中,当需要在程序中维护状态时,应该优先考虑使用自定义的辅助类(辅助类是指那些主要用于封装数据和行为的类),而不是依赖于内置的字典(dict)或元组(tuple)类型。这是因为随着程序的复杂性增加,使用字典和元组可能会导致代码难以理解和维护 主要考虑两点: 代
2024-02-24
booknotes > Effective Python
#python

Effective Python note(1)

Effective Python note(1) Pythonic: PEP8 的一些重要规范: 每行字符数不超过79 长表达式换行时,首行后每行额外缩进4个空格 文件中函数与类间用两个空行分隔 同一类内各方法间用一个空行隔开 函数、变量及属性命名使用小写字母并以下划线相连,如 lowercase_underscore 受保护实例属性以单下划线开头,例如 _leading_undersco
2024-02-23
booknotes > Effective Python
#python
1…910111213

搜索