MTCNN自己的学习理解】的更多相关文章

MTCNN 流程 经过三个网络 P-Net,R-Net,O-Net 对于P-Net: P-Net是一个全卷积层,不涉及到全连接层,所以我们的输入图像的尺寸可以是不固定的. 对于P-Net来说,我们的输入图像是图像金字塔,也就是说对于一张图片,根据不同的factor进行图像的缩小.这里的尺寸不固定的意思是说,我们可以使用图像金字塔中的不同图像作为输入. 在P-Net网络中,我们首席那会设置最小的人脸检测尺寸,minsize=20(这里)[https://www.cnblogs.com/shine-…
目录 写在前面 算法Pipeline详解 如何训练 损失函数 训练数据准备 多任务学习与在线困难样本挖掘 预测过程 参考 博客:blog.shinelee.me | 博客园 | CSDN 写在前面 主页:https://kpzhang93.github.io/MTCNN_face_detection_alignment/index.html 论文:https://arxiv.org/abs/1604.02878 代码:官方matlab版.C++ caffe版 第三方训练代码:tensorflow…
全面学习理解TLB(Translation Look-aside Buffer)地址变换高速缓存 前言: 本文学习思路是:存在缘由   --> 存在好处 --> 定义性质 --> 具体分析 存在缘由: 由于地址映射(从虚拟地址转换成物理地址)需要的开销开大. 转换过程如下: 第一次访问内存是访问页表,取出虚拟页对应的物理页. 第二次访问内存是访问实际内存地址. 为了提高效率,现代CPU都包含了一个特殊Cache来跟踪最近使用过的地址变换,这个就是TLB. 明显好处: 如果有了TLB,那么…
MLT的学习理解 MLT是一个开源的多媒体库,我们的音视频编辑工具,是使用它作为底层支持,某司的'快剪辑'pc版和安卓版,也是用的它. MLT简介 它的GitHub地址,这个库比较老了,现在只有一个作者在维护,可能这种库关注的人比较少,所以只有几百个star.想快速上手这个库,可以去看Shotcut的源码,这个Shotcut是一个多轨道视频编辑工具,底层用的就是MLT,UI用的是Qt.MLT用的插件化的设计,它的核心是纯C写的,只依赖标准库和pthread,主要采用的是生产者(producer)…
SVM分类器里面的东西好多呀,碾压前两个.怪不得称之为深度学习出现之前表现最好的算法. 今天学到的也应该只是冰山一角,懂了SVM的一些原理.还得继续深入学习理解呢. 一些关键词: 超平面(hyper plane)SVM的目标就是找到一个超平面把两类数据分开.使边际(margin)最大.如果把超平面定义为w*x+b=0.那么超平面距离任意一个支持向量的距离就是1/||w||.(||w||是w的范数,也就是√w*w’) SVM就是解决 这个优化问题.再经过拉格朗日公式和KKT条件等数学运算求解得到一…
batch normalization学习理解笔记 最近在Andrew Ng课程中学到了Batch Normalization相关内容,通过查阅资料和原始paper,基本上弄懂了一些算法的细节部分,现在总结一下. 1. batch normalization算法思想的来源 不妨先看看原文的标题:Batch normalization:acclerating deep network training by reducing internal covariate shift.字面意思即:Batch…
最近学习Mybatis的官方文档,看到了[项目文档]一节有很多内容没有见过,做个笔记,理解一下. 没找到java相关代码的解释,其实用下面这个php版本解释,也非常不错. What is SOURCEXref? SOURCEXref is a developer tool that’s designed to ease the process of working on large PHP projects by making it very fast and easy to browse th…
原文:http://blog.csdn.net/mysniper11/article/details/8726649 引文地址:http://www.cnblogs.com/lxy2017/p/3927456.html 视频介绍网址:http://www.cvchina.info/2011/04/05/tracking-learning-detection/ TLD(Tracking-Learning-Detection)是英国萨里大学的一个捷克籍博士生Zdenek Kalal在其攻读博士学位期…
liuyihai@126.com http://www.cnblogs.com/liuyihai/ TLD(Tracking-Learning-Detection)是英国萨里大学的一个捷克籍博士生Zdenek Kalal在其攻读博士学位期间提出的一种新的单目标长时间(long term tracking)跟踪算法.该算法与传统跟踪算法的显著区别在于将传统的跟踪算法和传统的检测算法相结合来解决被跟踪目标在被跟踪过程中发生的形变.部分遮挡等问题.同时,通过一种改进的在线学习机制不断更新跟踪模块的"显…
本文译自<Deep learning for understanding faces: Machines may be just as good, or better, than humans>.为了方便,文中论文索引位置保持不变,方便直接去原文中找参考文献. 近些年深度卷积神经网络的发展将各种目标检测和识别问题大大的向前推进了不少.这同时也得益于大量的标注数据集和GPU的使用,这些方面的发展使得在无限制的图片和视频中理解人脸,自动执行诸如人脸检测,姿态估计,关键点定位和人脸识别成为了可能.本…
Recurrent Neural Networks(RNN) 人类并不是每时每刻都从一片空白的大脑开始他们的思考.在你阅读这篇文章时候,你都是基于自己已经拥有的对先前所见词的理解来推断当前词的真实含义.我们不会将所有的东西都全部丢弃,然后用空白的大脑进行思考.我们的思想拥有持久性. 传统的神经网络并不能做到这点,看起来也像是一种巨大的弊端.例如,假设你希望对电影中的每个时间点的时间类型进行分类.传统的神经网络应该很难来处理这个问题--使用电影中先前的事件推断后续的事件. RNN 解决了这个问题.…
java当中的继承是和c++中的继承类似,只是java中的继承时的父类只能有一位. 我们今天在这里讲的是关于java中的自动转型的理解:顾名思义,自动转型值得就是使用时自动的将自身的类型进行转化. 自动转型的必要条件: 必须存在继承关系. 自动转型的格式: 格式一: 父类名  对象名 = new 子类构造方法(参数值,...); 格式二:   public void method(父类名  参数名){ } 子类名 对象名a = new 子类构造方法(参数值,...); 父类名  对象名b = n…
刚开始学习Python的时候,对有关args,kwargs,和*的使用感到很困惑.相信对此感到疑惑的人也有很多.我打算通过这个帖子来排解这个疑惑(希望能减少疑惑). 让我们通过以下5步来理解: 1. 通过一个函数调用来理解’*’的作用 2. 通过一个函数的定义来理解’*args’的含义 3. 通过一个函数的调用来理解’**’的作用 4. 通过一个函数的定义来解’**kwargs’的含义 5. 通过一个应用实例来说明’args’,’kwargs’应用场景以及为何要使用它 通过一个函数调用来理解’*…
导读 首先,ThreadLocal 不是用来解决共享对象的多线程訪问问题的,普通情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其它线程是不须要訪问的,也訪问不到的. 各个线程中訪问的是不同的对象. 另外,说ThreadLocal使得各线程能够保持各自独立的一个对象,并非通过ThreadLocal.set()来实现的.而是通过每一个线程中的new 对象 的操作来创建的对象,每一个线程创建一个,不是什么对象的拷贝或副本. 通过ThreadLocal.set()…
流行-Manifold[1]  流形,也就是 Manifold . 1. 比较好的形象理解 流形学习的观点是认为,我们所能观察到的数据实际上是由一个低维流形映射到高维空间上的,即这些数据所在的空间是“嵌入在高维空间的低维流形.”.由于数据内部特征的限制,一些高维中的数据会产生维度上的冗余,实际上只需要比较低的维度就能唯一地表示. 举个例子,比如说我们在平面上有个圆,如何表示这个圆呢?如果我们把圆放在一个平面直角坐标系中,那一个圆实际上就是由一堆二维点构成的. 比如一个单位圆:(1,0) 是一个在…
前言 在学习STL中containers会发现C++ STL里定义了很多的容器(containers),每一个容器的第二个模板参数都是allocator类型,而且默认参数都是allocator.但是allocator到底是什么?有什么作用呢? 接下来就围绕着是什么和有什么作用来展开,其中最后补充一下如何去使用默认的allocator. 由于本人学习尚浅,各种blog和msdn学习了几天,依然还是不是特别理解.这是把自己的学习经验,进行一次梳理和记录. What? std::allocator t…
epoll机制 wrk用非阻塞多路复用IO技术创造出大量的连接,从而达到很好的压力测试效果.epoll就是实现IO多路复用的关键. 本节是对epoll的本质的学习总结,进一步的参考资料为: <深入理解Nginx:模块开发与架构解析(第二版)>,陶辉 首先分析网络数据接收模型. 计算机分为硬件中断和软件中断,硬件中断是由外接设备产生的,比如网卡,键盘,鼠标等这些都是硬件设备.硬件设备向CPU发出中断信号,高电平信号到达CPU引脚,触发CPU立即执行中断.软中断就是由程序产生的中断. 当网卡收到外…
一.相关基础知识 1.C/S(Client/Server)架构和B/S(Browser/Server)架构 首先说C/S架构,简单讲其实很常见,类似QQ等需要下载客户端的应用程序就是建立在C/S架构中.往深一点讲,它是分布式架构,每个客户端直接连接数据库服务器,并且数据的处理需要依赖客户端,所以说我们经常见到QQ用着用着就卡死了.这么一来,软件开发时选择C/S架构会出现以下问题: 1)所有客户端并发连接数据库,这直接限制客户端程序同时运行的数量. 2)需要安装,麻烦.(不过,这阻挡不了现在各种A…
正如名字所示,TLD算法主要由三个模块构成:追踪器(tracker),检测器(detector)和机器学习(learning). 对于视频追踪来说,常用的方法有两种,一是使用追踪器根据物体在上一帧的位置预测它在下一帧的位置,但这样会积累误差,而且一旦物体在图像中消失,追踪器就会永久失效,即使物体再出现也无法完成追踪:另一种方法是使用检测器,对每一帧单独处理检测物体的位置,但这又需要提前对检测器离线训练,只能用来追踪事先已知的物体. TLD是对视频中未知物体的长时间跟踪的算法."未知物体"…
教程地址:http://www.runoob.com/design-pattern/design-pattern-tutorial.html 教程书籍:<Android 设计模式解析与实战> 1. 单例模式 关键字:Singleton 使用目的:单例模式主要就是为了保证当前系统中只存在一个实例,供不同的地方调用. 使用情景:当一个对象的产生需要较多资源(如读取配置.产生其他依赖对象),且创建和销毁的性能又无法优化时. 使用实例:Universal-Image-Loader. 2. 原型模式 关…
Android支持JPEG和PNG格式.GIF和BMP格式图片的支持. 图片最终要显示在屏幕上,都会对应一个屏幕上的点,即对应一个颜色值.不同格式的图片,只是不同压缩编码和解压算法. 也就是说,我们看到的.jpg..png图片的文件大小只有几十KB,担把它们加载到内存中时,每张图片最终都按长X宽展开,计算其占用内存大小的就变成了(ARGB_8888格式的图片,每像素占用 4 Byte,而 RGB565则是 2 Byte,假设是ARGB_8888): 内存占用=长 X 宽 X 4bytes 这种算…
一遍学习基础,一遍练习打字,很多乐趣. 代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Reflection; namespace dazilianxi { public class Category { public int Id { get;set;} public string Name { get; set; } } public c…
信息来自知乎网友 学习截图:来自开源力量…
近期做到的项目中,用到的框架是SSM(SpringMVC+Spring+Mybatis).之前比较常见的是SSH.用到了自然得了解各部分的分工 spring mvc 是spring 处理web层请求的一个模块,spring mvc需要有spring的架包作为支撑才能跑起来.(也有看到一些博客有提到spring boot,spring boot就是一个大框架里面包含了许许多多的东西,其中spring就是最核心的内容之一,当然就包含spring mvc.他们的关系大概就是这样:spring mvc…
win10 + vs2017 源码如下: int main() { vector< int > numbers = { 1, 2, 3, 4, 5 }; for (auto num : numbers) { printf( "num = %d\n", num ); } return 0; } 汇编理解如下: int main(){# 入栈00933F63  sub         esp,150h  00933F69  push        ebx  00933F6A …
position 当时在学习的时候也没有进入深入的研究,主要是因为平时自己用的不是很多.今天看到了篇解释不错的文章就整理,学习下. http://www.cnblogs.com/bokin/archive/2012/12/14/2816864.html http://www.cnblogs.com/coffeedeveloper/p/3145790.html#html 感觉介绍的都非常详细,与大家分享.…
EventBus是一个Android端优化的publish/subscribe消息总线,简化了应用程序内各组件间.组件与后台线程间的通信. 比如请求网络,等网络返回时通过Handler或Broadcast通知UI,两个Fragment之间需要通过Listener通信,这些需求都可以通过EventBus实现. http://blog.csdn.net/harvic880925/article/details/40660137   (讲解很详细,根据这个理解的) http://blog.csdn.n…
1.首先,需要理解几个概念 1.同步(Synchronous):同步方法调用一旦开始,调用者必须等到前面的方法调用返回后,才能继续后续的行为,依次直到完成所有. 2.异步(Asynchronous):异步方法调用更像一个消息传递,一旦开始,方法调用就会立即返回,调用者就可以继续后续的操作.异步方法通常会在另外一个线程中“真实”地执行.整个过程,不会阻碍当前调用者的工作. 3.并发(Concurrency):在一个时间段内,多件事情在这个时间段内交替执行.比如说:有两个队列,进入同一个入口,交替进…
/** * <html> * <body> * <P> Copyright 1994 JsonInternational</p> * <p> All rights reserved.</p> * <p> Created on 19941115</p> * <p> Created by Jason</p> * </body> * </html> */ package…
近期在学习队列相关的一些知识,在学习过程中发现Iterable<T>接口中新增了两个新的方法,出于好奇,就想知道这是什么东东,干什么用的.俗话说:实践出真知,所以就有了以下反复的测试. 先看下新增的这两个方法: default void forEach(Consumer<? super T> action) { Objects.requireNonNull(action); for (T t : this) { action.accept(t); } } default Split…