Skip to content

JakeJMattson/TouchControl

Repository files navigation

Java 11 Kotlin 1.3.20 OpenCV-3.4.2 release license

This project is intended to be a touch screen without the screen. By using only a camera and some code, you can perform various actions just by waving around your hand. Below you can find some example applications of this concept.

Demos

MousePad

<iframe src="https://www.youtube.com/embed/2-ApniOaKHs?rel=0" frameborder="0" allowfullscreen style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>

PianoKey

<iframe src="https://www.youtube.com/embed/-dA1ajjv6EE?rel=0" frameborder="0" allowfullscreen style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>

VolumeSlider

<iframe src="https://www.youtube.com/embed/Fd5ODeewL9c?rel=0" frameborder="0" allowfullscreen style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>

Prerequisites

Languages

Libraries

Getting Started (Software)

Installing Java

Visit the Java Downloads page and select the version of your choice. Run the installer and follow the instructions provided.

Building

This project is built with Maven. To build the pom.xml, please follow the import instructions for your IDE.

Downloading NirCmd

NirCmd is used by the VolumeSlider demo to control system volume on Windows. As there are no released versions of TouchControl with this functionality, NirCmd is optional and only for developers who wish to work with this part of the code. You can download either the 64 bit or the 32 bit version.

Getting Started (Hardware)

Camera

Position a camera (rotated at 180 degrees) above a dark surface. The camera should remain stationary while using the program and the background should remain unchanged. A darker surface will lead to better detection.

Operation

Move your finger (or any object) through the area covered by the camera. The program will detect the location of the object and perform an action depending on the Touchable object being used.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments