Difference between revisions of "High Speed Video Analysis"

From Fellrnr.com, Running tips
Jump to: navigation, search
User:Fellrnr (User talk:Fellrnr | contribs)
User:Fellrnr (User talk:Fellrnr | contribs)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
High Speed Video is a great way of analyzing your [[Running Form]]. While high end equipment is extremely expensive, there are a number of options for relatively inexpensive cameras with this ability.  
+
[[File:Kinovea1.jpg|right|thumb|300px|An example of the analysis from Kinovea. You can see a number of markers being tracked. The blue elbow marker has the circle of movement shown, and the knee and shoulder have acceleration displayed.]]
 
+
High Speed Video is a great way of analyzing your [[Running Form]]. While high end equipment is extremely expensive, the latest smartphones are quite capable and the software is freely available. I'll focus on using the Kinovea software, though I'll look at some of the mobile apps in the near future. I believe you can use Kinovea to evaluate [[Foot Strike]] (initial and maximum force), [[Vertical Oscillation]], [[Overstriding]], [[Arm Position| Arm Swing]], Forward lean, and Impact. I'll add details of how to do this in the near future.
=Cameras with High Speed Video=
+
=Equipment=
{| class="wikitable"
+
==Camera==
! Camera
+
You'll need a camera capable of recording high-speed video at a reasonable resolution. In the past, I've used a GoPro, but their fisheye distortion is a less than ideal. The iPhone 6 & 7, and the Samsung Galaxy S7 will all record HD (1280x720) at 240 Frames Per Second (FPS), which is eight times as fast as typical video. I found that this resolution and frame rate is perfectly adequate for analyzing a runner. Using a lower frame rate and a high resolution did not produce as good results. I found that using the zoom lens on my iPhone 7+ from further away produced better results than the wide-angle lens, as there is less perspective distortion. You'll also need a tripod and an adapter for your phone. I'm lucky enough to have a professional grade, heavy-duty tripod, but something far simpler should suffice. I purchased a cheap tripod adapter and Bluetooth remote control at the same time. (<jfs id="B00PMDSEXK" noreferb="true" n="Tripod adapter and remote control"/>)
! Resolution
+
==Treadmill==
! Pixel Count
+
It should be perfectly possible to video a runner outside, but you'll only get a small number of strides, and it can be tricky to analyze the motion as effectively as you can when recording on a treadmill. The main downside of a treadmill is that most runners have a slightly different running form compared with running outside. Ideally, you want a treadmill that doesn't have a side rail that gets in the way of the camera's view of the runner. This is mostly an issue with measuring movement of the hip from the side, so it's not a huge deal.
! Resolution
+
==Markers==
|-
+
The Kinovea software tracks motion using visual markers, and I've found these <jfs id=" B010L610EC " noreferb="true" n="50 Colored Ping Pong Balls," nonl="t" /> worked pretty well. I simply use duct tape looped around to stick them to my clothing. You can read more about the various types of markers I've tested further down this page, and there are other approaches that might work for your situation. I put markers on my forefoot, heel, ankle, knee, hip, shoulder, wrist, and head. Which locations you choose to track will depend on what you're trying to measure.
| rowspan="3"|
+
==Clothing==
[http://www.amazon.com/dp/B004H3X1F2 Casio EX-ZR100] ($360)
+
It's important to wear clothing that is skintight and plain. Loose clothing will move independent of your body and give incorrect tracking. If the clothing is patterned, it's likely to confuse Kinovea. I wear black tights and a white long-sleeved compression top. Wearing black socks to match the black tights helps avoid create a colored area that can confuse the tracking. Initially I chose predominantly black shoes and covered them with black duct tape for use with white markers. After some experimentation, I found that as long as the marker is a strongly contrasting color to the shoe, and the shoe doesn't have any of the marker color on it, there is no problem.
Casio EX-ZR10
+
==Room==
| 432 x 320
+
The room you use to take the measurements is surprisingly important. It's critical you have lots of light, so that the cameras shutter speed is fast enough to freeze the motion. You also need enough distance between the treadmill and where you set up the camera that you're not getting perspective distortion. A plain background behind the treadmill is best, though you can get the software to work against a visually noisy background. The room should also have a fairly solid floor, so that the running doesn't balance the camera. Adding something of a known size into the frame at the same distance as the runner is needed if you want to calibrate measurements.
| 138.2K
+
=Recording =
| 240
+
It's worth spending a little time to get the camera positioned correctly. You want the runner to fill most of the frame so that you're not wasting resolution. If you want to evaluate the runner with the treadmill at an incline, don't forget to allow for this when positioning the camera. You want the camera positioned perpendicular to the runner, and as level as possible. Ensure the camera has the near edge of the treadmill in view so that it can see each foot strike. I used a Bluetooth remote control to record my running, and I'd recommend using the remote control even if you have a friend helping you. You don't want to touch the phone when starting and stopping recording as any camera shake will cause problems. I'd recommend recording several relatively short clips (~30 seconds), as high-speed video takes up a lot of memory. The more powerful your PC, the longer the segment you'll be able to process.
|-
+
=Evaluation=
| 224 x 160
+
Kinovea is fairly easy to use, and there's a good online help section. That said, there's a few caveats that you should be aware of, so let me walk you through the process.
| 35.8K
+
* If you recorded your video in portrait mode, you'll need to rotate it before importing into Kinovea. I used "Rotate & Flip" on the iPhone prior to transferring it, which worked okay. Hopefully the next version of the Kinovea will understand rotated video, as this is a pain.
| 480
+
* The next step is to transfer the video to your PC. I used Dropbox, but there are many other solutions.
|-
+
* I'd recommend using the experimental version of Kinovea 0.8.25, as it has some nice additional functionality, and appears to be completely stable. Download from [http://www.kinovea.org/]
| 224 x 64
+
* The first time you start up Kinovea, I'd recommend changing some of the preferences. (Options menu, then select preferences.)  
| 14.3K
+
** Click on drawings, then the tracking tab. I find setting the object window to 30x30 pixels and the search window to 90x90 pixels is a good starting point. The default uses a percentage of the overall video window and is too big, causing tracking problems.
| 1000
+
** If you have a powerful PC, click playback, then the memory tab. Increase the working zone to 30 seconds and memory to 1024 Mb.
|-
+
* It's fairly obvious how to open your file.
| rowspan="4"|
+
* The first thing to do is to adjust playback speed so that you're playing the video in slow motion. There is a slider bar just above and right of the playback buttons, so slide this to the left to slow things down.
Casio EX-ZR1000
+
* You normally set up a "working window" as a subset of the video clip. For performance, only a small subset of the video can be loaded into memory for analysis. Play video, or click on the main timeline to choose your starting point, then click the "[" button to mark the start. Likewise, at the end of your chosen section use the "]" button.
Casio EX-ZR700
+
* If you want to measure distances, you will need to add a line and calibrate it. Simply click on the line tool just below the video window and draw a line over your known measurement. Then right click and select "calibrate", setting the correct distance. The measure should be adjusted for the perspective difference if the known distance is offset from the thing you are measuring.
Casio EX-ZR400
+
* To track movement, moved to the beginning of your working window. You'll want to right click on a marker and select "track path". It's easier to click the middle of your marker if you're zoomed in, which you do using control and the mouse wheel.  
[http://www.amazon.com/Casio-Exilim-Ex-zr300-Digital-Ex-zr300gd/dp/B0085ME7HC Casio EX-ZR300] ($369)
+
* Once you'd set your track point you'll see two concentric rectangles and a small cross. The cross marks of the center of the object being tracked, and the inner rectangle should surround your marker, with a little bit of the background included. The larger rectangle is the search window. For each frame, the software looks for the image in the small rectangle within the area defined by the larger rectangle. Getting these areas right is critical to successful tracking. If you right-click near the cross and select "configuration…" You'll get a dialogue that will allow you to tweak the size of the two rectangles. <br/>[[File:KinoveaConfigure.jpg|none|thumb|400px|]]
[http://www.amazon.com/Casio-Exilim-Ex-zr200-Digital-Ex-zr200we/dp/B006596OUA Casio EX-ZR200] ($320)
+
* If you click play, or frame advance, you'll see the line made by the marker recorded on the playback window. If the line doesn't track your marker, but jumps around, it's a sign that the software is finding a better match for your object window within the search window. Tweaking these can often, but not always resolve the problem. The first time you play after asking Kinovea to track an object it will do the analysis, thereafter it will replay the track it recorded. You can see this analyzed section of the video as a pink bar in the time window.  
Casio EX-ZR20
+
* Within the configuration window, you can also set the software to display a metric such as acceleration, speed, etc. You can use this to determine the frame with the highest acceleration, or the slowest speed, or whatever else it is you're interested in. For instance, tracking vertical acceleration of a torso marker and looking for the frame with the maximum value would tell you when the greatest landing forces are likely to be.
Casio EX-ZR15
+
* There is another option on the configuration dialog called "display rotation circle." This will show the circle around which a market is moving.
| 640x480
+
* You can measure angles by clicking the angle icon and then clicking on the video window. You then move the three points so they line up with the joint you're trying to measure, and it will display the angle. With the experimental version, you can right click on one of the points and select "track path" and the software will track the three markers, showing the changing angle as things progress. The problem I found with this functionality is that you can't tweak the object and search windows for each point, so it easily gets confused unless you have a really clear marker.
| 307.2K
+
=Appendix – Testing Markers=
| 120
+
The Kinovea software tracks motion using visual markers. These markers should be round, as the software doesn't understand a rotating marker. So, if you put a red square on your ankle, as that square turns with your leg movement, the software will lose track. You also want the marker to be on a plain background that has good contrast with the marker. I tested a number of approaches to markers, and I found that colored ping-pong balls work best.
|-
+
==Colored Ping-Pong Balls==
| 512x384
+
I started off using standard ping-pong balls, which work well against a dark background, but I needed something that would work with other colors of clothing and shoes. I tried painting standard white ping-pong balls, and then discovered that you could buy ping-pong balls in assorted colors quite cheaply. I found these <jfs id=" B010L610EC " noreferb="true" n="50 Colored Ping Pong Balls, " nonl="t"/> worked pretty well. There is a wide enough variety of colors to work on different backgrounds. I attached the ping-pong balls to my clothing using a loop of duct tape which worked fine in most cases. Ordinary double-sided sticky tape is quite strong enough, but I've not experimented with any of the extra sticky varieties. Touching the ping-pong balls to running shoes is a little trickier. The duct tape loop works okay, but they're far more likely to fall off a shoe than clothing. I did permanently attach a pair of ping-pong balls to some older shoes which works really well if that's an option. I covered the side of the shoe in black duct tape, then glued the ping-pong ball to it. If you use this approach, I'd recommend dropping the duct tape with sandpaper first, partly to reduce any reflections, and partly to give it a better key for the glue. I also found cutting a small X into the ping-pong ball where it's glued on helps strengthen the bond. I found that these colored ping-pong balls were the easiest to use, and produced the most useful tracks of any of the markers I've tried.
| 196.6K
+
{| class="wikitable" style="margin-left: auto; margin-right: auto; border: none;"
| 240
+
|- valign="top"
|-
+
|[[File:Big Balls.jpg|none|thumb|200px|This is a close up of the ping-pong balls with the loop of duct tape attached.]]
| 224x160
+
|[[File:Bigballs Shoes.jpg|none|thumb|200px|Here's a close up of the ping-pong ball on my shoes. You can see that the balls are stuck to duct tape that goes over the reflective patterns on the shoes.]]
| 35.8K
+
|- valign="top"
| 480
+
|[[File:Big Balls 2-SS.jpg|none|thumb|200px|This is how the balls look overall. You can see that the shoulder ping-pong ball still looks round even though my shoulder is rotated away, if this was a flat bit of circular sticky tape, the software would struggle as it would've become partly out of sight.]]
|-
+
|[[File:Big Balls 2.jpg|none|thumb|200px|This is the result of Kinovea tracking a number of strides. This is too many tracks over too many strides to be useful for analysis, it's only done to show how successful the marker is at being tracked.]]
| 224x64
+
|}
| 14.3K
+
==Colored Tape Markers==
| 1000
+
The advantage of using sticky tape is that you're more likely to have some hanging around that you can improvise with. I simply cut some circles out of blue decorators masking tape, and this worked reasonably well. I think there were some issues with my circles being rather roughly cut, and the blue color was not quite enough contrast against my black tights. I'm going to retest with some circular stickers of brighter colors.
|-
+
{| class="wikitable" style="margin-left: auto; margin-right: auto; border: none;"
| rowspan="2"|
+
|- valign="top"
[http://www.amazon.com/Nikon-Digital-Camera-System-10-30mm/dp/B005OGQXJW Nikon J1] ($400)
+
|[[File:Kinovea Tape-SS.jpg|none|thumb|200px|Here's the tape markers in use. You can see that the markers on the shoulder and knee no longer look round due to the slight rotation of the joint, something that doesn't happen with the spherical ping-pong balls.]]
| 640 x 240
+
|[[File:Kinovea Tape.jpg|none|thumb|200px|Like the image of the ping-pong balls above, this is the tracks from many strides. You can see the upper body markers were tracked fairly well, but some of the leg markers failed, and the tracks wander off on their own.]]
| 153.6K
+
|}
| 400 (5 second max)
+
==LED Lights==
|-
+
Juanma K suggested I try using LEDs as markers. He'd successfully used string of LEDs with the unwanted lights taped over. I found an alternative style of LED that are individual lights - <jfs id="B01JYDGC4Q" noreferb="true" n="30 LED Party Lights," nonl="t"/>. These were quite bright and are easy to tape on. The main downside to these LEDs as markers is it you need fairly low light for them to stand out, which can make it tricky to see the overall position of the rest of your body. It can also be a little tricky running in very low light on a treadmill. The upside is that you don't have to worry about your clothing or background colors, especially if you use them in very low light.
| 320 x 120
+
{| class="wikitable" style="margin-left: auto; margin-right: auto; border: none;"
| 38.4K
+
|- valign="top"
| 1200 (5 second max)
+
|[[File:LED Lights (2).jpg|none|thumb|200px|Here's the LED lights taped to a running shoe, one illuminated and one not.]]
|-
+
|[[File:LED Lights (3).jpg|none|thumb|200px|This is a close up of one of the little LED lights. It shown here turned off so that you can see it more clearly. Each LED has 3 tiny coin style batteries to power it. You twisted the end to turn the light on and off.]]
| rowspan="3"|
+
|[[File:LED Lights (1).jpg|none|thumb|200px|This is a close up of the light illuminated. It's quite bright, but does tend to direct most of the light in the direction of the tube. This means that when it's taped to you the light is not pointing at the camera.]]
[http://www.amazon.com/GoPro-CHDHX-301-HERO3-Black-Edition/dp/B009TCD8V8 GoPro Hero3 Black Edition] ($400)  
+
|- valign="top"
| 1280x960
+
|[[File:Kinovea Lights Dark2.jpg|none|thumb|200px|In near darkness these lights work amazingly well for tracking. It's trivial to set up the object and search Windows, and there are no concerns with clothing color, or background patterns.]]
| 1228.8K
+
|[[File:Kinovea Lights Dim.jpg|none|thumb|200px|You might be able to get these LED markers to work in dim conditions, but I found it rather tricky. In brighter light than this it's impossible to track the LEDs.]]
| 100
 
|-
 
| 1280x720
 
| 921.6K
 
| 120
 
|-
 
| 848x480
 
| 407K
 
| 240
 
|-
 
| [http://www.amazon.com/GoPro-CHDHN-301-HERO3-Silver-Edition/dp/B009PK9S90 GoPro Hero3 Silver Edition] ($300)
 
| 848x480
 
| 407K
 
| 120
 
 
|}
 
|}
 
+
==Miniature Ping-Pong Balls==
=Camera Recommendations=
+
I thought that a smaller sized ping-pong ball would work better than its launch her cousin. My expectation was the smallest size would be a little more precise, and the lighter weight would be a little more stable. I purchased some <jfs id="B011RAAJRU" noreferb="true" n="Mini Ping Pong Balls," nonl="t"/> that are 0.75"/19mm rather than the normal Ping Pong size of 1.5"/40mm. in practice, I found it rather harder to get Kinovea to track these small balls. I had to tweak the object and search windows to be quite a bit smaller, and even then it lost track of the balls on my lower legs. The upper body markers which I'd painted orange worked okay.
There are pros and cons to the various cameras.
+
{| class="wikitable" style="margin-left: auto; margin-right: auto; border: none;"
* I've used the Casio cameras a number of times, and they are easy to use and work well. The resolution and quality of the higher frame rates it too poor to be of much use, so don't expect to be able to use the 1000 fps mode.  
+
|- valign="top"
* You can sometimes get [http://go.fellrnr.com/?id=35454X937677&xs=1&url=http://www.ebay.com/sch/Digital-Cameras-/31388/i.html%3F_from%3DR40%26_nkw%3Dcasio%2Bexilim%2Bhigh%2Bspeed%26_sop%3D1 used High Speed EXILIM cameras on ebay] for a reasonable cost.
+
|[[File:Miniballs.jpg|none|thumb|200px|The Mini ping-pong balls with a full-sized ping-pong ball for comparison. You can see the small loops of duct tape I used the stick them in place.]]
* The Nikon J1 is crippled by its 5 second maximum record time.
+
|[[File:MIniballs Shoes.jpg|none|thumb|200px| I glued a couple of mini ping-pong balls to some black duct tape hide stuck to my shoes.]]
* The GoPro a good frame rate and a nice resolution, as well as a WiFi remote control
+
|[[File:Painted Miniballs.jpg|none|thumb|200px|Here's the painting of the ping-pong balls. Spray painting ping-pong balls can be quite exciting, as they so light the spray from the can sends them spinning out of control. I'm sure that this is an excellent technique for applying paint to rectum objects, and might be an awesome experimental arts technique.]]
* There is no LCD screen for replay of the video on the GoPro, so you need to by the [http://www.amazon.com/GoPro-Touch-BacPac-HERO-Cameras/dp/B009PK9SB8 LCD Screen] for $80.
 
 
 
=Evaluating the video=
 
The simplest approach is to step through the video frame by frame, which is possible with many software video players. For a more detailed analysis you can extract each frame into a separate photo file using the free open source software [http://www.ffmpeg.org/ FFMpeg]. You can use the following command to extract separate images, but you probably want to extract a short relevant clip before you run this command or you will end up with too many image files to handle.  
 
ffmpeg -i input.avi -f image2 image-%4d.jpeg
 
Where:
 
* Input.avi is the name of your input video file
 
* image-%4d.jpeg is the name of the output files, with %4d replaced by the frame number
 
 
 
=Sample Output=
 
Below are four consecutive frames from a recording at 120 fps to give a sense of the resolution and timing of the available video from a Casio camera. These pictures look identical on first glance, but there is slight movement visible if you rapidly swap between the images.  
 
{| class="wikitable"
 
 
|- valign="top"
 
|- valign="top"
|[[File:HSVA-Sample-0413.jpg|none|thumb|x300px]]
+
|[[File:Kinovea Miniballs1-SS.jpg|none|thumb|200px|Here you can see the mini ping-pong balls in place.]]
|[[File:HSVA-Sample-0414.jpg|none|thumb|x300px]]
+
|[[File:Kinovea Miniballs1.jpg|none|thumb|200px|You can see the tracks on the lower legs are getting lost. (The lower legs are harder to track at least partly because they're faster moving.)]]
|[[File:HSVA-Sample-0415.jpg|none|thumb|x300px]]
 
|[[File:HSVA-Sample-0416.jpg|none|thumb|x300px]]
 
|}
 
 
 
=Automated Analysis Software=
 
I am hoping to write some software that will perform some automated analysis. Here are my current thoughts on the algorithm that could be used.
 
* Capture:
 
** Shoot so that the runner is shown from the waist down.
 
** Use good light to ensure a fast shutter speed.
 
** The runner should be against a relatively plain background, on flat, level ground.
 
** Put markers on the runner over the hip, knee, ankle, heel and forefoot.
 
* Processing:
 
** Scan the video, extracting each frame.
 
*** This may be the trickiest part, as working with video in code is rather nasty.
 
** Scan each frame to detect the five markers and reduce them to the x/y coordinates.
 
** For each set of five markers, identify the body positions:
 
*** The hip will be the highest.
 
*** The knee will be next highest.
 
*** The forefoot will be furthest away of the remaining three.
 
*** The heel and ankle can be found based on the angle between then and the forefoot.
 
** Find the frames that represent the first contact. This will be the first frame where either the forefoot or heel ceases to move.
 
** Find the frames that represent the last contact. This will be the first frame that follows first contact where both the forefoot and heel are in motion.
 
** For the first contact frame:
 
*** Measure the angle of the heel/forefoot line to estimate strike angle and therefore strike index. This can be categorized into FFS, MFS, RFS.
 
*** Find the horizontal distance from the middle of the foot to the hip to check for [[Overstriding|overstriding]].
 
*** Look at the angle between the hip/knee and the knee/ankle to determine how straight the leg is. A straighter leg may indicate a higher impact force.
 
** Evaluate the frames between first and last contact:
 
*** Determine if the heel touches down at any point. This can further categorize FFS.
 
*** Look at the change in knee angle to see how the landing force is absorbed.  
 
** Evaluate the frames between two first contact points:
 
*** Measure [[Cadence]].
 
*** Measure the contact time, the float time, and the ratio between the two.
 
*** Try to determine paw back from the maximum horizontal distance from the midfoot to the hip and the horizontal distance at contact.
 
*** Try to determine the probable horizontal speed of the foot at contact.
 
*** Try to evaluate the peak deceleration of the hip on landing to determine impact forces.
 
** Output metrics and possibly key images with overlays of the angles and lines.
 

Latest revision as of 06:31, 26 January 2020

An example of the analysis from Kinovea. You can see a number of markers being tracked. The blue elbow marker has the circle of movement shown, and the knee and shoulder have acceleration displayed.

High Speed Video is a great way of analyzing your Running Form. While high end equipment is extremely expensive, the latest smartphones are quite capable and the software is freely available. I'll focus on using the Kinovea software, though I'll look at some of the mobile apps in the near future. I believe you can use Kinovea to evaluate Foot Strike (initial and maximum force), Vertical Oscillation, Overstriding, Arm Swing, Forward lean, and Impact. I'll add details of how to do this in the near future.

1 Equipment

1.1 Camera

You'll need a camera capable of recording high-speed video at a reasonable resolution. In the past, I've used a GoPro, but their fisheye distortion is a less than ideal. The iPhone 6 & 7, and the Samsung Galaxy S7 will all record HD (1280x720) at 240 Frames Per Second (FPS), which is eight times as fast as typical video. I found that this resolution and frame rate is perfectly adequate for analyzing a runner. Using a lower frame rate and a high resolution did not produce as good results. I found that using the zoom lens on my iPhone 7+ from further away produced better results than the wide-angle lens, as there is less perspective distortion. You'll also need a tripod and an adapter for your phone. I'm lucky enough to have a professional grade, heavy-duty tripod, but something far simpler should suffice. I purchased a cheap tripod adapter and Bluetooth remote control at the same time. (Error: Could not parse data from Amazon!)

1.2 Treadmill

It should be perfectly possible to video a runner outside, but you'll only get a small number of strides, and it can be tricky to analyze the motion as effectively as you can when recording on a treadmill. The main downside of a treadmill is that most runners have a slightly different running form compared with running outside. Ideally, you want a treadmill that doesn't have a side rail that gets in the way of the camera's view of the runner. This is mostly an issue with measuring movement of the hip from the side, so it's not a huge deal.

1.3 Markers

The Kinovea software tracks motion using visual markers, and I've found these Error: Could not parse data from Amazon! worked pretty well. I simply use duct tape looped around to stick them to my clothing. You can read more about the various types of markers I've tested further down this page, and there are other approaches that might work for your situation. I put markers on my forefoot, heel, ankle, knee, hip, shoulder, wrist, and head. Which locations you choose to track will depend on what you're trying to measure.

1.4 Clothing

It's important to wear clothing that is skintight and plain. Loose clothing will move independent of your body and give incorrect tracking. If the clothing is patterned, it's likely to confuse Kinovea. I wear black tights and a white long-sleeved compression top. Wearing black socks to match the black tights helps avoid create a colored area that can confuse the tracking. Initially I chose predominantly black shoes and covered them with black duct tape for use with white markers. After some experimentation, I found that as long as the marker is a strongly contrasting color to the shoe, and the shoe doesn't have any of the marker color on it, there is no problem.

1.5 Room

The room you use to take the measurements is surprisingly important. It's critical you have lots of light, so that the cameras shutter speed is fast enough to freeze the motion. You also need enough distance between the treadmill and where you set up the camera that you're not getting perspective distortion. A plain background behind the treadmill is best, though you can get the software to work against a visually noisy background. The room should also have a fairly solid floor, so that the running doesn't balance the camera. Adding something of a known size into the frame at the same distance as the runner is needed if you want to calibrate measurements.

2 Recording

It's worth spending a little time to get the camera positioned correctly. You want the runner to fill most of the frame so that you're not wasting resolution. If you want to evaluate the runner with the treadmill at an incline, don't forget to allow for this when positioning the camera. You want the camera positioned perpendicular to the runner, and as level as possible. Ensure the camera has the near edge of the treadmill in view so that it can see each foot strike. I used a Bluetooth remote control to record my running, and I'd recommend using the remote control even if you have a friend helping you. You don't want to touch the phone when starting and stopping recording as any camera shake will cause problems. I'd recommend recording several relatively short clips (~30 seconds), as high-speed video takes up a lot of memory. The more powerful your PC, the longer the segment you'll be able to process.

3 Evaluation

Kinovea is fairly easy to use, and there's a good online help section. That said, there's a few caveats that you should be aware of, so let me walk you through the process.

  • If you recorded your video in portrait mode, you'll need to rotate it before importing into Kinovea. I used "Rotate & Flip" on the iPhone prior to transferring it, which worked okay. Hopefully the next version of the Kinovea will understand rotated video, as this is a pain.
  • The next step is to transfer the video to your PC. I used Dropbox, but there are many other solutions.
  • I'd recommend using the experimental version of Kinovea 0.8.25, as it has some nice additional functionality, and appears to be completely stable. Download from [1]
  • The first time you start up Kinovea, I'd recommend changing some of the preferences. (Options menu, then select preferences.)
    • Click on drawings, then the tracking tab. I find setting the object window to 30x30 pixels and the search window to 90x90 pixels is a good starting point. The default uses a percentage of the overall video window and is too big, causing tracking problems.
    • If you have a powerful PC, click playback, then the memory tab. Increase the working zone to 30 seconds and memory to 1024 Mb.
  • It's fairly obvious how to open your file.
  • The first thing to do is to adjust playback speed so that you're playing the video in slow motion. There is a slider bar just above and right of the playback buttons, so slide this to the left to slow things down.
  • You normally set up a "working window" as a subset of the video clip. For performance, only a small subset of the video can be loaded into memory for analysis. Play video, or click on the main timeline to choose your starting point, then click the "[" button to mark the start. Likewise, at the end of your chosen section use the "]" button.
  • If you want to measure distances, you will need to add a line and calibrate it. Simply click on the line tool just below the video window and draw a line over your known measurement. Then right click and select "calibrate", setting the correct distance. The measure should be adjusted for the perspective difference if the known distance is offset from the thing you are measuring.
  • To track movement, moved to the beginning of your working window. You'll want to right click on a marker and select "track path". It's easier to click the middle of your marker if you're zoomed in, which you do using control and the mouse wheel.
  • Once you'd set your track point you'll see two concentric rectangles and a small cross. The cross marks of the center of the object being tracked, and the inner rectangle should surround your marker, with a little bit of the background included. The larger rectangle is the search window. For each frame, the software looks for the image in the small rectangle within the area defined by the larger rectangle. Getting these areas right is critical to successful tracking. If you right-click near the cross and select "configuration…" You'll get a dialogue that will allow you to tweak the size of the two rectangles.
    KinoveaConfigure.jpg
  • If you click play, or frame advance, you'll see the line made by the marker recorded on the playback window. If the line doesn't track your marker, but jumps around, it's a sign that the software is finding a better match for your object window within the search window. Tweaking these can often, but not always resolve the problem. The first time you play after asking Kinovea to track an object it will do the analysis, thereafter it will replay the track it recorded. You can see this analyzed section of the video as a pink bar in the time window.
  • Within the configuration window, you can also set the software to display a metric such as acceleration, speed, etc. You can use this to determine the frame with the highest acceleration, or the slowest speed, or whatever else it is you're interested in. For instance, tracking vertical acceleration of a torso marker and looking for the frame with the maximum value would tell you when the greatest landing forces are likely to be.
  • There is another option on the configuration dialog called "display rotation circle." This will show the circle around which a market is moving.
  • You can measure angles by clicking the angle icon and then clicking on the video window. You then move the three points so they line up with the joint you're trying to measure, and it will display the angle. With the experimental version, you can right click on one of the points and select "track path" and the software will track the three markers, showing the changing angle as things progress. The problem I found with this functionality is that you can't tweak the object and search windows for each point, so it easily gets confused unless you have a really clear marker.

4 Appendix – Testing Markers

The Kinovea software tracks motion using visual markers. These markers should be round, as the software doesn't understand a rotating marker. So, if you put a red square on your ankle, as that square turns with your leg movement, the software will lose track. You also want the marker to be on a plain background that has good contrast with the marker. I tested a number of approaches to markers, and I found that colored ping-pong balls work best.

4.1 Colored Ping-Pong Balls

I started off using standard ping-pong balls, which work well against a dark background, but I needed something that would work with other colors of clothing and shoes. I tried painting standard white ping-pong balls, and then discovered that you could buy ping-pong balls in assorted colors quite cheaply. I found these Error: Could not parse data from Amazon! worked pretty well. There is a wide enough variety of colors to work on different backgrounds. I attached the ping-pong balls to my clothing using a loop of duct tape which worked fine in most cases. Ordinary double-sided sticky tape is quite strong enough, but I've not experimented with any of the extra sticky varieties. Touching the ping-pong balls to running shoes is a little trickier. The duct tape loop works okay, but they're far more likely to fall off a shoe than clothing. I did permanently attach a pair of ping-pong balls to some older shoes which works really well if that's an option. I covered the side of the shoe in black duct tape, then glued the ping-pong ball to it. If you use this approach, I'd recommend dropping the duct tape with sandpaper first, partly to reduce any reflections, and partly to give it a better key for the glue. I also found cutting a small X into the ping-pong ball where it's glued on helps strengthen the bond. I found that these colored ping-pong balls were the easiest to use, and produced the most useful tracks of any of the markers I've tried.

This is a close up of the ping-pong balls with the loop of duct tape attached.
Here's a close up of the ping-pong ball on my shoes. You can see that the balls are stuck to duct tape that goes over the reflective patterns on the shoes.
This is how the balls look overall. You can see that the shoulder ping-pong ball still looks round even though my shoulder is rotated away, if this was a flat bit of circular sticky tape, the software would struggle as it would've become partly out of sight.
This is the result of Kinovea tracking a number of strides. This is too many tracks over too many strides to be useful for analysis, it's only done to show how successful the marker is at being tracked.

4.2 Colored Tape Markers

The advantage of using sticky tape is that you're more likely to have some hanging around that you can improvise with. I simply cut some circles out of blue decorators masking tape, and this worked reasonably well. I think there were some issues with my circles being rather roughly cut, and the blue color was not quite enough contrast against my black tights. I'm going to retest with some circular stickers of brighter colors.

Here's the tape markers in use. You can see that the markers on the shoulder and knee no longer look round due to the slight rotation of the joint, something that doesn't happen with the spherical ping-pong balls.
Like the image of the ping-pong balls above, this is the tracks from many strides. You can see the upper body markers were tracked fairly well, but some of the leg markers failed, and the tracks wander off on their own.

4.3 LED Lights

Juanma K suggested I try using LEDs as markers. He'd successfully used string of LEDs with the unwanted lights taped over. I found an alternative style of LED that are individual lights - Error: Could not parse data from Amazon!. These were quite bright and are easy to tape on. The main downside to these LEDs as markers is it you need fairly low light for them to stand out, which can make it tricky to see the overall position of the rest of your body. It can also be a little tricky running in very low light on a treadmill. The upside is that you don't have to worry about your clothing or background colors, especially if you use them in very low light.

Here's the LED lights taped to a running shoe, one illuminated and one not.
This is a close up of one of the little LED lights. It shown here turned off so that you can see it more clearly. Each LED has 3 tiny coin style batteries to power it. You twisted the end to turn the light on and off.
This is a close up of the light illuminated. It's quite bright, but does tend to direct most of the light in the direction of the tube. This means that when it's taped to you the light is not pointing at the camera.
In near darkness these lights work amazingly well for tracking. It's trivial to set up the object and search Windows, and there are no concerns with clothing color, or background patterns.
You might be able to get these LED markers to work in dim conditions, but I found it rather tricky. In brighter light than this it's impossible to track the LEDs.

4.4 Miniature Ping-Pong Balls

I thought that a smaller sized ping-pong ball would work better than its launch her cousin. My expectation was the smallest size would be a little more precise, and the lighter weight would be a little more stable. I purchased some Error: Could not parse data from Amazon! that are 0.75"/19mm rather than the normal Ping Pong size of 1.5"/40mm. in practice, I found it rather harder to get Kinovea to track these small balls. I had to tweak the object and search windows to be quite a bit smaller, and even then it lost track of the balls on my lower legs. The upper body markers which I'd painted orange worked okay.

The Mini ping-pong balls with a full-sized ping-pong ball for comparison. You can see the small loops of duct tape I used the stick them in place.
I glued a couple of mini ping-pong balls to some black duct tape hide stuck to my shoes.
Here's the painting of the ping-pong balls. Spray painting ping-pong balls can be quite exciting, as they so light the spray from the can sends them spinning out of control. I'm sure that this is an excellent technique for applying paint to rectum objects, and might be an awesome experimental arts technique.
Here you can see the mini ping-pong balls in place.
You can see the tracks on the lower legs are getting lost. (The lower legs are harder to track at least partly because they're faster moving.)