Hello. As a long time lurker here, I'd like to share my latest project with the DIY Drones community.
In working with orthophoto generation from UAV imagery using the current crop of still-photo stitching based programs, I have found the process to be complicated and frustrating.
I thought there must be a simpler way, and it occurred to me that pushbroom scanning from video is another way to make nice orthophoto-like images. This works without going through the complex 3D reconstruction process that the expensive stitching programs are using.
I have created a program called Aeriality Video Pushbroom. It is simple, it is available now, and it is very low cost. You can find it at www.aeriality.io
What it does is take an aerial video like this:
And it creates a constant-perspective strip-map image like the one one the left.
Even though it is a simpler process than the 3D reconstruction based stitching, pushbroom scanning has some advantages in comparison.
- Its much faster. Get results in minutes instead of hours.
- It continues to work well where stitching often fails to find key points, such as over farm fields, bare soil, or water.
- When stitching has problems you get holes, gaps, and out of place or highly distorted images. With Aeriality Video Pushbroom errors in a good image are limited to small localized distortions.
- Allows simpler hardware, flight planning and operations. You don't have to worry about image overlap or shutter triggering. And post-flight you only need to work with a single video file instead of hundreds of still photos.
- It runs locally on your machine. No need to wait to upload lots of large files to a cloud service, and no worries about the privacy or security of your data.
- Very efficient for long surveys. You can summarize a video into to an output image faster than real time viewing of the video. Potential applications in surveying power lines, pipelines, fences, towers, agriculture, and search and rescue.
Also, with this software I am testing a theory of business, sales, and pricing, that people will pay a reasonable price for something if it creates value for them. I would prefer to make money only if you are getting value from my work. In fact, I want to create more value for you than I capture.
With that in mind, I made Video Pushbroom with individual $3 licenses that can be used for each single video you want to process (only verifying its cryptographic hash against our server). And if you like the software and find that you are using it a whole lot, or want to use it without an internet connection to our server, there is an unlimited use license that covers you as well. To make it fair, if you ever want to upgrade to the unlimited license, the price of any single uses you have purchased will be deducted from the unlimited price. At the current pricing, that means if Aeriality Video Pushbroom is so useful to you that you have used it 33 times, you can keep using the software for free after that.
This being the internet, I realize that some people like to tear things down. So I thought I would pre-respond (prespond?) to some potential criticisms:
This doesn't actually do any alignment of the pushbroom scan, aren't you aware of all of the work that does this? Photogrammetry is a hard problem and you are not even trying to solve it. This sucks and is not as good as X.
Yes, I am aware of that (clearly, since I'm attacking my own straw-man here). The software will get better and add more features, though with a priority on simplicity. I am aware of the research literature and common techniques used by the computer vision, photogrammetry, and remote sensing communities, and have an advanced background in those fields. I hope that people will find the current software useful as-is, so I am releasing it for sale now (and not selling a dream on Kickstarter).
Thanks for reading. I hope you try my software, www.aeriality.io
thanks
-Taylor
Edit: The original strip map got cut off in the post. A full version is below
Comments
I haven't tried it yet but Microsoft ICE is doing this too.
New features in version 1.4.4
Hi Taylor, this seems a very interesting aproximation to the survey and aerial photography.
Look, just a couple of questions, since most of the questions i had was answered throughout the previous comments.
1) If i make a strip with still photos, and then a trip out of a aerial video. Will i have the same resolution in both cases? If no how much do change?
2) As a recommendation. I think that only 2 opportunities to try this tool is quate limited. Takin into account that this software is very new, and there are doubts on the general functioning. Furthermore, you can have much more positive feedbacks on how to improve your software with some form of a free beta.
Well, i´ll givi it a try and get back to this forum.
Wait... wow... what, nobody's done this before? REALLY?
*Makes mental note to look up in my journal when I had this idea like forever ago, but had no idea how to make it a reality*
Dang.
Good work! Bravo!
mnem
Another one bites the dust...
yuo can georeference on google earth by superimposing your image......
@John Thanks! You are correct in that the pushbroom scan does not handle sidelap pairs. It just makes a long strip along the direction of motion of the camera. My other comments to @keeyen and @dan talk about stitching of the strip maps and future options in that direction.
@David Correct, roll and pitch will cause distortions, it relies on you providing a smooth and level flight. A gimbal helps a lot to get good results. The software lets you tell it how the camera is mounted, 90 degree offsets are fine, though it does assume forward motion of the camera otherwise. The 45 degree case should be handled by sweep alignment in the future, though a shear transform of your strip-map in photoshop/GIMP would take care of it right now. Really my ethos here is that this is a simple program and method, for a low cost, that hopefully will be useful for folks who are over-served by the expensive stitching/photogrammetry suites.
@Dwgsparky Thanks. Feel free to let us know how it goes.
Thanks everyone for the encouragement and your interest so far. Please feel free to post about any results you get, or contact me with any questions or issues you run into.
thanks
-Taylor
Hi Taylor
I like that, I have a mapping plane that I can configure for video and if the weather is good at the weekend I'll give it a try. great job
@Robert Thanks! Actually its better than that. Try it a couple of times for free when you download it. Then if you use it, you can process each video for $3.
@Hugues and @Martin Thanks! Currently the software does not account for variations due to speed or altitude or even rotation. These variations will cause distortions in the output. But, quite often, the effect is minimal, and you still get a pretty great looking output. You will notice several small corrections on my demo video, and if you try hard on the full resolution output you can find some fuzzy sports on the edges that correspond to them.
All of that said, there are ways to account for all of those things. We''ll get them in there eventually. I think the software can be very useful as it is, and if people keep using it it will fund future development.
@Keeyan It will currently output to JPEG,TIFF,PNG,or Bitmap. The short answer about MS ICE is, sometimes it works well, others it does not.
The longer answer is that MS ICE is limited to aligning images by rotating, tilting, etc. Mostly just the things you could do with two pieces of paper while keeping them flat. It will not transform the input images by warping them at all. So if your strip maps have very little warping, then MS ICE should be able stitch them.
One idea for making the strip maps stitchable is breaking them up into many overlapping segments. I realize that this does not sound too different from taking still photos, but it does have one key difference in that they have a constant perspective along the map downtrack dimension. If the perspective does not shift too much across the map, then these should be more easily stitchable by MS ICE, and would not require the advanced 3D reconstruction of PhotoScan, Pix4d, or other programs of that kind.
I guess any roll or pitch would cause distortions in the strip?
Also, what does it do if you move latterally say at an trajectory of 45 deg? Or sideways (90 deg)
I meant to ask does this system georeference a large number of images from multiple flight lines/strips into a particular coordinate reference system or not?As a surveyor everyone has to carry out such work with appropriate referencing of the output models.Thus i was interested to know about these issues.