Conf-Count: Conference Monitoring System based on Image Recognition in Rust

Reading Time: 3 minutes

As you all know Rust Programming is a multi-paradigm system programming language and steadily growing in the market. So, to take advantage of this language, we build this project using its solid concepts like safety and safe concurrency.

Let’s dive into the Architecture first.

Overview Architecture

As of now this project contains Web-Services(API) of Conf-Count. The overall goal of this project is to monitor the conference attendees and keep track of all the conferences held in an organization.
This project is based on Image Recognition, where all the registered user’s image is compared with the present user’s image using AWS Rekognition Service. 
If any registered user is unable to attend the conference, so his conference status will remain Absent and an Email is sent to that user along with his Status and Talk Content.

Apart from this, this project has several functionalities like:

  • User Signup
  • Admin/User Login
  • Add/Update/Delete Conference
  • and so on…

User Roles

  • Signup
  • Login
  • Upcoming Conference Registration
  • Profile Updation

Admin Roles

  • Add/Update/Delete Conference
  • Admin can remove user
  • Manage whole Conf-Count

Technologies Used:

Rust Programming

Rust is blazingly fast and memory-efficient: with no run-time or garbage collector, it can power performance-critical services, run on embedded devices, and easily integrate with other languages.

AWS Rekognition

AWS Rekognition is an AWS service that helps compare two images and get a similarity score. In Conf-Count we have used CompareFace API of AWS Rekognition that returns a similarity score to Rust as a response.

S3 Bucket

An Amazon S3 bucket is a public cloud storage resource available in Amazon Web Services (AWS) Simple Storage Service (S3), an object storage offering. In Conf-Count we use S3 Bucket to store the User’s image.

MongoDB

MongoDB is a cross-platform document-oriented database program. Classified as a No-SQL database program, MongoDB uses JSON-like documents with the schema.

Hardware Used:

Raspberry Pi

The Raspberry Pi is a low cost, credit-card sized computer that plugs into a computer monitor or TV, and uses a standard keyboard and mouse. So we have used Raspberry Pi for our project. To work with RPi we first cross-compile our binary according to the RPi’s architecture and then deployed into RPi.

Raspberry Pi Camera

Raspberry Pi camera is used to capture the conference attendee’s image for Image Recognition Process.

Thanks for reading this blog!!!

For more reference and contributing to our open source project Conf-Count, you can visit here.


Knoldus-blog-footer-image

Written by 

Pawan Singh Bisht is a Software Consultant at Knoldus Software LLP, having a strong experience of more than two years in the technology field. He has been well versed in the core implementation of Rust and Java. He loves to contribute to the community which he attained from the community.

Discover more from Knoldus Blogs

Subscribe now to keep reading and get access to the full archive.

Continue reading