This page describes how to determine if people are looking at a camera and which direction the user may be looking (up, left, etc). It describes how Center Pose Quality (CQP) works and evaluating data we report for pitch, roll, and yaw.


The pitch, roll, and yaw are not currently reported in events but we may add those later; right now you can only get these through the SDK. The object tracker reports the values for every single frame (that's how our client is displaying them on the screen). If using the SDK, you would need to implement the logic to track how long someone is looking at the screen - probably by using *event id*. The object tracker in the SDK will report the CPQ, pitch, roll, and yaw for every frame. For each person in the screen you will get an event id that you use to know if it is the same person from frame to frame and thus you can use that to accumulate the total time looking at the screen.


Example of events with direct gaze duration:


{
  "events": [
    {
      "eventId": "8a9621fb-ee2f-4dbf-9863-f309da3bf663",
      "sourceId": "USB Video Device",
      "date": 1565425185082,
      "startTime": 1565425128591,
      "endTime": 1565425222273,
      "type": "person",
      "rootPersonId": "6b379a94-3b55-4d8b-a321-60fff83bc896",
      "rootPersonAddDate": 1565425182033,
      "personId": "6b379a94-3b55-4d8b-a321-60fff83bc896",
      "smileDuration": 0,
      "name": "Steve",
      "similarityScore": 1.5808364,
      "directGazeDuration": 27393,
      "idClass": "noconcern",
      "topAtStart": 0.093492255,
      "leftAtStart": 0.17105651,
      "heightAtStart": 0.36527777,
      "widthAtStart": 0.20104167,
      "top": 0.29613727,
      "left": 0.13414897,
      "height": 0.36666667,
      "width": 0.20208333,
      "imageTime": 1565425182381
    },
    {
      "eventId": "65818fc0-7776-4a8e-b090-4bd025903bad",
      "sourceId": "USB Video Device",
      "date": 1565425226902,
      "startTime": 1565425226769,
      "endTime": 1565425244064,
      "type": "person",
      "rootPersonId": "6b379a94-3b55-4d8b-a321-60fff83bc896",
      "rootPersonAddDate": 1565425182033,
      "personId": "6b379a94-3b55-4d8b-a321-60fff83bc896",
      "smileDuration": 0,
      "name": "Steve",
      "similarityScore": 1.3028836,
      "directGazeDuration": 5168,
      "idClass": "noconcern",
      "topAtStart": 0.3062273,
      "leftAtStart": 0.12390513,
      "heightAtStart": 0.3361111,
      "widthAtStart": 0.18645833,
      "top": 0.29873672,
      "left": 0.09505797,
      "height": 0.26527777,
      "width": 0.153125,
      "imageTime": 1565425235073
    },
    {
      "eventId": "08b1573d-eed5-4515-a850-eb350eb21536",
      "sourceId": "USB Video Device",
      "date": 1565425323665,
      "startTime": 1565425323248,
      "endTime": 1565425366241,
      "type": "person",
      "rootPersonId": "6b379a94-3b55-4d8b-a321-60fff83bc896",
      "rootPersonAddDate": 1565425182033,
      "personId": "6b379a94-3b55-4d8b-a321-60fff83bc896",
      "smileDuration": 0,
      "name": "Steve",
      "similarityScore": 1.1187687,
      "directGazeDuration": 0,
      "idClass": "noconcern",
      "topAtStart": 0.6193565,
      "leftAtStart": -0.012875962,
      "heightAtStart": 0.28055555,
      "widthAtStart": 0.13958333,
      "top": 0.5752013,
      "left": 0.23718466,
      "height": 0.40138888,
      "width": 0.19791667,
      "imageTime": 1565425344753
    }
  ]
}