1 Abstract

This approach was published On "Deformable Templates for Face Recognition" by Alan L. Yuille. I found that the method for eye recognition is useful for my current research, so just make notes.

The original paper mainly described three aspects:

1) Global templates which introduce a model that connect a set of basic features of the face by springs, the features include eyes, hair, mouth, nose, and left and right edges of the face, the method was proposed by Fischler and Elschlager. Now I am not going to focus on it.

2) A detailed descriptions of using deformable templates to extract facial features. I am just interested in eye templates.

3) A more robust method for deformable templates, which promises to obtain more reliable recognition. it is important for Real Application.

2 Feature Template For Eye Extraction

Suppose we want to detect eyes using traditional method. we know how to extract edges in the image, but it is hard to organize the low level edge features into a sensible global percept. The difficulty reminds me of the generalized hough transform,  but it can not describe such a sophisticated shape which has iris and white of eye. however, the deformable template can deal with it. In the deformable template approach the templates are specified by a set of parameters that enables a priori knowledge about the expected shape of the features to guide the detection process. The templates are flexible to be able to change their parameter values so as to match themselves to the data. The final values of these parameters then can be used to describe the features.

The key idea to the deformable templates is the energy function, which gives a measure of fit of the template to the image. that is, Minimizing the energy attracts the template to salient features, such as peaks, valleys, and edges in the image. The minimum of the energy function means best(local) fit with the image. The template is first given some initial parameters which decide an initial position of the feature, then the parameter of the template is updated by steepest descent method, this correspond to following a path in parameter space(Recalling hough transform method, we sample the parameter space and then increase the space at every possible points, it is a computational cost method).

By observing the above image, The template consists of the following features:

1) A circle of radius r, centered on a point . This corresponds to the boundary between the iris and the whites of the eye and is attracted to edges in the image intensity. The interior of the circle is attracted to valleys.

2) A bounding contour of the eye attracted to edges, which can be modeled by two parabolic sections representing the upper and lower parts of the boundary. It has a center , width 2b, maximum height a of the boundary above the center, maximum height c of the boundary below the center, and an angle of orientation .

3) Two points corresponds to the centers of the whites of the eyes, which are attracted to peaks in the image intensity. These points are labeled by  and , where  and .

4) The regions between the bounding contour and the iris correspond to the white of the eye. They will be attracted to large value in the image intensity.

5)  and  meant to be close together most of the time, but not always true.

The template is illustrated in above figure. It has a total of 9 parameters: , r, a, b, c and .  All of these are allowed to vary during the matching.

The parameter rotates the template, then the parabola functions get more complicated. For simplicity, we should first reconstruct coordinate using rotation parameter, then things become simpler. We define two unit vectors as follows:

,  Any points x in space can be represented by  where .

The circle function is then defined as , which centered at .

The top half of the parabola is defined as , the lower half is defined as , they both centered at .

Up to now, All we need is constructing an energy function of the deformable templates. Before this, we should define some representations of the images.

1) , the valley of the image,   represents the image itself.

2) , the peak of the image.

3) , the edge of the image, the original paper use first equation, but I prefer the second one.

These representations are chosen to extract properties of the image, such as valleys, peaks and edges. Once we have prepared these representations of the image, we can construct an energy function of the deformable templates.

1) ,  the energy takes the minimum value over the interior of the circle.

2) , the energy takes the minimum value over the edge.

3) , the energy takes the minimum value between the circle and the parabolas.

4) , the energy takes the minimum value at two peak points in the white of eyes.

5) , the energy takes the minimum value when two points get close together, but we should use it with caution.

Add all of the energy function above, we get a complete energy function .

Using the energy function, we can define an algorithm to detect the eye.

1) Set  to be large enough, set other coefficients to be 0. During this epoch the valley forces pull the template to the eye(Iris).

2) Increase the coefficient of the boundary of the circle . This fine tunes the size of the circle as it locks onto the iris.

3) Increase the coefficient of the peak . This rotates the template and get the correct orientation.

4) Increase the coefficient of the edges of the boundary . This fine tunes the position of the boundaries.

Right now, we have only one problem not solved yet. That is, how to decide the initial values of the template parameters. Here is the strategy:

Since the eye template might start at places where the valley representation was strong, we search in the whole image to find some local minimum in intensity. These local minimum positions may be the Initial  s. Then we should start several deformable templates off in parallel and see which gives the best results. At last we use some criteria such as the final energy function to decide which one is the best. However, the criteria may fail sometime, so we should check the template parameters meanwhile to avoid making mistake. Generally, if we come across a group of template parameters that are extremely unlikely, we should discard them even if the energy function is minimum.

3 Robust Feature Templates

The method described in the previous section may fail in several situations, such as partial occlusion or noise.

Consider the problem of estimating the mean from a set of samples .

The sample mean is ,  and the least square error is .

The sample mean is extremely sensitive to outliers. A robust technique for estimating the mean should be relatively independent of such outliers and should also enable us to identify the outliers themselves. We can use least trimmed squares to achieve the goal. For each value of x we order the residuals  so that , we choose M(M < N) points that has less residuals, then use these points to calculate the mean and least square error.

We can use the above idea to reformulate the deformable templates algorithm. The geometry model keep same as before. The measures of fit aim to find the parameters of the template that minimize the mean in the iris region, maximize the mean for the whites of the eyes, and maximize the mean edge strength at the boundaries. We order each variables by residuals, and then just use portion of them for the energy function. This give us better effect when partial occlusion or noise.

4 References

Alan L. Yuille. Deformable Templates for Face Recognition.

Deformable Templates For Eye Detection的更多相关文章

  1. 行人检测(Pedestrian Detection)资源整合

    一.纸 评论文章分类: [1] D. Geronimo, and A. M.Lopez. Vision-based Pedestrian Protection Systems for Intellig ...

  2. CV界的明星人物们

    CV界的明星人物们 来自:http://blog.csdn.net/necrazy/article/details/9380151,另外根据自己关注的地方,加了点东西. 今天在cvchina论坛上看到 ...

  3. paper 99:CV界的明星人物经典介绍

            CV人物1:Jianbo Shi史建波毕业于UC Berkeley,导师是Jitendra Malik.其最有影响力的研究成果:图像分割.其于2000年在PAMI上多人合作发表”Nor ...

  4. CV牛人牛事简介之一

    CV牛人牛事简介之一 [论坛按] 发帖人转载自:http://doctorimage.cn/2013/01/01/cv-intro-niubility/#6481970-qzone-1-83120-8 ...

  5. ECCV 2014 Results (16 Jun, 2014) 结果已出

    Accepted Papers     Title Primary Subject Area ID 3D computer vision 93 UPnP: An optimal O(n) soluti ...

  6. 基于Emgu CV的人脸检测代码

    这个提供的代码例子是Emgu CV提供的源码里面自带的例子,很好用,基本不需要改,代码做的是人脸检测不是人脸识别,这个要分清楚.再就是新版本的Emgu CV可能会遇到系统32位和64位处理方式有区别的 ...

  7. Dynamices CRM Permission Issue (Security role UI to privilege mapping)'s solution

    select * from privilege where  privilegeid = 'a4736385-9763-4a64-a44b-cd5933edc631' Security role UI ...

  8. CV code references

    转:http://www.sigvc.org/bbs/thread-72-1-1.html 一.特征提取Feature Extraction:   SIFT [1] [Demo program][SI ...

  9. CV codes代码分类整理合集 《转》

    from:http://www.sigvc.org/bbs/thread-72-1-1.html 一.特征提取Feature Extraction:   SIFT [1] [Demo program] ...

随机推荐

  1. List<FieldModelBase> 转 DataTable

    // List<FieldModelBase> 转 DataTable private DataTable ListToDataTable(List<FieldModelBase&g ...

  2. 基于Apache Hudi + Flink的亿级数据入湖实践

    本次分享分为5个部分介绍Apache Hudi的应用与实践 实时数据落地需求演进 基于Spark+Hudi的实时数据落地应用实践 基于Flink自定义实时数据落地实践 基于Flink+Hudi的应用实 ...

  3. 解析HetuEngine实现On Yarn原理

    摘要:本文介绍HetuEngine实现On Yarn的原理,通过阅读本文,读者可以了解HetuEngine如何在资源使用方面融入Hadoop生态体系. 本文分享自华为云社区<MRS HetuEn ...

  4. day 11 算法的时间空间复杂度

    (1).有以下程序: 求输入的n值(除1和n)之外的所有因子之和. 分析:这里函数内的循环体i初值不能为零.%是表示"取余",0除以任何数都不会存在余数的,所有是余数为0. (2) ...

  5. 封装OCX

    封装OCX的办法有2种: 1. 使用C++的MFC activex项目生成OCX 2. 使用C#的用户控件生成OCX(.net core好像不支持) 注意:以管理员身份运行Visual Studio ...

  6. C# 计算三角形和长方形 周长面积

    编写一个控制台应用程序,输入三角形或者长方形边长,计算其周长和面积并输出. 代码如下: using System; using System.Collections.Generic; using Sy ...

  7. 515. Find Largest Value in Each Tree Row

    You need to find the largest value in each row of a binary tree. Example: Input: 1 / \ 3 2 / \ \ 5 3 ...

  8. golang中的标准库数据格式

    数据格式介绍 是系统中数据交互不可缺少的内容 这里主要介绍JSON.XML.MSGPack JSON json是完全独立于语言的文本格式,是k-v的形式 name:zs 应用场景:前后端交互,系统间数 ...

  9. String类(获取,转换,判断,比较)

    1 package cn.itcast.p1.string.demo; 2 3 import java.util.Iterator; 4 5 import com.sun.org.apache.xpa ...

  10. ansible lineinfile 关闭selinux