Johnny's Blog

Talk is cheap. Show me the code.

论文阅读Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks

一个快速准确的人脸检测算法

1. 算法核心内容        本论文提出了一种分步、多任务(同时预测人脸和人脸关键点)的人脸检测算法,算法的整体Pipeline如下图所示:        拿到一张图片后,首先对图片进行resize到不同尺寸得到图形金字塔。然后作者设计一个全卷积神经网络P-Net(Proposal Network)用于产生人脸候选框和回归具体位置坐标的回归向量,然后使用NMS合并重合度较高的候选...

论文阅读Seeing Small Faces from Robust Anchor’s Perspective

如何解决人脸检测小脸的漏检问题

1. 问题阐述        现有的人脸检测算法基本都是受Faster-rcnn和SSD启发的基于anchor机制的检测算法,这种算法有一个很大的技术特点,那就是:使用default box和人脸之间的IOU(Intersection-over-Union)overlap评估某个人脸和default box之间的相似度,从而决定图片中某个人脸应该由哪个default box来预测其精确的位置...

FFmpeg解码视频保存图片

如何使用FFmpeg解码视频

       项目需要,这几天尝试使用FFmpeg解码视频并得到图片,包括各种格式的监控视频,经过几天的努力,终于完成了,在这里做个记录。        FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性...

在caffe中使用HDF5格式数据进行关键点检测

hdf5

       关键点检测是计算机视觉任务中常见的一个任务,比如人脸关键点检测。关键点检测是要在已知的某种图像中找到感兴趣点的二维信息,比如在人脸中找到人的五官的中间位置点的坐标信息,如下图所示:        图中获取到人脸的关键位置信息,可以进一步进行人脸对齐之类的操作。关键点检测同样可以用到别的方面,比如车牌关键点检测。车牌关键点检测的目的是从已经检测到的车辆图片中寻找车牌的关键信...

Deep Learning 之 batch normalization

batch-normalization

       一直使用的各种卷积神经网络模型一般都会使用Batch Normalization,虽然经常使用,但是我对其中的细节一直不是很清楚。最近花了点儿时间仔细看了这篇论文《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》和几篇相关的博客,在这里做一下...

Linux下非root用户安装GCC 5.4

非root用户如何安装软件

我使用的服务器上的GCC版本是4.7,但是我编译一个项目的源码需要GCC 5.3以上的版本,而我又没有root权限,而且因为别人都用着4.7的版本没有问题,不可能因为我一个人升级GCC,这种情况下有没有办法为自己单独安装一个GCC呢?答案是肯定的。只需要稍微修改一下安装的配置文件就行了。 首先需要下载新的GCC源码,我这里安装的是GCC 5.4,下载之后解压并进入目录。命令如下: wge...

Linux 命令 dos2unix

文件在不同的操作系统之间传输导致的错误

今天遇到一个奇怪的问题:运行一个很简单的shell脚本,脚本如下: /build/tools/ristretto quantize \ --model=models/SqueezeNet/train_val.prototxt \ --weights=models/SqueezeNet/squeezenet_v1.0.caffemodel \ --model_quantized=mod...

leetcode(104)

Maximum Depth of Binary Tree

Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node. /** * Definition for a binary tre...

算法学习 1

prim算法

普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树。意即由此算法搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点(英语:Vertex (graph theory)),且其所有边的权值之和亦为最小。该算法于1930年由捷克数学家沃伊捷赫·亚尔尼克(英语:Vojtěch Jarník)发现;并在1957年由美国计算机科学家罗伯特·普里姆(英语:Robert C....

任务执行顺序题的解决

排序算法小结

在51nod学习贪心算法入门课程,课程最后一道题如下: 任务执行顺序 有N个任务需要执行,第i个任务计算时占R[i]个空间,而后会释放一部分,最后储存计算结果需要占据O[i]个空间(O[i] < R[i])。例如:执行需要5个空间,最后储存需要2个空间。给出N个任务执行和存储所需的空间,问执行所有任务最少需要多少空间。 最佳策略是按照R[i] – O[i]的不增顺序执行,我按照这...