WriteAIr is a website which allows users to stream their writing.

Related tags

MiscellaneousWriteAIr
Overview

WriteAIr

Inspiration

During this pandemic, several professors have had to teach virtually without access to a blackboard. Digital pens can be costly and writing on paper is difficult to record and stream. Thus, we have come up with a way for professors (and anyone else who wants to write and share their work) to write on AIR! Not only will this help professors who have gone virtual over the pandemic, but it also allows people to share their written work easily, no matter where they are!

What it does

WriteAIr is a website which allows users to stream their writing. It uses HSV masking to detect a pen which the user writes with. Plus, users can select a wide range of options through hand gestures! The notes created can then be saved as images and uploaded on the server.

How we built it

  1. Django was used to create the website.
  2. HSV masking was used to detect the marker of some specific colour.
  3. A machine learning model was trained by us to detect hand gestures.
  4. The machine learning model was trained on landmarks data of MediaPipe Hands calculated for images in our dataset which was saved as a CSV file.

Challenges we ran into

  1. Converting images to PDF.
  2. Figuring out how to create and train the model was quite the task.
  3. Lack of existing dataset according to our needs. We had to create our own dataset of images.
  4. Setting the sensitivity of the HSV masking so that background objects aren't detected.

Accomplishments that we're proud of

  1. We created our own dataset completely on our own!
  2. We actually managed to train a model which had surprisingly good accuracy.
  3. Integrated OpenCV with the gesture recognition model.
  4. Hosted the project on a website using Django.

What we learned

  1. Most of us were completely new to machine learning, so we learnt a lot about how to create datasets, convert them into a proper .csv file (since that's what we trained it on), train the model and save it in a .h5 file.
  2. Building a full-fledged website using Django.
  3. We also learnt how to use the MediaPipe API.
  4. Several Computer Vision concepts like OpenCV.

What's next for WriteAIr

  1. Adding the project as a Google Meet extension or an alternative to Google Meet using sockets.
  2. Increasing the accuracy of the pen detection code.
  3. The code currently works for only right-handed users. An option to provide the service to left-handed users as well.
  4. Integrating the website with the OpenCV part.
Owner
Atharva Patil
Full Stack Developer. Familiar with Kotlin and Android studio. Python | ReactJS | OpenCV . Love to solve problems
Atharva Patil
A gamey, snakey esoteric programming language

Snak Snak is an esolang based on the classic snake game. Installation You will need python3. To use the visualizer, you will need the curses module. T

David Rutter 3 Oct 10, 2022
A data driven app for bicycle hiring in London(UK)

bicycle_hiring_app_deployed A data driven app for bicycle hiring in London(UK). It predicts expected number of bicycle hire in London. It asks users t

Rajarshi Roy Raju 1 Dec 10, 2021
Analysis of ROM image for Norsk Data VDU 301 S

This repository is meant to analyze the ROM images from Norsk Data VDU 301 S as provided at by Torfinn. To combine the two ROM image halves and extrac

Sebastian Rasmussen 1 Oct 21, 2021
The Zig programming language, packaged for PyPI

Zig PyPI distribution This repository contains the script used to repackage the releases of the Zig programming language as Python binary wheels. This

Zig Programming Language 100 Nov 04, 2022
A simplified python interface to COPASI.

BasiCO This project hosts a simplified python interface to COPASI. While all functionality from COPASI is exposed via automatically generated SWIG wra

COPASI 8 Dec 21, 2022
A python script to turn tabs into spaces the right way.

detab A python script to turn tabs into spaces the right way. detab turns all tabs into spaces, not just leading tabs. Not all tabs have the same leng

1 Jan 26, 2022
Open source home automation that puts local control and privacy first

Home Assistant Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiast

Home Assistant 57k Jan 02, 2023
Video Stream is an Advanced Telegram Bot that's allow you to play Video & Music on Telegram Group Video Chat

Video Stream is an Advanced Telegram Bot that's allow you to play Video & Music on Telegram Group Video Chat 📊 Stats 🧪 Get SESSION_NAME from below:

dark phoenix 12 May 08, 2022
Fetch data from an excel file and create HTML file

excel-to-html Problem Statement! - Fetch data from excel file and create html file Excel.xlsx file contain the information.in multiple rows that is ne

Vivek Kashyap 1 Oct 25, 2021
Get a list of content on your Netflix My List that is expiring in the next month or two.

Netflix My List Expiring Movies Annoyed at Netflix for taking away your movies? Now you don't have to be! Installation instructions Install selenium C

24 Aug 06, 2022
Extended functionality for Namebase past their web UI

Namebase Extended Extended functionality for Namebase past their web UI.

RunDavidMC 12 Sep 02, 2022
Py4J enables Python programs to dynamically access arbitrary Java objects

Py4J Py4J enables Python programs running in a Python interpreter to dynamically access Java objects in a Java Virtual Machine. Methods are called as

Barthelemy Dagenais 1k Jan 02, 2023
Telegram bot for Urban Dictionary.

Urban Dictionary Bot @TheUrbanDictBot A star ⭐ from you means a lot to us! Telegram bot for Urban Dictionary. Usage Deploy to Heroku Tap on above butt

Stark Bots 17 Nov 24, 2022
Lenovo Yoga Ideapad Autocharge

Description This program uses the conservation_mode of Lonovo Ideapad / Yoga not

1 Jan 09, 2022
Your one and only Discord Bot that helps you concentrate!

Your one and only Discord Bot thats helps you concentrate! Consider leaving a ⭐ if you found the project helpful. concy-bot A bot which constructively

IEEE VIT Student Chapter 22 Sep 27, 2022
Python script to combine the statistical results of a TOPAS simulation that was split up into multiple batches.

topas-merge-simulations Python script to combine the statistical results of a TOPAS simulation that was split up into multiple batches At the top of t

Sebastian Schäfer 1 Aug 16, 2022
Python program that generates random user from API

RandomUserPy Author kirito sate #modules used requests, json, tkinter, PIL, urllib, io, install requests and PIL modules from pypi pip install Pillow

kiritosate 1 Jan 05, 2022
Cross-platform MachO/ObjC Static binary analysis tool & library. class-dump + otool + lipo + more

ktool Static Mach-O binary metadata analysis tool / information dumper pip3 install k2l Development is currently taking place on the @python3.10 branc

Kritanta 301 Dec 28, 2022
Free Vocabulary Trainer - not only for German, but any language

Bilderraten DOWNLOAD THE EXE FILE HERE! What can you do with it? Vocabulary Trainer for any language Use your own vocabulary list No coding required!

Hans Alemão 4 Jan 02, 2023
The next generation Canto RSS daemon

Canto Daemon This is the RSS backend for Canto clients. Canto-curses is the default client at: http://github.com/themoken/canto-curses Requirements De

Jack Miller 155 Dec 28, 2022