Measuring Camera Stability - A Quantitative Approach

edited September 2011 in General
Sorry for the ramble, but this is a long one:

I'm not happy with anecdotal approaches to measuring camera stability. Cameras are real things operating in real environs, so we should be able to apply real measurements to them. Since I've been trying to design a more stable camera suspension, this has been bugging me for a while. I think I came up with a combination of tools that work well enough to share. Even better, everyone one of us can use these tools. No IMU, no data logger. Just a kite, some line, a camera, a rig, and a computer: the same stuff we use to do KAP.

One of the most useful tools for anecdotally analyzing camera motion is a video made with the camera in question. Watching that video will tell you more about what the rig is doing than anything else we've come up with so far. For a while now I've wanted a way to take a kite aerial video and get a motion profile out of it. It turns out it's been possible for years. I just didn't know it.

Video Deshaker is a filter for Virtual Dub, a free video editor. Timonoko first introduced me to Virtual Dub and Video Deshaker, both. Deshaker does a good job of taking out extraneous camera motion in pan and tilt. It also does a good job of taking out extraneous camera motion about the optic axis: roll. (As a quick aside, a number of video editors offer stabilization. Few of them stabilize about the roll axis, even fairly expensive commercial packages. Score one for free software!)

In addition to removing extraneous motion from video files, Video Deshaker also logs what those motions are. On a frame-by-frame basis, it logs translation in X and Y in pixels, and roll rotation in degrees. With a little knowledge about the camera's field of view and resolution, that can be translated into X, Y, and Z rotation in degrees. Multiply by the frame rate, and you get a motion profile of the camera in degrees per second about all three axes.

At this point it becomes possible to do statistics with the numbers. Just for grins, I ran this on some handheld video first. I tested a couple of cases. The first was with image stabilization turned off and the camera held away from my body. The next, with my elbows braced on a table. I repeated these with image stabilization turned on. The results were interesting! With IS off and my arms extended, I had an angular velocity in X of about 1.5 degrees/sec and in Y about 1.0 degrees/sec. In Z I got closer to 2.2 degrees/sec. With arms braced those numbers changed to about 0.6, 0.5, and 1.8, respectively. With IS turned on and arms extended it was 0.5, 0.4, and 1.7 respectively. With IS on and arms braced it was 0.2, 0.2, 0.9 respectively. Neat! IS works!

Also of interest was the total excursion. I calculated this by integrating the velocities to get an angular offset from the first frame as a function of time. For the handheld videos they were all at or around 1 degree over 1024 frames. I had the benefit of live view, so I wasn't surprised by this.

I spent the morning pawing around on disk to try to find some kite aerial video I hadn't already smoothed with Deshaker. I couldn't find any from my A650 or T2i rigs, but I found some Nokia N8 video files I'd made with the camera mounted in a rig built from Brooxes components. I picked a sequence where things weren't bouncing around TOO much (I think the N8 rig is light enough that it suffers from wind buffeting more than my other rigs), and ran the same analysis on it. The results were a little startling:

Average angular velocities around the three axes were 5.6, 6.5, and 10.3 degrees per second. RMS excursion 4.5, 1.7, and 5.6 degrees in each of the axes. This confirmed something I'd wondered about: It's possible to have fairly small motion of the rig in terms of the total amount of swing, but still have it occur as a high frequency, high velocity motion. Having a high total excursion is what results in things like tilted horizons and wobbly composition. But it's the high angular velocity that kills image sharpness. So even if a rig seems like it's barely wobbling around, if those wobbles are fast it still kills the image quality.

My next question was what all this meant in terms of shutter speed. In the past I've arbitrarily said if the image on the focal plane moves by more than one pixel in any axis, it'll show up as blur. I've since come to believe this extremely optimistic. In Photoshop I can typically tell when an unsharp mask with a FWHM of 0.33 pixels makes a difference. Smaller than that and it's harder to tell. So for the purpose of finding out what this means in terms of shutter speed, I decided to try to keep the motion to under 0.33 pixels in each axis.

I realize this video came off of an N8, but what I'm really interested in is my T2i rig. The T2i has a detector that's 5184 pixels wide. With the lens at 18mm the image scale is 0.0331 degrees per pixel. I took the angular velocities of the N8 rig and applied them to the T2i. To meet my specs I calculated that I'd have to use a 1/2000 second exposure speed or faster. This was a little discouraging, to say the least.

But... That was using the N8 rig, which I really do think is bouncier than my A650 or T2i rig. So the next step is to get real video footage with those cameras in their respective rigs, and repeat the processing with Video Deshaker and Excel. Then the real fun begins: Modifying the rigs to try to provide more stability. The nice thing is, this time I have tools to get real concrete metrics before and after so I not only know I made a difference, I can say just how big a difference I'm making with each change.

I'm continuing to play with this. One other tool I'm trying out is to do a Fast Fourier Transform on the time sequences that this technique generates. It should be possible to pick out the dominant oscillation modes for each axis and determine how strong each one is. (We can already see this by eye when watching kite aerial video. I just want to put numbers to things.) From a design standpoint, it's often easier to attack particular oscillation modes than it is to attack random motion. So far I'm not confident enough in my results to put anything in print. But the idea should be sound.

I encourage anyone else who's going after rig stability to use these tools as well to help them in their work. Video Deshaker and Virtual Dub are free, and the numbers can be run through Open Office, Excel, Matlab, MathCAD, or any number of other analysis packages, many of which are also free.



  • edited September 2011
    Whoa! That is incredibly interesting and daunting. I think you are right to put some measurements on this stuff. What gets measured gets done (improved?) as they say.

    My guess/observation is that the transform will reveal that oscillations oriented as side-to-side motions (call that X) contribute the most, followed by toward and away from the anchor point (call that Y), and then up and down vertically being the last (Z). The length of the pendulum or even the vibration of the line makes a big difference to each of these in terms of frequency and resulting blur as you pointed out with "it's the high angular velocity that kills image sharpness". Excursion in a given time window can be dinky but very destructive to the image for sure.

    Then there is the problem of taking the measurements while correlating the pan orientation of the camera relative to the axes of motion, especially if your rig is automated. Yipes! Where is my Cray computer?

    Indeed, we can correct crooked horizons with Photoshop, but sharpness is actually the Holy Grail, as you indicate.

    This is really cool stuff. Once understood, maybe the effectiveness of different types of rig stabilization can be graded -- but I guess that is where you are going with this. Tom, you are certainly very bright, and ambitious as well.
  • Whoops! I should have defined my axes.

    In the tests I've done, the camera is pointed at the horizon. X corresponds to the X axis of the image. Motion in X and corresponds to rotation around the pan axis. Y corresponds to the Y axis of the image. Motion in Y corresponds to rotation around the pitch, or tilt axis. Z is oriented along the optical axis of the camera. Motion in Z corresponds to camera roll.

    I think it will be difficult to compare setups between different people as well as between different flying conditions. I remember one particularly gross session with a PFK Nighthawk where the kite and line took up a pumping action of 2-3Hz. When the camera was pointed back toward me, the rig went into this really rapid nodding motion. When oriented 90 degrees to the kite line it rolled back and forth at the same frequency. The resulting video was enough to make even an iron stomached person sick. But that same rig flown at another location that same day produced really clean video without any of that oscillation present at all.

    Picavet setups can also have a huge effect on this. I know James's article on Picavets goes into this at some depth, but the spacing of the clips defines the damping effect of the suspension. Over-damped, and you get really good pointing at the expense of a twitchy pan axis. Under-damped and moves in pan can result in lots of slow oscillation from side to side, but minor changes in kite line orientation don't have as big an effect on the rig. It's a balancing act. And how each person likes to set up their rig will affect their numbers.

    Where I think this will have the most benefit is when one person is making changes to their setup and wants to try two arrangements under the same conditions. The relative merits of the two setups can then be compared.

    As far as correlating the pan orientation of the camera relative to the axes of motion, it's not too big of an issue. For this technique to work, the camera needs to be pointing either horizontally or vertically, and really shouldn't be moving for the duration of the test. That keeps the orientation of the axes of the camera fixed with respect to the axes of the rig. Minimizing residual camera motion at the end of a rig move is a whole 'nuther can of worms I'm not ready to go into just yet.

  • edited September 2011
    Hey Tom!

    I've been thinking about this kind of measurements too. My idea is to:
    • Create a software to estimate motion in video (using OpenCV), or even better: record (both linear and angular) motion sensor information at the rig
    • Always attach the camera at the same distance from the kite
    • Always release the same amount of line
    • Attach sensors to the bridle to record motion/vibration as close to the source as possible
    With all things equal (or as equal as you can get), it should be possible to measure the effects of different stabilization techniques in similar conditions.

    If we could agree on some kind of "standard", different people could measure and publish their findings (including kites used, camera model and settings, type of line and other variables). We would have a large amount of data to digest and, with some more effort, design better stabilization systems whose efficiency could be directly measured.

    Since there are many different scenarios, we could make at least 2 different tests, for instance:
    • rig @ 30m from kite, releasing 60m of line (good test for those in UK, I guess)
    • rig @50m from kite, releasing 100m of line
    If anyone have other ideas, please let me know!
  • I was using a recording 3-axis accelerometer a while back. Not free, but pretty simple to interpret the amplitude, frequency, and axis of motion. You can also synchronize it with your camera and figure out what was causing those blurry shots.
  • Ricardo, I'd love it if there was a single package you could hand a video file to and get all the statistics you'd ever want. I think it would have broader appeal than one that relied on sensors since most rigs don't have sensors on them. But almost everyone can make a video file. If you come up with the software, I'll happily generate data file after data file for a common library of rig behavior. And thanks for the link, tgran. At $89, their cheapest one is seriously affordable! I've wanted something like that for a number of other projects. (Hmmm... Now if I can just come up with a project at work that would benefit from it...) It would also be nice to put one of those on a rig and verify that this video technique works. It would be better to have a three-axis rate gyro in a similar package, but there are ways to make a pair of accelerometers give you comparable data.

    I got one more data point: Some time ago I did some video at Anaehoomalu Bay about a week after the tsunami that devastated Japan. Some damage was done to the beach at Anaehoomalu Bay, and the kite aerial video did a good job of documenting it. I posted the unedited video to Youtube.

    Unfortunately I did a lot of panning -- really fast panning -- during the video, so much of it isn't useful for statistics. But there was a nice section while the rig was gaining altitude that worked out quite well. I used frames 3000-4024 of the video and got the following statistics:

    RMS velocities: X:3.7 deg/sec Y:6.1 deg/sec Z:4.5 deg/sec
    RMS excursion: X:1.9 deg Y:2.5 deg Z: 4.5 deg

    Now for the cool part: For once the FFT showed something other than the typical decay curve for random motion. I got a real peak! X and Z look pretty random, but Y had a peak at 0.2 Hz. That's an oscillation with a five second period. You can more or less see this in the video as the horizon nods up and down. I think this is due more to the motion of the kite as it climbs to altitude than it is any particular characteristic of the rig. But it's nice to see the technique work!

    I'd like to repeat this on some video where the camera is sitting at altitude instead of moving through the air. And I'm really eager to try this with the T2i rig.

  • One of the problems possible with the video approach is it's inability to catch high frequency movement. At 30 fps it is possible that such vibration may be missed.

    Thinking laterally why not use one of the seismograph apps available for iPhone. These have a sampling rate of up to 180hz and measure acceleration on 3 axes. Furthermore they can record and the data can be downloaded to spreadsheets.

    Just type seismograph into the app store. The one I found was iseismograph.
  • edited September 2011
    You're absolutely right, Simon. At 30fps, 15Hz is the highest frequency an FFT will measure. At 60fps, 30Hz is as high as it'll go. It's seriously limited. But I'm not certain that's a problem just yet. I swear I've seen a rig oscillate faster than 1Hz, and I wish I had a video file to play with from just such a session. But looking at the FFTs of the files I've got, they get extremely flat past about 5Hz. Not to say that higher frequencies aren't present. If they're not measured you can't say for certain. But given the decay curve I'm seeing as a function of frequency, it doesn't seem likely. (This is one of those things I'd really like to verify independently, though! Every time I make a sweeping statement like that, I've been wrong.)

    I've got a seismograph app on my phone, but I'm not sure it will give you the same answers I'm after. Here's the long spiel:

    A KAP rig has six degrees of freedom. It can translate in X, Y, and Z, and it can rotate about the X, Y, Z axes as well. Translations cause parallax shifts, and are the bane of people doing aerial panoramas. Rotations cause the image to move across the focal plane, and are the bane of image sharpness.

    To get an image shift out of a translation through space, you would need for a foreground object to move enough with respect to a background object for it to register on the camera. Let's say you have a subject distance of 100m. In order to get a parallax shift of one degree between your subject and the horizon, the rig would need to move 1.7m while the shutter was open. At a decent shutter speed, that exceeds the freefall velocity of the KAP rig. Not to say it can't happen, since we've all seen rigs pull serious Gs at times, but those have been rare occasions.

    Getting an image shift out of a rotation isn't tough. This is what causes the bulk of the image blur when making handheld photos.

    Measuring rotation is most easily done with a gyroscope. To get all three axes, it takes three gyroscopes. Solid-state rate gyros are getting to be pretty inexpensive, but they're still not as common as solid-state accelerometers. It's possible to use an accelerometer to get rotations so long as you know how far your accelerometer is from the center of gravity of the object it's attached to. But in order to get rotation around all three axes, you ideally need at least two discrete accelerometers. The reason is that no matter where you stick a single monolithic three-axis accelerometer, it's not going to be able to measure rotation around an axis that extends directly through the accelerometer. It has a blind spot, so to speak. Put a second accelerometer arranged 90 degrees from the first one with respect to the center of gravity of the rig, and you're back in business.

    I really wish the same company that makes the accelerometers tgran posted the link to made logging gyros as well. Heck, I'd buy one of each!

    I think there's an additional... caution... about this technique, which brings up another reason I'd like to see this verified with a three-axis gyro: I don't really know the algorithm Deshaker uses for assigning motion to each of the three axes. And the point AerialLensGuy brought up about mapping the axes of the rig to the axes of rotation is an important one: Even with a camera aimed at the horizon, with the camera wobbling around as it obviously does, there's going to be some coupling between axes. I doubt they're anywhere near as independent as I'm treating them. A session with a camera making video and a three axis rate gyro would answer a lot of this pretty quickly. Until then, I'll use it as a qualitative tool for comparing setups rather than as an absolute tool. That, it will never be.

  • edited September 2011
    Gyros do give you more relevant quantitative information for camera work, but the way I think about it the three axis recording accelerometer qualitatively sees everything except yaw. There's a lot of big problems in those five axes to worry about (and on my rigs I think yaw can be considered a bit of a separate problem) so getting that last axis wasn't a deal breaker for me. Anyway, here's an old example of a "stuttering picavet" (not using smooth blocks). You can see the undamped pendulum motion perpendicular to the kite line (yellow) and the damped motion parallel to the line (blue -- which couples to the first motion at 1/2 the frequency) and the higher frequency stutters as the rig slips on the picavet lines and the main modes interfere. Never calibrated the damn thing so I don't try to make sense of the numbers except crudely. X-axis is in seconds.

    stuttering picavet
  • edited September 2011
    Whilst all in favour of a quantitative approach, how do you plan to quantify the wind the "system" is flying in?
  • edited September 2011
    Nice discussion! :)

    IMO, the greatest advantage of using video is that you can "see" the results for yourself and judge them subjectively, but you can't use it to make accurate measurements, due to many problems (some of them already listed above).

    Simon, that's a great suggestion - smartphones are ubiquitous and some of them (iPhone 4 and some Android devices) have 6 axis sensors. One can use a phone in the place of the camera and have both video and sensor information. This is one of the things I wanted to do when I started using the N900 and N8 to KAP but couldn't finish due to many reasons...

    tgran, that's very nice! Have you changed the picavet blocks and noticed the difference (or recorded more accel. data)?

    Tom, it seems to me you're basically trying to capture camera (or rig) data with different systems and compare them directly to see which one is more stable. My idea is to actually record data at two positions (rig and kite), and make more relative comparisons.

    IMO the main problem of capturing data only at the rig is that this data can't be objectively used to measure improvements on camera stability. Since each KAP session is different you might try to compare (let's say) two different rigs but flying them in different days (or in the same day, but still under different wind conditions), producing radically different results. But if you also record data as close to the kite as possible (which is probably the source of most movement on the rig) you can compare how much of the kite movement a specific rig can dampen.

    I gave a quick look at what's available (for "cheap") on SparkFun:
    Gyro breakout board (yaw) ~= $20
    3 axis accel. breakout ~= $20
    (micro)SD board ~= $15
    Arduino Pro Mini ~= $20
    Total.................... ~= $75
    Of course, you should add the cost of battery, memory card, S&H, assembly, programming and anything else you want to throw at it (with a $20 barometric pressure sensor, for instance, you can also get the altitude), but in the end you have a small, light and versatile data logger.

    And this leaves out of the equation the direct effect of the wind on the rig (as James pointed out)...
  • I can't. That's one of the big weaknesses with this approach, and with any approach that measures an actual KAP rig in flight. But I'm curious if there is a baseline behavior for a given rig and kite combination. The only way I can answer that is by flying a lot, collecting a lot of videos, and processing them.

    Kite choice will also play a roll. That's pretty obvious to anyone who's flown more than one kite, but I think it's a very strong effect. That flight with the PFK Nighthawk and the N8 rig convinced me of that. I've seen my FF8 exhibit similar behavior, where it rapidly pumps the line and shakes the bejeebers out of the rig.

    It might be possible to add a second rig to the line, a very well-characterized rig like a directly-down camera+picavet rig to sample the kite and wind, but I honestly don't think it would be possible to take the data from the kite/wind sampling rig and extract it from the rig being evaluated. I honestly think quantifying the wind is too daunting a task.

    Another weakness is that there will be variations even during a given flight. I'd like to test this by flying a camera for a good half hour and take random (or systematic!) sets of frames out of the flight to generate numbers. My guess is the error bars are quite large. I haven't had a chance to do this, but it's important that this happen soon. It's too easy to be led down the garden path by noisy data that doesn't have error bars on it.

    Where I do think this will help is to answer questions like:

    - When gyro servos are turned on, how much oscillation am I starting with, and how much is left?
    - Does having IS turned on actually help me, hurt me, or make no measurable change?
    - When a messenger-style rig like Mike LeDuc's is running up and down the line, is it really more stable than when it's sitting still, and by how much?
    - Is a Jos Scheuten style rig inherently more stable than a traditional Picavet or pendulum rig, and by how much?
    - When I add a stabilizing vane to my rig, what exactly is it doing?
    - When I change the length of my pendulum, what is happening to the camera? Can I use this information to dial in an ideal length for my pendulum?
    - When I fly two rigs, one right after the other, which rig is doing a better job of stabilizing my camera? Rig A, or rig B?
    - Have I been hanging my rig at a good distance from my kite, or is there a better rig-to-kite distance for my flying conditions?
    - In the whole question of aperture versus shutter speed and image quality, would I be better served by stopping down and going with a longer exposure, or the other way 'round?
    - After I make a move with my rig, how long does it take for the rig to settle down to the point where I can trip the shutter and get a sharp picture?
    - When making a move with my rig, can I train myself to accelerate and decelerate to the point that I can shave that settling time by an appreciable amount?

    So no, the technique isn't a slam-dunk. And no, I don't think we'll ever be able to grade our rigs and say, "Mine is 2.35x better than yours!" But I do think it would be useful for answering some pertinent questions that could have some real world application.

  • Well what possibilities are there for reducing the effect of whatever movements and vibrations are encountered? I guess adding mass would help, but that can only go so far with KAP. Then there's adding a little mass, but at a distance, like a SteadyCam. Or perhaps a way of suspending the camera from the picavet with some kind of damped connection. Maybe a Slinky section. :-)
  • Lots of possibilities, actually, which is why I'm going down this garden path. Here are some I'm interested in looking at:

    - Picavet vs. pendulum vs. some other thing like George Lawrence's suspension.
    - Cross between a Steadicam and a Spidercam suspension (this is what I'm working on at the moment). This would be similar to Jos Scheuten's setup, but I came at it from a different angle.
    - Adding gyro stabilized servos. At it extreme, as on a Cineflex mount, this is an incredibly effective method of removing unwanted motion. But it requires more precision than is currently available for the weight we can fly.
    - Changing the length of a pendulum. I made an extra long pendulum at one point to see what it would do, and I got into an opposite regime of behavior. So clearly there's something fun to explore there.
    - Flywheel stabilizers similar to the Kenyon Labs stabilizers. I haven't tested this in the air, but from the admittedly anecdotal tests I did on the bench, there's a lot of promise here. A lot of battery draw, too, but there's room to explore.
    - Turning on or off IS. I managed to convince myself that this helps with my A650. I did two sessions back to back, and compared the number of blurry shots. Then I went out and did some random sets with it on or off, and I was able to tell which was which while processing the pictures. But I don't like that kind of comparison. I want to see how it helps and by how much. I still think IS on or off is one of the long-standing KAP questions that would be nice to address.
    - Adding a bungee section to the kite line itself to absorb shock loads from the kite. I know a number of KAPers have done this. It's one I haven't tried for myself, but I'm curious.
    - Adding a second dissimilar kite to the line, as Troy described in his post. It would be nice to fly with and without the second kite in back-to-back flights and see how much lateral motion is canceled with this approach, under what wind conditions.
    - Playing with different tail arrangements on tailed kites like Flowforms. I mostly add extra tail to get more reach from a kite, but it affects stability as well.

    Lots and lots of directions to go with this. I'd be willing to bet if I searched through the forum I'd find at least as many ideas that I didn't list. Camera stability has been an ongoing line of research since Arthur Batut lifted his first camera over a hundred years ago. A lot of these ideas date back to that first generation of KAPers. Others are newer like gyro stabilized servos and in-camera image stabilization. And by all means try out that Slinky section! I know you stuck a smiley face at the end of that sentence, but a critically damped spring between the suspension and the rig might be just what the picture needs! ;)


    P.S. Something I mentioned in another thread, but probably need to state here as well: I have a concrete goal in mind with all this: I want to be able to do nighttime KAP, and ideally nighttime panoramic KAP. I don't have much in the way of city lights to play with, so think more along the lines of moonlit landscapes and seascapes. I'd like to be able to make 1/15 sec exposures or longer consistently (meaning 95% sharp or better). I'm well aware this is a pipe dream, and that I may never realize it. But if it means I get sharper daytime and golden hour photographs while I bang my head against the moonlit landscape problem, that's not so bad a thing.
  • Love this discussion. Motion / vibration are a constant bane to obtaining sharp images with KAP. Technology with servos, cameras, steady-cams put advancements within reach. More importantly...have a core of individual who love this space with the skills and energy to pursue the endeavor. The other key enabler is the internet which is the glue to bring these ideas and passions together.

    I like the concept of pull data off of Kite Aerial Video shots to help understand the motion faced with KAP rigs.

    Few additional thoughts....

    - Wind is an important factor as pointed out by James..... Recommendation....consider adding simple light weigh wind sensor and data logger directly on the kite or directly on the picavet. Sync this data with the video analysis data....

    - We could use a few standard naming conventions....for example a few simple diagrams show the "operational definition" for each axis (visual will help).

    - Consider this a collaborative effort. KAPers could contribute video files for analysis using different kite, rig, wind conditions....could use the KAV flickr group or other similar groups on YouTube.

    In the end .... a larger data set and few key experiments will point the way to possible solutions.

  • edited September 2011
    Tom, I think you and I may be the only ones crazy enough to attach a gumpack video camera to the kite. While that's not really workable, the resulting video does show what we're up against, which might be useful in the research. I remember your video as being pretty smooth, but mine have always looked like this:

    Yours was attached to the sail, but mine to the top of the vertical spar (both Roks). As the tension on the line picks up, the vibrations really pick up steam. Of course this is worse than it would be if attached down the line, or suspended from the line, but even so, it has always surprised me how violent things are up there. And it appears to be mostly sail flutter - you can hear it in the video. So maybe add to the list of possible fixes a kite which has the sail very tightly stretched so it doesn't flutter - if there is such a thing.

    It does seem that one of these little gumpack or key fob video cameras might provide good information on how smooth things are with a particular fix or improvement. They are small and light enough that you could attach one to almost anything.
  • Just to add another thing to the mix. The sharpest shots I get consistently are with slack kite line, I can literally get dozens and dozens without motion blur in these conditions. I really believe it is a great way to isolate the rig from many of the sources of movement and vibration. To me it's the single best thing to do to improve the sharp/unsharp ratio when flying light rigs. It can be attained in light and moderate winds with the right kites.
  • Hear hear! Thanks for adding that, Simon. Of all of the tricks that can be pulled out of the bag, slack line flying is one of the most consistently successful.

    Even on days with moderately strong wind, and even under conditions where the line isn't nearly as slack as I'd like, it's possible to get slack line shots. It's not the best technique in the world, but at times I've resorted to letting out line fast, letting the rig stabilize as the kite drifts downwind, and tripping the shutter before it starts to take up the slack.

  • wayback, I went so far as to tape a cell phone to a kite sail as well. So yeah, crazy is as crazy does. But the video is cool!

    This is getting off topic, but after using a GoPro for the first time, a shot came to mind that I'd like to do at some point: Get some Skyshark spars and either some 6mm fittings or Jim's omnipresent Gorilla Tape, and build a tripod on the back of a kite. Stick a GoPro on top of it, pointed back down at the kite with the ground in the background. Shoot a video of the kite in flight. It would be nice to arrange this so the tripod itself isn't visible, but not if it means compromising the stability of the thing. A good rigid mount would be necessary for the sequence to work.

    When I stuck that gumstick camera on the kite sail, I first taped it to a fairly wide sheet of plastic, then taped the plastic to the sail. That gave it a little more rigidity than if I'd just taped it directly to the sail. I forgot this when I taped the cell phone to the sail, though, so that video was all but unusable. It might be possible to use the same basic idea as the GoPro shot and build that tripod on the bottom side of the sail. This would certainly give a more stable mount to the camera, and would remove oscillation in the camera's mount from the equation. But doing any of this without skewing the weight distribution of the kite would be tricky. The real charm with those gumstick cameras is, as you said, their negligible weight. If the mount winds up weighing ten times as much as the camera, something gets lost.

    I may have a chance to generate some data to play with in the near future. And maybe make that GoPro shot.

  • Great thread, this!
    One more thing to watch / measure is line tension: It has a big influence on system stiffness and resonance frequencies.

    My next rig will have an Arduino, so will the ground controller. I've ordered a 3xis magnetometer to maintain a more or less constant heading. I might add gyro's an accelerometers... The radio modules I have allow for bidirectional communication (could be used for real-time measurement transfer)

  • edited September 2011
    I've been heads down working on another project so haven't had a chance to keep up on this thread. Lots of good stuff here and much information to digest!

    The motion sensor I'm using is an Invensence IMU-3000EVB evaluation board which has an integrated 3 axis gyro and accelerometer so this works well to measure both angular rates and linear accelerations. I picked one up for about $35. It has an I2C interface, so it can be interfaced with most newer micro controllers. The voltage level of the I2C interface is a bit funky and I had to play around with level shifting the signal to make it compatible with my 5 VDC PIC microprocessor, other than that it works very well. My PIC doesn't have a lot of spare memory, so I can't datalog unless I make an RS-232 interface and stream the information to a separate datalogger... Other micro's may support datalogging if someone wants to try them with this. I found that for my rig with an approx. 1.5 foot pendulum, the angular rates exceed 100 deg/sec a times, I have it set to trip the shutter when the rates are ~<1.5 deg/sec and get pretty good results, though not good enough for slow shutter speeds at night (< 1/100 sec). My system does a great job of keeping the horizion level and works for large panoramas at higher shutter speeds, but still struggles with the higher frequency movements and vibrations for lower shutter speeds. I would like to try it with a longer pendulum to see if that helps.

    I did note that when triggering the shutter at the peak of a pendulum oscillation, the S95 Image Stabilization (IS) reduced blur in windy conditions. I believe that the IS works best when the camera movement is small otherwise it hits it's mechanical stops.

    As Tom pointed out, with a shuttle (AeroKAP) arrangement, the image becomes significantly more stable when the rig is moving quickly up or down the line. I do want to try taking horizion night time shots with the rig after putting the shuttle in a freefall condition down the line. It seems that in a freefall condition of, say 50 ft/sec, the rig should be pretty stable and you should be able to achieve fairly low shutter speeds if you shoot objects that are far away from the camera. It could be set to take rapid fire shots at low shutter speeds while the shuttle is falling down the line. The trick would be flying the rig back up the line in the dark for a second set of shots ;).

    I downloaded the Ipod iSeismometer app, very cool!

    Fun stuff!!

  • I am convinced from many KAV shots and experiments with placing cameras directly taped to the kite sail.....that kite sail vibration / flapping contribute a fair amount of vibration to the KAP rig and camera. The Nighthawk.....while the only kite i will put up in high wind....flaps like a beast trying to get free. While holding the line with your hand....the vibration does not seem to extreme ...but the picture sharpness shows evidence of motion blur. The KAP rig itself is jumping around a bit in a strong blow too....

    KAP Experiments Over Chester Springs
  • The vibration problem can easily be solved and I know I've posted it here before. From experience with the model helicopter vibrations the old school method to remove vibration is a simple bungee strap, it can be tight too, not dangling loose. Cut to length and tie off with a zip tie, this method on heli mounts has been used to lift many lbs of weight.

  • Interesting KAP vibration testing using video top views is now underway over the Wind Watcher Proving Grounds (Chester Springs, PA).

    I have been experimenting with flying top view video with dual camera KAP rigs.

    First series of flights were with a Rokkaku kite. Dual camera (Canon S95 and Go Pro HD Hero) KAP rig. The S95 was in the
  • Hi all!
    I wanted to share an observation I have made (& most probably it's nothing new for many of you here)
    From my recent KAP sessions I have noted that attaching a 25ft tube tail about 50ft down from the kite, then attaching the KAP rig say another 50ft lower
    down, considerably reduces & almost eliminates the line vibration felt on the finger tips.
    I suspect that if any line vibration is still felt at the finger tips, adding more line laundry between kite & rig will do the trick.

    I understand that this is not a "quantitative" measurement in ANY way but it's enough of an observation for me to use the technique whenever wind conditions demand it.

    I suggest anyone to try it & share their thoughts about it.....& possibly the more tech savvy guys here can quantify it! :-)
  • edited September 2011
    Interesting experiments. One thing that comes to mind is that the camera mass will likely induce extra oscillations at the kite especially if the camera mass is not significantly less than the kite itself. Extra weight can mess up the kites center of gravity and it's natural built-in control system as it gently dithers back and forth correcting for small movements. The extra weight at the kite may result in the kite breaking into an oscillation in some conditions and overshoot each attempted correction. In general, I think that the larger the ratio between the kite weight and load weight, the better for mounting something directly to the kite. You could also try adding a lot of local drag (flaps, etc) at the kite to compensate for faster movement (like the extra flaps on a Trooper or R8). When mounting a payload to a kite, it may help to distribute the weight across the surface of the kite to spread things out. I got a nice large Cody II (Pink) box kite from Brooks several years ago and have often thought of mounting a camera system into the frame. Catching a portion of the kite itself in the photo to me adds an interesting perspective of being up ther with the kite.

    By the way, I love the audio of the HD mounted below the Dopero..... perfect for a sci-fi horror track!

  • Mike - I agree! A bit of Heisenberg uncertainty principle going on here! I attached the Go Pro to the bridle lines to get a glimpse of the vibration on the line from the kite's point of view. The audio track is interesting. We have all heard the line hum from the ground and indeed on this flight the line was humming a bit and even got a video with the S95 picking up the ground end line hum. It may even be worth while to plot out the line hum vibration in addition to the video deshaker data logger. Thoughts? Agree on the sound track .... real screamer. For those loading the Youtube video....the flight does not start till about 45 seconds into the video and then runs for about 9 more minutes. This is just the first 10 minutes or so of the complete 30 minute flight.

  • edited September 2011
    Finally got the Rokkaku vibration videos sorted out and posted to Youtube.

    Configuration for these videos is different from the Dopero testing.

  • Jim, I saw something in one of your videos that's got my antennas up. I'll get to that in a sec.

    I've had a chance to do some testing on the ground, and a couple of extremely lousy flights in the air. Some of the questions I had about this technique have been answered. Here's the latest from the lab:

    The first question I had was whether the technique worked at all. So I slung my rig from a tree, set it to swinging like a pendulum, and made a video. The results are enough to make me motion sick, but here's the link:

    I ran the numbers on it, and ran the FFT. Here's what I got:


    On top is a time series graph of position in each axis versus time. On bottom is the FFT.

    Some notes: The time series shows some offsets and drifts. The offset in Z is because I took the initial frame as the 0,0,0 reference. Since I started the camera rotated, the zero for rotation about Z (along the optical axis) has a large offset. Next, X and Y show some drifts over time. I'm pretty sure these are errors propagating through my equations and don't represent real long-term drift in the rig. I haven't gone through the frames enough to know for sure, but I don't put any faith in that information.

    The frequency data was excellent, however, and doesn't care about those offsets or drifts. Since the camera was pointed at a nearby subject, the side-to-side sway resulted in rotation about Z, a relatively large translation in X, and a relatively small translation in Y. This shows up as coupling between these axes in the time series, and as a result in the FFT as well. The FFT clearly shows a dominant frequency. When I measured the peak-to-peak period of the swing by going frame by frame through the video, it matched the peak frequency of the FFT. This part of the technique works.

    Next I did a KAP flight:

    I did this while my wife was sleeping, so it was necessarily close to home and brief. I didn't know we had a storm system to the south of us that was tweaking all our wind patterns until much later. In short it was horrid. I would never do KAP under these circumstances and expect anything good to come out of it. But hey, it's a test. If the first video didn't make you motion sick, this one might. Now for the graphs:


    This time there are three graphs. The top one is the time series showing the angular position of all three axes as a function of time. The center one is an FFT showing frequencies from 0Hz (uncorrelated motion) to 15Hz (fairly high frequency oscillation for a KAP rig). The bottom one is the same FFT showing frequencies from 0Hz to 2Hz.

    In the time series, it's interesting that you can see where I was hauling line in to keep the rig from falling out of the sky. The camera was pointed 90 degrees to the right of the kite line, so the rig wobblies from winding show up as a rotation about Z (along the optical axis). It's also easy to see the one clean section where the kite was flying normally. This is the section I clipped out and used for the FFT.

    The first FFT graph (the middle graph) shows something I'd suspected, but was happy to see confirmed. Most of the power is in the low frequencies. Since I made this video at 60fps I can extend the FFT out to 30Hz, but past 15Hz it's incredibly flat. There is one oddball peak around 5Hz (5.13Hz), but most of the power is below 2Hz. This leads me to believe that insanely fast sample rates probably aren't necessary for analyzing traditional Picavet-based KAP rig motion, regardless of whether you use video or an IMU. KAP rigs just don't shake that fast. (I make no claims about the dynamics of pendulum rigs or rigs with any other sort of suspension.)

    The second FFT graph shows some clear peaks in each of the axes. What's interesting is that except for an extremely low frequency peak in X and Y that overlap, none of the others do. Each axis has a different primary mode of oscillation. This tells me a couple of things: If I was getting strictly random motion, I wouldn't expect to see peaks at all. I demonstrated that a known oscillation really is represented accurately in the FFT during the first test, so I tend to believe that the peaks I'm seeing in this test are real as well. And since each axis appears to have its own set of peaks, I tend to believe that the peaks represent something that is physically happening rather than just being artifacts of my method.

    Something else that came out of this flight is that concerns about variations in wind conditions and the effects on the testing may actually be backward: Once a rig is well characterized, this may actually be a good technique for measuring how good or how bad the conditions are for a given flight. A two minute video at the beginning or an end of a flight, or in Jim's case in the middle of a flight, may provide answers for why a particular session worked well or didn't work at all.

    Here's where I want to go from here:

    I don't know how repeatable this is. I'd like to do some extended flights and run an FFT on several segments to see how closely they agree. If they give wildly different results, it's not a reliable technique. If they give similar enough results that I'm able to calculate error bars, I'd feel a lot better. (I hate a measurement where I don't know how good the measurement is!) It may take me a while to do this, but I've got my fingers crossed for this weekend.

    I don't know how valid my claim is that I can separate motion into rotation about X, Y, and Z. I'd like to build a four camera rig and give this a go. I'd like two dissimilar cameras pointing in the same direction, and have two more cameras pointing in the orthogonal directions. All four cameras should give comparable results. If they don't, the technique is inherently flawed. This test will have to wait for a while since it'll be a fairly major construction project.

    I'd like to see if it's possible to separate what is inherent to the rig from what is due to the flying conditions. To do this I'd like to get some tests of a particular rig in very clean air, and repeat those tests in really crappy air. Given our weather at the moment, the crappy air tests should be easy enough to get. What I want to see is how big a role the wind plays. I know the angular velocities will change with wind turbulence, but will the fundamental modes of the rig change? Will it show up as additional peaks in the FFT, or will the peaks move? Finally, can I use this information to separate what is inherent to the rig and what is due to the conditions under which it is being flown? This will take a while, and honestly I don't expect it to pan out. But I have to give it a try.

    Finally, I'd like to start building the new rig I've been designing for the past six months to see if I've learned anything from all this.

    Jim, back to your videos:

    Using the kite as a reference point, the camera occasionally had a bucking motion that appeared to correspond to curvature in the Picavet lines. I can't tell if that's because of the fisheye effect of the lens, or if it was the wind blowing a curve into the Picavet lines. If it's the latter, it looks like that may be a significant source of motion on your rig. I saw a similar curve in the Picavet lines on the N8 rig I built when I flew it in all but the lightest of winds. Do you have any insight you can shed on this?

    Also, I can't tell if it was how the camera was mounted but occasionally the horizon showed up at one edge of the field in a way that made it feel as if the rig and its Picavet lines were tilted waaaaay off to one side. I'm guessing this is a case of fisheye curvature rather than real motion, but your S95 videos should provide the answer: Was the rig really that tilted with respect to the horizon?

    I look forward to seeing the S95 videos!


    P.S. Something else on the FFT technique and what it requires out of the videos, in case you're interested in giving this a try: If you're sampling at 30Hz, the highest frequency you can measure is half that, or 15Hz. How finely you can divide that range from 0Hz to 15Hz (or 30Hz in the case of 60fps videos) depends on how many samples you take. Essentially it's the number of samples divided by two. Since most of the action appears to be happening at low frequencies, it takes a lot of samples to get that kind of granularity below 1Hz. I was doing 60fps videos, and used 2048 frames to get 0.029297Hz steps in frequency in my FFTs. That requires a video of 34.3 seconds in order to get that many frames. At 30fps it would be 68.6 seconds. During that time it helps if the camera is pointing in one direction. If one of the axes moves during that time, it shows up as camera motion and blows the statistics. It's possible to work with much shorter segments of video, but at the expense of resolution in frequency in the FFT.
  • When I look at my sensor data the primary thing I notice is how much control I have over the stability of the rig. This is the obvious stuff of course. Slowing and smoothly (and slightly reactively to tension) letting line out dampens a lot of motion. Yanking line in of course can start some wild oscillations.

    Something is not apple to apple with the tree data. It looks a lot more simple. The line might be more slack or the motion you gave it was mostly in one mode.
  • The tree data was never meant to be apples to apples. The rig was clipped directly to the tree with no line. And when I swung the rig, I wanted it all to be in one axis. It really is swinging like a pendulum. The point of that test was to verify that I would see the motion in the Deshaker data and be able to isolate the dominant frequency. I did and could, so the test worked out fine. But it in no way was ever meant to resemble a real KAP flight. That was just a verification of the method, not a simulated flight.

    There are a lot of line handling techniques that can be used to improve performance. I admit when I was taking in line, I was hauling it in as fast as I could go. The rig was starting to fall out of the sky, so it was a desperation effort more than anything else. That was a really crummy flight, and as I said it's not one I would've considered usable for KAP. I was just desperate for some kind of real world data I could try this technique on.

Sign In or Register to comment.

Howdy, Stranger!


In this Discussion