<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Measuring Gaze Orientation for Human-Robot Interaction</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>R. Brochard</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>B. Burger</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>A. Herbulot y</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>F. Lerasle y</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CNRS; LAAS; 7 avenue du Colonel Roche</institution>
          ,
          <addr-line>31077 Toulouse Cedex</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
      </contrib-group>
      <fpage>2</fpage>
      <lpage>5</lpage>
      <abstract>
        <p>In the context of Human-Robot interaction estimating gaze orientation brings useful information about human focus of attention. This is a contextual information : when you point something you usually look at it. Estimating gaze orientation requires head pose estimation. There are several techniques to estimate head pose from images, they are mainly based on training [3, 4] or on local face features tracking [6]. The approach described here is based on local face features tracking in image space using online learning, it is a mixed approach since we track face features using some learning at feature level. It uses SURF features [2] to guide detection and tracking. Such key features can be matched between images, used for object detection or object tracking [10]. Several approaches work on xed size images like training techniques which mainly work on low resolution images because of computation costs whereas approaches based on local features tracking work on high resolution images. Tracking face features such as eyes, nose and mouth is a common problem in many applications such as detection of facial expression or video conferencing [8] but most of those applications focus on front face images [9]. We developed an algorithm based on face features tracking using a parametric model. First we need face detection, then we detect face features in following order: eyes, mouth, nose. In order to achieve full pro le detection we use sets of SURF to learn what eyes, mouth and nose look like once tracking is initialized. Once those sets of SURF are known they are used to detect and track face features. SURF have a descriptor which is often used to identify a key point and here we add some global geometry information by using the relative position between key points. Then we use a particle lter to track face features using those SURF based detectors, we compute the head pose angles from features position and pass the results through a median lter. This paper is organized as follows. Section 2 describes our modeling of visual features, section 3 presents our tracking implementation. Section 4 presents results we get with our implementation and future works in section 5.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
    </sec>
    <sec id="sec-2">
      <title>Visual features</title>
      <p>
        We use some basic properties of facial features to initialize our algorithm : eyes
are dark and circular, mouth is an horizontal dark line with a speci c color,...
Then we use sets of SURF to learn a better description of visual features. SURF
are extracted with their relative position in order to keep geometrical information
about features. We use a similarity measure to compare two sets of SURF (see
the probability measures in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]), we detect a feature as the maximum of this
function in image space. This function is de ned as:
kP
      </p>
      <p>P 2S0 Q2S1
where S0 and S1 are two sets of SURF, k:k2D=desc are the Euclidean norms
in image space (2D ) and in SURF descriptor space (desc). desc de nes the
local tolerance (descriptor space) whereas 2D de nes the geometrical tolerance
(image space). Learning a set of SURF is a matter of selecting SURF which
are representative of the feature and putting them into the same set with their
relative position (you can set the origin to the center of the feature).
3</p>
    </sec>
    <sec id="sec-3">
      <title>Tracking implementation</title>
      <p>
        We use a simple face model described by the position of eyes, center of mouth
and nose tip similar to the one in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. We use 7 parameters (two absolute
coordinates, two angles, spacing of eyes, scale, relative abscissa of nose) ltered
by an ICONDENSATION particle lter [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Likelihood measures and detection
are based on the same probability maps, detected features being the maxima of
those maps. A particle likelihood is the product of all features likelihood. Maps
information is merged in a way that if there is a high probability to have a
feature, it decreases the probability to have a di erent one. Likelihood is computed
using both standard properties of tracked features and similarity of SURF sets.
We have about 100 SURF stored for mouth, 20 for eyes, it's varying a lot for nose
(from 0 to 40) depending on visibility of nostrils and light saturation. Because
SURF similarity can be very small, we add a small constant (0:01) in order
not to get a null likelihood for particles that are not so bad. Since we cannot
predict head movement, the dynamic model we use is a random walk model, we
only expect head moves not to be too fast.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Results</title>
      <p>We have taken a video sequence of 1140 frames (Fig. 1) to compare the behavior
of the algorithm with and without SURF and how the number of particles in the
particle lter in uences the result. This sequence shows a single person making
head moves : pan and tilt rotations as well as fast head movements, both rotations
and translations and a simple \look at" movement. For each test, we ran the
algorithm 21 times on the same sequence due to the stochastic nature of particle
lters. We ran 3 tests with this sequence. The rst test with 250 particles without
SURF and only 50 particles with SURF. The second test is with 50 particles for
both versions of the algorithm. The last tests with 250 particles both with and
without SURF.</p>
      <p>It is slower to compute particles likelihood with SURF because of similarity
calculations involved in each likelihood evaluation. This is the reason why the
rst test does not compare the two versions of the algorithm with the same
number of particles. Without optimizing likelihood calculations the algorithm
runs 200 SURF particles as fast as 7000 particles without SURF. An interesting
point to note is sets of SURF can learn the shape of a feature as it is varying, as
a direct consequence if you close your eyes it can still track them, this is useful
when the person is blinking.</p>
      <p>The average standard deviation for the 3 tests with SURF is 10.9 for tilt,
14.9 for pan and 4.4 for roll, without SURF we get 10.5 for tilt, 15.8 for pan and
8.09 for roll. We get a smaller standard deviation over several runs with SURF
and a small amount of particles than without SURF and with lots of particles.
Nose tracking is not working properly yet and all the results are obtained with an
ambiguity on the sign of angles which is not always solved properly (the model we
use requires nose position to solve this sign ambiguity) which decreases greatly
the quality of measures. We ran a few tests with a better nose detector (which
uses SURF too) and already got much better results with SURF due to learning
being based on the result of the particle lter.</p>
      <p>
        We also ran the algorithm on the Yale B face database [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] on images with
frontal light. The Yale B database contains gray scale face images from 10
different persons with various lighting conditions and poses. With SURF we get an
average error (over the 10 di erent faces) of 3.15 for tilt, 10.3 for pan, 1.41 for
roll and without SURF we get 4.06 for tilt, 11.1 for pan, 1.5 for roll.
      </p>
      <p>Our current implementation adds a noticeable overhead per particle but this
can be optimized in order to have the same overhead per particle as the
implementation without SURF. It would be a bit slower only because of the need to
extract SURF from the image which takes approximately 8ms during our tests.</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion and future works</title>
      <p>
        Using sets of SURF to detect and track face features makes the process more
robust and stable under various poses. It allows detecting and tracking features
with varying shapes. Our current implementation of SURF similarity
calculations is slow. With some optimization using SURF adds a small overhead and
we could use more SURF. Taking face geometry (features relative position) into
account could also improve detection robustness. The main idea is to use sets
of SURF to learn something to track and learning changes in its shape as it
moves. We are currently integrating our algorithm on a robot and have planned
to use both human focus of attention and gesture recognition [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] to achieve better
human-robot interaction.
      </p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>This work was partially conducted within the EU STREP Project Commrob
funded by the European Commission Division FP6 under Contract F P 6 045441
and the french ANR project AMORCES.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>S.</given-names>
            <surname>Arulampalam</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Maskell</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Gordon</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.</given-names>
            <surname>Clapp</surname>
          </string-name>
          .
          <article-title>A tutorial on particle lters for on-line non-linear/non-gaussian bayesian tracking</article-title>
          .
          <source>IEEE Transactions on Signal Processing</source>
          ,
          <volume>50</volume>
          :
          <fpage>174</fpage>
          {
          <fpage>188</fpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>H.</given-names>
            <surname>Bay</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Tuytelaars</surname>
          </string-name>
          , and
          <string-name>
            <surname>L. Van Gool. SURF</surname>
          </string-name>
          :
          <article-title>Speeded-Up Robust Features</article-title>
          .
          <source>In European Conference on Computer Vision</source>
          , pages
          <volume>404</volume>
          {
          <fpage>417</fpage>
          ,
          <string-name>
            <surname>Graz</surname>
          </string-name>
          , Austria,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>B.</given-names>
            <surname>Benfold</surname>
          </string-name>
          and
          <string-name>
            <surname>I. Reid.</surname>
          </string-name>
          <article-title>Colour invariant head pose classi cation in low resolution video</article-title>
          .
          <source>In British Machine Vision Conference</source>
          ,
          <year>September 2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>L.M.</given-names>
            <surname>Brown</surname>
          </string-name>
          and
          <string-name>
            <surname>Ying-Li Tian</surname>
          </string-name>
          .
          <article-title>Comparative study of coarse head pose estimation</article-title>
          .
          <source>In Workshop on Motion and Video Computing</source>
          , pages
          <volume>125</volume>
          {
          <fpage>130</fpage>
          ,
          <year>December 2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>B.</given-names>
            <surname>Burger</surname>
          </string-name>
          , G. Infantes,
          <string-name>
            <surname>I. Ferrane</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Lerasle</surname>
          </string-name>
          .
          <article-title>Dbn versus hmm for gesture recognition in human-robot interaction</article-title>
          .
          <source>In Int. workshop on Electronics, Control, Modelling, Measurement and Signals</source>
          , pages
          <volume>59</volume>
          {
          <fpage>65</fpage>
          ,
          <string-name>
            <surname>Mondragon</surname>
          </string-name>
          , Spain,
          <year>July 2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>A. H.</given-names>
            <surname>Gee</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Cipolla</surname>
          </string-name>
          .
          <article-title>Determining the gaze of faces in images</article-title>
          .
          <source>Image and Vision Computing</source>
          ,
          <volume>12</volume>
          :
          <fpage>639</fpage>
          {
          <fpage>647</fpage>
          ,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>A.S.</given-names>
            <surname>Georghiades</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.N.</given-names>
            <surname>Belhumeur</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.J.</given-names>
            <surname>Kriegman</surname>
          </string-name>
          .
          <article-title>From few to many: Illumination cone models for face recognition under variable lighting and pose</article-title>
          .
          <source>IEEE Transactions on Pattern Analysis and Machine Intelligence</source>
          ,
          <volume>23</volume>
          (
          <issue>6</issue>
          ):
          <volume>643</volume>
          {
          <fpage>660</fpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>J.</given-names>
            <surname>Luo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. W.</given-names>
            <surname>Chen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K. J.</given-names>
            <surname>Parker</surname>
          </string-name>
          .
          <article-title>Face location in wavelet-based video compression for high perceptual quality videoconferencing</article-title>
          .
          <source>In International Conference on Image Processing</source>
          , volume
          <volume>2</volume>
          , pages
          <fpage>583</fpage>
          {
          <fpage>586</fpage>
          ,
          <year>October 1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>M.</given-names>
            <surname>Pantic</surname>
          </string-name>
          and
          <string-name>
            <given-names>L.</given-names>
            <surname>Rothkrantz</surname>
          </string-name>
          .
          <article-title>Automatic Analysis of Facial Expressions: The State of the Art</article-title>
          .
          <source>IEEE Transactions on Pattern Analysis and Machine Intelligence</source>
          ,
          <volume>22</volume>
          (
          <issue>12</issue>
          ):
          <volume>1424</volume>
          {
          <fpage>1445</fpage>
          ,
          <year>December 2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. H.
          <string-name>
            <surname>Zhou</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Yuan</surname>
            , and
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Shi</surname>
          </string-name>
          .
          <article-title>Object tracking using SIFT features and mean shift</article-title>
          .
          <source>Computer Vision</source>
          and Image Understanding,
          <volume>113</volume>
          (
          <issue>3</issue>
          ):
          <volume>345</volume>
          {
          <fpage>352</fpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>