TouchControl
Control at your fingertips.
Install / Use
/learn @JakeJMattson/TouchControlREADME
<p align="center">
<a href="https://kotlinlang.org/">
<img src="https://img.shields.io/badge/Kotlin-1.5.20-blue.svg" alt="Kotlin">
</a>
<a href="https://opencv.org/releases/">
<img src="https://img.shields.io/badge/OpenCV-4.0.1-blue.svg" alt="OpenCV">
</a>
<a href="https://GitHub.com/JakeJMattson/TouchControl/releases/">
<img src="https://img.shields.io/github/release/JakeJMattson/TouchControl.svg" alt="release">
</a>
<a href="LICENSE.md">
<img src="https://img.shields.io/github/license/JakeJMattson/TouchControl.svg" alt="license">
</a>
</p>
<p align="justify">
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.
</p>
Demos
MousePad
<div style="position:relative;padding-top:56.25%;"> <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> </div>PianoKey
<div style="position:relative;padding-top:56.25%;"> <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> </div>VolumeSlider
<div style="position:relative;padding-top:56.25%;"> <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> </div>Prerequisites
Languages
Libraries/Tools
Getting Started (Software)
Building
This project uses the Gradle build tool.
Downloading NirCmd
<p align="justify"> 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 <a href="https://www.nirsoft.net/utils/nircmd-x64.zip">64 bit</a> or the <a href="https://www.nirsoft.net/utils/nircmd.zip">32 bit</a> version. </p>Getting Started (Hardware)
Camera
<p align="justify"> 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. </p>Operation
<p align="justify"> 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. </p>License
This project is licensed under the MIT License - see the LICENSE.md file for details
Acknowledgments
Related Skills
node-connect
351.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
351.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
351.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
