Code Monkey home page Code Monkey logo

engage-360's Introduction

About The Project

Engage 360 aims to resolve the problems faced by people in the online mode of education and examination! Engage 360 provides solution to the problems such as Proxy User, Proxy Attendance and Cheating during Online Examinations.

Core Features

  • Face Recognition Based Authentication System
  • Automated Attendance System integrated in video-conference  ⭐
  • Online Exam Proctoring System  ⭐ ⭐

Built With

Here's a curated list of all the major technologies that have been used to build Engage 360:

Instructions for Project Setup

  • Clone the repo to your local system
  • After opening the project, first thing to do is to get the packages. Type the following in the terminal :
    • flutter pub get
  • Now open your android emulator or connect your android device.
  • To run the code, go to the terminal and type :
    • flutter run --no-sound-null-safety
    • Firebase ML SDK doesn't support sound null safety.

Features of Engage 360

‣ Face Recognition Based Authentication System

For Authentication, the Azure Face Api was used and for painting the box around the face in real-time, the Firebase ML Vision SDK was used.

  • Signup :

    • The user first needs to click an image of his face. The image is then sent to Face Detection Api which returns us a faceId which is later used to verify the user.
    • After that the user needs to enter his name & phone number and all these datas are then stored in the database & the user is signed in.
  • Login :

    • The user first needs to enter his phone number using which we query the database to see if the user already exist or not.
    • If user exist, then he needs to click an image of his face & now this image is sent to the Face Detection Api to get a faceId.
    • Then this faceId and the faceId from the database is sent to Face Verification Api. If the face matches, the user is logged in.

‣ Automated Attendance System during Video Call Meetings  ⭐

For Video Calling, the Agora WebRTC Engine was used which provides integrated Face Detection Callback to monitor face during video call. For storing data, the Firebase Database was used. There are two ways to join a meeting and each way has its own separate roles:

  • Host : The Host needs to create a new Room and share the Room-Id with the attendees.
  • Attendee : The Attendee joins the room using the room-id from the host.
  • During the entire duration of the meet, the face of the attendee gets monitored.
    • At any point of the meet, if the face of the attendee is not detected, he is given a warning and his violation counter is increased by +1.
  • If the violation counter reaches 3, he'll be removed from the room and marked as absent.
  • When the host leaves, everyone else is removed from the room and all those who were in the meet till then will be marked as present.

‣ Online Exam Proctoring | Cheating Detection System   ⭐ ⭐

The main idea behind this was that during online interviews/exams, the video, audio and screen of the candidate is already shared over the video calling platforms like G-meet or MS-Teams. But the proctor has to manually check the candidate's face to see whether he's cheating.

Here Engage 360 comes into play. During the entire duration of the test, the face of the candidate is monitored through the app. Here's more details about it:

  • Before entering the test, the candidate has to verify his face by clicking an image. This prevents proxy test attempts.
  • Once started, the face of the candidate is constantly monitored.
  • At any time during the test, if the face is not detected, the candidate will be immediately disqualified.

Since the video, audio and screen of the candidate is already shared over the video calling platforms, there's only 3 places around him from where he can cheat. Either by looking down at his phone/notes or by looking left or right.

  • If the candidate tries to look down, he'll be shown a warning and his violation counter will be increased.
  • If the candidate rotates his head left or right frequently, he'll be shown a warning and his violation counter will be increased.
  • If the violation counter reaches 3, the candidate will be disqualified.

engage-360's People

Contributors

aditya3901 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.