01 2019 档案
摘要:1、SSH单阶人脸段检测器,在不同层检测不同scale的人脸,而不是使用mtcnn中金字塔的方式,从而实现加速。 2、SSH的整体结构,3个module的stride分别为8,16,32,使用不同的感受野,从而实现多尺度;三个Module独立训练、检测, 最终结果NMS。 3、检测模块和上下文模块。
阅读全文
摘要:numpy.repeat(a, repeats, axis=None) tile函数功能:对整个数组进行复制拼接
阅读全文
摘要:一、高效网络简介 图片来自https://zhuanlan.zhihu.com/p/53175018,高效网络的高效,直接的衡量目标是速度。 二、高效网络一览 CNN设计一般都是通过堆block的形式,下面只讨论每个模型的block 1、Mobilenet 首次使用了分离卷积(dw+pw,加速的核心
阅读全文
摘要:一、高效的训练 1、Large-batch training 使用大的batch size可能会减小训练过程(收敛的慢?我之前训练的时候挺喜欢用较大的batch size),即在相同的迭代次数下, 相较于使用小的batch size,使用较大的batch size会导致在验证集上精度下降。文中介绍了
阅读全文
摘要:ECCV2018 论文:Receptive Field Block Net for Accurate and Fast Object Detection 论文链接:https://arxiv.org/abs/1711.07767 代码链接:https://github.com/ruinmessi/R
阅读全文
摘要:Deformable conv赋予了CNN位置变换的能力,与普通卷积的对比如下。可以看到,在每个特征点上,会产生一个偏移,变成 不规则的卷积(感觉本质上,就是让CNN自己去学习感受野)。 思想来源于STN(Spatial Transform Network),但它们有着巨大的差别: STN得到的是全
阅读全文
摘要:经常遇到meshgrid,一段时间不用就忘记了,记录之 meshgrid用于生成网格点的坐标矩阵(参考https://blog.csdn.net/lllxxq141592654/article/details/81532855) 例如: x = np.array([0, 1]) y = np.arr
阅读全文
摘要:由于需求的变化,需要创建对象的具体类型也需要变化,通过new来创建对象会导致紧耦合,通过工厂方法,可以避免这种紧耦合。 1、问题 多个类型的文件分割器,在new的时候依赖具体类型,该如何避免呢? 2、使用工厂模式 定义抽象类和工厂基类 为每个分割器,创建具体类和具体工厂 MainForm不再依赖于具
阅读全文
摘要:python类中有三种方法,常见的是实例方法,另外两种是staticmethod装饰的静态方法,和classmethod装饰的类方法。 1、对比 流畅的python里,用一个例子进行了对比: (1)两个方法都不依赖于实例,类可以直接调用; (2)classmethod中,第一个参数为相应的类;sta
阅读全文
摘要:思路:为了爬到n层楼梯,有两个选择,在n-1阶前进1步 or 在 n-1阶前进2步,即f(n) = f(n-1) + f(n-2)
阅读全文
摘要:在软件构建过程中,需要为某些对象建立一种通知依赖关系:一个对象(目标对象)的状态发生改变,所有的依赖对象(观察者)都将得到通知。 1、如下是一个文件分割器的伪码,分为两部分,MainForm中设置文件路径及分割的次数,在成员函数中,生成分割器并调用分割器;FileSpliter为文件分割类。 2、需
阅读全文
摘要:思路:面积为高度×宽度,分别指向首尾两个元素,并记录此时的面积,当移动首尾时,宽度减小,如果移动高度较大的元素,面积必定减小,所以此时 应该移动较小的元素。
阅读全文
摘要:单例模式中,一个类只能有一个实例 一、实现 将默认构造函数、拷贝构造设为私有; 通过静态成员变量和静态成员函数来生成、获取单个实例。 二、线程安全 上述例子对于单线程没问题,但对于多线程可能会出错(某个线程在生成实例时,其他线程也可能进入并生成实例)。 1、一种办法是加锁,但代价较高:当只是读取实例
阅读全文