Skip to content

Latest commit

 

History

History
87 lines (66 loc) · 4.99 KB

README.md

File metadata and controls

87 lines (66 loc) · 4.99 KB

Motion Controller using Color Segmentation

The aim of this project is to design and implement a motion controller and keep its cost minimal. To achieve that, color based segmentation is used for tracking the controller and the controller is made of a pen and a plastic ball.

[ Project Prototype Link ]

Table of Contents

The Controller:

This controller is simply made by sticking a pen into a hollow plastic ball.
Voilà! We are done with hardware part!

Color Segmentation:

Basic implementation of color segmentation, and later taking mean of segmented area to get the pin point position of controller on XY plane.

Painting Test:

Aim Approximation:

This technique enables players to have laser pointer style input without any extra hardware requirement, but it requires to fix the distance between display and the player.


Results

Z-Axis Estimation:

Area of segmented region is used to estimate position on Z-Axis. Very unstable but works.

In below examples, a 3D ball is simulated whose coordinate in XYZ space is estimated based on the controller input. XY position is calculated simply by taking mean of segmented region. Position on Z-axis is estimated based pixels of segmented region, that is higher number of pixels of segmented region suggests the controller is closer to the display and lower number of pixels in segmented region suggests the controller is far from the display.

Notes:

p5.js graphics library is used for graphics simulation purposes in this project.