Discrete 3D wireless orientation sensors will be affixed to the backs of each hand (commonly of a golfer). Measuring using the device under specified conditions will commonly result in differing 3D orientations of the sensors/hands at various points of a swing, which should be recorded even if a "real-time" analysis is available. The core of the software analysis needs to visualize each of the sensor/hand orientations at various points of a swing, calculating and displaying orientation differences between them.
(Other parameter and/or data types can be used instead of orientations for comparing the hands to each other, but to me 3D orientations seem great and almost readymade for this type of application).
3D orientation data and the ability to view that on a 2D display are great and needed. But whatever 3D perspective is maneuvered to will nevertheless instantaneously be a 2D perspective from which to view a swing sequence (or just a single point of a swing if desired). And the orientation relationship between the hands, even for the same stopped point of a swing, can change (significantly) from one 2D plane to another (in a 3D realm overall). Such relationships (differences) among sensor/hand orientations from various perspectives over the course of a swing are the most basic analysis information needed first.
In essence, 2D information, coinciding with a 2D perspective chosen/seen visually, needs to be extracted or derived from the 3D sensor measurement data. A broad general manifestation might comprise two vectors of varying 3D orientations representing the hands, whose rotation point locations are placed at the center of a display for reference and analysis. From there (and just considering one stopped point of a swing initially), integrating some sort of 3D cube or sphere should allow traveling to various perspectives around the surface/perimeter of the cube/sphere. And from any 3D perspective chosen, viewing/calculating the 2D relationship among the vectors needs to be competently performed.
While some type of computer vision might be directly used for this, I believe (though I could be wrong) the information could also be figured mathematically. That is preferred and assumed to be more accurate in nature, with visual effects utilized more for support than actually determining the solution(s). While well beyond my skill, I am speculating that the formula(s) for such a solution(s) has been around for quite some time already.
After this initial base of functionality is accomplished successfully, more advanced software analysis features will be needed, and discrete hardware development can be considered more seriously. Each of the last two contractors misunderstood aspects of the project, and thus neither could complete even a very rudimental version successfully. I have some code written by them in Python and Processing. Naturally if any of that could be used and improved or corrected that would be preferable over having to start all over yet again. Beyond this potential link, I have no experienced preference regarding the programming language used.
As for current hardware, I have a pair of devices constructed by the last contractor with his Processing program. They are wired for power and a bit inconvenient for getting good test data, but otherwise okay. Based on my own inspection due to unresponsiveness by the last contractor, they each appear to have an MPU-6050 sensor chip and ESP32-WROOM-32D processor. Data is presently transferred wirelessly via Bluetooth to my desktop. Currently I do not know how to access and log data more directly from the sensors for sharing any test data with anyone else.
If alternately better, I have a small selection of single, wireless orientation development sensors from Dialog, TI, and Yost Labs. Additional documentation is available for any interested and qualified parties. Hourly or project quotes can be considered. Thank you very much.
4 freelancers are bidding on average $26/hour for this job
Good day I have more than 15 years development experience and a great team, we can complete your project with clean code and best practices Please check my profile and message me for more details. Thanks.