josh-abad / proctor-vue-web

The web application for Proctor Vue.
MIT License
1 stars 1 forks source link

Detection/identification timers #8

Closed josh-abad closed 3 years ago

josh-abad commented 3 years ago

Currently, in order to know whether the user is actually undetected/unidentified or the machine learning model just failed to detect/identify the user for a split second, there are timers in-place to measure how long a user is unseen. There's a timer each for detection and identification. Essentially, this is how it goes:

  1. Try to detect the user's face.
  2. If a face is seen
    1. Pause detection timer
    2. Try to identify the user's face
    3. If the face is identified
      1. Stop all timers
      2. Go back to 1
    4. Else
      1. Start identification timer if it's not already active
      2. Go back to 1
  3. Else
    1. Start/resume detection timer if it's not already active
    2. Go back to 1

Only one timer will ever be active. If either timer runs out, the user will incur a warning.

Both timers are arbitrarily set for 10 seconds. Originally, it was five seconds, but it was a bit too short. However, 10 seconds is still an arbitrary choice and can still be too restrictive. Simplest choice at the moment seems to be to extend the timers' duration even further.