All Projects → aws-samples → Amazon Rekognition Virtual Proctor

aws-samples / Amazon Rekognition Virtual Proctor

Licence: other
A solution to assist with virtual proctoring of exams using Amazon Rekognition

Programming Languages

javascript
184084 projects - #8 most used programming language

Labels

Projects that are alternatives of or similar to Amazon Rekognition Virtual Proctor

Grafiti
Tag and remove AWS Resources with Automation
Stars: ✭ 34 (-12.82%)
Mutual labels:  aws
Aws Unifi Controller
Example of a Ubiquiti Unifi Controller in AWS using Network Load Balancer for TLS termination
Stars: ✭ 37 (-5.13%)
Mutual labels:  aws
Swamp
Teh AWS profile manager
Stars: ✭ 38 (-2.56%)
Mutual labels:  aws
Gm Lambda Layer
AWS Lambda layer with GraphicsMagick binaries.
Stars: ✭ 35 (-10.26%)
Mutual labels:  aws
Aws S3 Scala
Scala client for Amazon S3
Stars: ✭ 35 (-10.26%)
Mutual labels:  aws
House
Proof of Concept and Research repository.
Stars: ✭ 37 (-5.13%)
Mutual labels:  aws
Ebs bckup
Stars: ✭ 32 (-17.95%)
Mutual labels:  aws
Nagios Plugins
450+ AWS, Hadoop, Cloud, Kafka, Docker, Elasticsearch, RabbitMQ, Redis, HBase, Solr, Cassandra, ZooKeeper, HDFS, Yarn, Hive, Presto, Drill, Impala, Consul, Spark, Jenkins, Travis CI, Git, MySQL, Linux, DNS, Whois, SSL Certs, Yum Security Updates, Kubernetes, Cloudera etc...
Stars: ✭ 1,000 (+2464.1%)
Mutual labels:  aws
Terraform Aws Redshift
Terraform module which creates Redshift resources on AWS
Stars: ✭ 36 (-7.69%)
Mutual labels:  aws
Karch
A Terraform module to create and maintain Kubernetes clusters on AWS easily, relying entirely on kops
Stars: ✭ 38 (-2.56%)
Mutual labels:  aws
Recruit
직방 개발자 채용
Stars: ✭ 35 (-10.26%)
Mutual labels:  aws
Gocd S3 Artifacts
Set of GoCD plugins to publish and fetch artifacts from Amazon S3
Stars: ✭ 35 (-10.26%)
Mutual labels:  aws
Airflow On Kubernetes
Bare minimal Airflow on Kubernetes (Local, EKS, AKS)
Stars: ✭ 38 (-2.56%)
Mutual labels:  aws
Shorty.sls
Serverless URL shortener written in Python3 using the serverless framework
Stars: ✭ 35 (-10.26%)
Mutual labels:  aws
Amazon Vpc Cni Plugins
VPC CNI plugins for Amazon ECS and EKS.
Stars: ✭ 39 (+0%)
Mutual labels:  aws
Xiringuito
SSH-based "VPN for poors"
Stars: ✭ 969 (+2384.62%)
Mutual labels:  aws
Aws Iot Button
Stars: ✭ 37 (-5.13%)
Mutual labels:  aws
Aws Data Replication Hub
Seamless User Interface for replicating data into AWS.
Stars: ✭ 40 (+2.56%)
Mutual labels:  aws
Lambda Packs
Precompiled packages for AWS Lambda
Stars: ✭ 997 (+2456.41%)
Mutual labels:  aws
Aws Sdk Ios Samples
This repository has samples that demonstrate various aspects of the AWS SDK for iOS, you can get the SDK source on Github https://github.com/aws-amplify/aws-sdk-ios/
Stars: ✭ 990 (+2438.46%)
Mutual labels:  aws

Virtual Proctor using Amazon Rekognition

Proctoring is the act of supervising an exam or course online.

Using web-based applications, virtual proctoring platforms allow test takers to be virtually monitored by a human via the webcam on their computer. To increase the scale of the test taking and improve a human proctor’s ability to monitor students, virtual proctoring services are now implementing AI/ML to support the human proctor.

Virtual Proctor is a solution that leverages Amazon Rekognition to show a scalable way to conduct online testing.

It shows how you can implement rules such as:

  • Detecting objects of interest (such as mobile phone)
  • Detecting the number of people present
  • Recognizing the person who is taking a test
  • Detecting unsafe content (such as explicit adult content or violent content)

You can also use Amazon Rekognition Custom Labels to detect other custom objects of interest.

Index

Architecture

Architecture Diagram

Usage

Prerequisites

To deploy the sample application, you will require an AWS account. If you don’t already have an AWS account, create one at https://aws.amazon.com by following the on-screen instructions. Your access to the AWS account must have IAM permissions to launch AWS CloudFormation templates that create IAM roles.

To use the sample application you will require a modern browser and a webcam.

Deployment

The demo application is deployed as an AWS CloudFormation template.

Note
You are responsible for the cost of the AWS services used while running this sample deployment. There is no additional cost for using this sample. For full details, see the following pricing pages for each AWS service you will be using in this sample. Prices are subject to change.

  1. Deploy the latest CloudFormation template by following the link below for your preferred AWS region:
Region Launch Template
US East (N. Virginia) (us-east-1) Launch the VirtualProctor Stack with CloudFormation
US East (Ohio) (us-east-2) Launch the VirtualProctor Stack with CloudFormation
US West (Oregon) (us-west-2) Launch the VirtualProctor Stack with CloudFormation
EU (Ireland) (eu-west-1) Launch the VirtualProctor Stack with CloudFormation
Asia Pacific (Sydney) (ap-southeast-2) Launch the VirtualProctor Stack with CloudFormation
Asia Pacific (Singapore) (ap-southeast-1) Launch the VirtualProctor Stack with CloudFormation
Asia Pacific (Mumbai) (ap-south-1) Launch the VirtualProctor Stack with CloudFormation
  1. If prompted, login using your AWS account credentials.

  2. You should see a screen titled "Create Stack" at the "Specify template" step. The fields specifying the CloudFormation template are pre-populated. Click the Next button at the bottom of the page.

  3. On the "Specify stack details" screen you may customize the following parameters of the CloudFormation stack:

    • Stack Name: (Default: VirtualProctor) This is the name that is used to refer to this stack in CloudFormation once deployed.
    • AdminEmail: The email address you wish to setup as the initial user of this Amazon Rekognition Virtual Proctor deployment.
    • MinConfidence: (Default: 85) Specifies the minimum confidence level for the labels to return.
    • ObjectsOfInterestLabels (Default "Mobile Phone,Cell Phone"): Comma-delimited list of labels used to detect Objects of interest.
    • CreateCloudFrontDistribution (Default: true) Creates a CloudFront distribution for accessing the web interface of the solution.
    • ResourcePrefix: (Default: VirtualProctor) Resource prefix to apply to resource names when creating statically named resources.

    When completed, click Next

  4. Configure stack options if desired, then click Next.

  5. On the review you screen, you must check the boxes for:

    • "I acknowledge that AWS CloudFormation might create IAM resources"
    • "I acknowledge that AWS CloudFormation might require the following capability: CAPABILITY_AUTO_EXPAND"

    These are required to allow CloudFormation to create a Role to allow access to resources needed by the stack and name the resources in a dynamic way.

  6. Click Create Change Set

  7. On the Change Set screen, click Execute to launch your stack.

    • You may need to wait for the Execution status of the change set to become "AVAILABLE" before the "Execute" button becomes available.
  8. Wait for the CloudFormation stack to launch. Completion is indicated when the "Stack status" is "CREATE_COMPLETE".

    • You can monitor the stack creation progress in the "Events" tab.
  9. Note the url displayed in the Outputs tab for the stack. This is used to access the application.

Accessing the Application

The application is accessed using a web browser. The address is the url output from the CloudFormation stack created during the Deployment steps.

When accessing the application for the first time, you need to use the Admin e-mail provided during Stack Creation as the username. A temporary password will be sent to the same e-mail address. After authentication, it will be necessary to create a new password and click "Change".

To manage users, you can use the Cognito Users Pool console.

Remove the application

To remove the application open the AWS CloudFormation Console, click the Virtual Proctor project, right-click and select "Delete Stack". Your stack will take some time to be deleted. You can track its progress in the "Events" tab. When it is done, the status will change from "DELETE_IN_PROGRESS" to "DELETE_COMPLETE". It will then disappear from the list.

Making changes to the code and customization

The contributing guidelines contains some instructions about how to run the front-end locally and make changes to the back-end stack.

Contributing

Contributions are more than welcome. Please read the code of conduct and the contributing guidelines.

License Summary

This library is licensed under the MIT-0 License. See the LICENSE file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].