14
Mathematical model of fencer’s hand Dainis Dzenushko Student, SPb State Polytechnical University, Faculty for Physics and Mechanics, Department for Theoretical Mechanics

Mathematical model of fencer’s hand

  • Upload
    step

  • View
    34

  • Download
    0

Embed Size (px)

DESCRIPTION

Mathematical model of fencer’s hand. Dainis Dzenushko Student, SPb State Polytechnical University, Faculty for Physics and Mechanics, Department for Theoretical Mechanics. Task. - PowerPoint PPT Presentation

Citation preview

Page 1: Mathematical model of fencer’s hand

Mathematical model of fencer’s hand

Dainis DzenushkoStudent, SPb State Polytechnical University, Faculty for Physics and Mechanics, Department for Theoretical Mechanics

Page 2: Mathematical model of fencer’s hand

Task

Create mathematical model, that finds the position of a hand and comes to this position from any previous position with visualization on C# language, using given parameters (changes of angles in joints and coordinates of a shoulder)

Page 3: Mathematical model of fencer’s hand

Degrees of freedomThis model has 9 degrees of freedom:

2 — translation movement of a shoulder (front/back; up/down)3 — shoulder joint as a ball joint1 — elbow joint 1 — rotation of wrist round it’s axis2 — wrist (2 perpendicular cylindrical joints)

Page 4: Mathematical model of fencer’s hand

Hand rotation

After that it is needed to rotate other vectors and corresponding basis’ that are farther from shoulder than considered one. It is also done by scalar multiplication with the same rotation tensor. By the same way the rotation of all 3 vectors on needed angles is done. Then we calculate new coordinates of joints.

Rotation of hand parts is realized by the rotation of corresponding vector round the corresponding axis. This is realized by scalar multiplication of rotation tensor and this vector. The rotation tensor which is calculated using following formula:

)sin()cos()(),( EeeeEeeeP

aiPjPkPa ),()~,()~~,(~

Page 5: Mathematical model of fencer’s hand

Realization of rotationFor visualization of rotation we have to know the positions of hand between initial and next positions. So the problem is that the rotation tensors are not additive. Then we don’t rotate hand on additional angles from each new position, instead of this we rotate hand on bigger angles on every step from initial position.

Page 6: Mathematical model of fencer’s hand

Realization in MATLABUsing the MATLAB this algorithm of rotation was realized in order to calculate path of hand movement and check this algorithm. The examples of such paths are shown below.

Page 7: Mathematical model of fencer’s hand

Structure of program interface in C#The program interface is based on tabs (TabControl). And consists of two layers: outer (Graph, Tools, Settings, About) and sub-layer for Settings tab: (Color Settings, Graph Settings) Then we will consider on all this tabs.

Page 8: Mathematical model of fencer’s hand

Graph tabThis tab contains visualization of ongoing position of a hand and has functional: camera rotation and Zoom.In this tab works following keys:

Up/Down – rotation round the horizontal axisLeft/Right – rotation round the vertical axisCtrl + Up/Down/Left/Right – faster rotations+/- (OemPlus/OemMinus) – is Zoom

Page 9: Mathematical model of fencer’s hand

Settings tabThis tab is responsible for setting displaying parameters of hand model. It contains two sub-tabs.The first one (Color Settings) allows to set color and transparency of model.

Second one (Graph Settings) allows to set quality of displayed model. Also it allows to set coefficients of camera rotation and camera zoom.

Page 10: Mathematical model of fencer’s hand

Program realization of 3D-graphicsProgram interface is created by using special library WPF (Windows Presentation Foundation) and built-in XAML redactor in Microsoft Visual Studio.

What is WPF:“The Windows Presentation Foundation is Microsoft’s next generation UI framework to create applications with a rich user experience. It is part of the .NET framework 3.0 and higher.WPF combines application UIs, 2D graphics, 3D graphics, documents and multimedia into one single framework. Its vector based rendering engine uses hardware acceleration of modern graphic cards. This makes the UI faster, scalable and resolution independent.”

Page 11: Mathematical model of fencer’s hand

Viewport3D elementGraphics contents in 3-D WPF application is encapsulated in Viewport3D element, which can be placed on two-dimensional element such as program window. Graphics system identifies Viewport3D as two-dimensional visual element such as many in WPF. Viewport3D function as preview window of three-dimensional scene. More precisely it is projection of 3-D scene on plane (screen).

Page 12: Mathematical model of fencer’s hand

Drawing 3-D objectsDrawing of objects is realized by triangulation, that means that we need to build it of triangles.We will notice that back side of triangles is transparent as default.

Page 13: Mathematical model of fencer’s hand

Using high-speed camera

In order to capture the way fencer fights was used high-speed camera. It was used because using only human eyes it is not able to see in details what is happening, what fencer does. By the way mainly fencer have to implement movements on high speed and he can not do it slower.

Page 14: Mathematical model of fencer’s hand

ResultsThe ongoing results of this project:1) The simple model that moves hand from one point to another is

implemented in MATLAB. 2) MATLAB model was optimized selecting the closest way to new

position3) The program interface containing main functionality is written in C#4) Videos of fencer’s movements prepared using high-speed camera

What is going to be done:5) Rewriting operating part from MATLAB to C# program6) Usage of limitations in joints7) Creating of database of kinds of movement using videos from high-

speed camera