Skip to main content

air-piano

Project description

air_calculator

Writing letters with a pen on paper is very different from drawing letters in the air.

Drawing "-" minus operator and "+" operator in the air are extremely difficult so that these operators in the current system are replaced by "W" and "P" respectively.

When drawing letters with fingers in the air, letters that are difficult to recognize or write in the air need to be replaced with letters that can be accurately recognized by artificial intelligence. For example, replace the number "1" with "L" in the air.

How to install necessary libraries

$ pip install pytesseract

For Windows users, you should also install the latest tesseract

https://github.com/UB-Mannheim/tesseract/wiki

And add tesseract.exe of Tesseract-OCR directory PATH in .profile or .bashrc.

How to run fingermath.py

fingermath.py is a program for drawing an expression, for example, 4-5.

fingermath.py is based on mediapipe.

There are six states of five fingers recognized by mediapipe library: 0-finger, 1-finger, 2-finger, 3-finger, 4-finger, and 5-finger respectively.

A pen of index finger tip is used for drawing an expression 
by fingers. 

0-finger can move the pen without drawing. 
1-finger can draw lines in the air. 
2-finger can move the pen without drawing. 
3-finger can delete elements of drawn letters for expression 
correction.
4-finger can transform hand-written letters to the digital text 
for possible calculation.
5-finger can can move the pen without drawing. 

Continuous 4-finger state can terminate and exit this program.

0-finger or 5-finger is equivalent to 2-finger.

The saved picture is tranformed into digital text using the state-of-the-art optical character recognition.

Writing letters with a pen on paper is very different from drawing letters in the air.

Of the 0 to 9 digits, 1 is the least recognizable number.

Drawing "L" in the air represents "1".

"S" or "5" in the air represents "5".

"P" in the air represents "+" plus operator.

"W" or "-" represents "-" minus operator.

"V" in the air represents "/" division operator.

"M" in the air represents "*" multiplication operator.

"&" in the air represents "**" exponential operator.

Drawing two letters "a" and "A" in the air represents the sqrt() function. Therefore, the string "a13A" or "aL3A" represents sqrt(13).

$ python fingermath.py

https://youtu.be/med_jrFTMPA

  sqrt(6)*2=?    
         1-3=?                                 10+2=?  

        4-5-3=?                                2-3/5=?   

        34*5=?                         2**8=?

      2&9V3 --> 2**9/3                          2**9/3      

 128v3=? -> 128/3=?                    a11AV3=? -> sqrt(11)/3 

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aircalc-0.0.1.tar.gz (2.7 kB view details)

Uploaded Source

Built Distributions

aircalc-0.0.1-py3.7.egg (2.4 kB view details)

Uploaded Source

aircalc-0.0.1-py3-none-any.whl (2.6 kB view details)

Uploaded Python 3

File details

Details for the file aircalc-0.0.1.tar.gz.

File metadata

  • Download URL: aircalc-0.0.1.tar.gz
  • Upload date:
  • Size: 2.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10

File hashes

Hashes for aircalc-0.0.1.tar.gz
Algorithm Hash digest
SHA256 4d94df8b5d2459035a5501fd473a72e229ebdc480e75475f40ad8845418d8945
MD5 7f4c4d9a18fe804c19b3052be11c7098
BLAKE2b-256 a97ebe8d39e34ecf3d7103566e0cb47b3f172986b683197ba141f61856f5d13a

See more details on using hashes here.

File details

Details for the file aircalc-0.0.1-py3.7.egg.

File metadata

  • Download URL: aircalc-0.0.1-py3.7.egg
  • Upload date:
  • Size: 2.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10

File hashes

Hashes for aircalc-0.0.1-py3.7.egg
Algorithm Hash digest
SHA256 250873ecb41ec68a4856405eb47c90580ee725fee77eaec0ff79811513c75623
MD5 72427d3ec2363f2d5e68aba6acc10c9d
BLAKE2b-256 ded3ebf9fbbd8b6110d5bf00e2f9fe56cb87fb4db606e4036cd642d56732bcb4

See more details on using hashes here.

File details

Details for the file aircalc-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: aircalc-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 2.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10

File hashes

Hashes for aircalc-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8a5e44045d15b53caa76889dafc2a9754a0ff8067fd38321ae98e5ae182f65d5
MD5 e6e89c1107f36ae7fe6170873573811a
BLAKE2b-256 823d785f706ae261731886f6ac6350e96a354ff8e443ede5de1c9852a3bec707

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page