What I want to do
I want to successfully complete all steps of a grassroots mapping workflow in order to put together a demonstration for prospective partners in a project that monitors impacts of Invasive Green Crabs in Coastal Maine. (see http://publiclab.org/notes/code4maine/05-08-2014/mobilizing-data-to-combat-the-evil-green-crab)
My attempt and results
While I've been working throughout the winter with students at the Harpswell Coastal Academy on everything from mini-quadrotors to a touchscreen-enabled Raspberry Pi-camera, we wanted to collect something tangible to show for all our work. We have multiple camera options including a touchscreen-enabled Raspberry Pi+ Camera module and two Canon Powershots flashed with CHDK (from a DIY Book Scanner project outlined at- http://publiclab.org/notes/code4maine/10-07-2013/diy-time-machine). However, the PiCam is a ways away from the point where it will be easily deployable in field conditions, and we didn't want to risk losing a +$100 Powershot until we were a little more confident in our technique.
One of the Quadrotors we experimented with over the Winter, the Blade QX-180, came with a detachable mini-HD Camcorder (http://www.e-fliterc.com/Products/Default.aspx?ProdID=EFLA800) and any sacrifice made iin image quality (unavoidable when capturing stills from a video feed) seemed more than justified by the onboard battery and overall weight. Most importantly, it wouldn't be the end of the world if anything happened to it.
At barely over 2 inches long, the camera also meant I could use my Printrbot Simple, which has a maximum build volume of 4"x4"x4", to 3D print parts of the rig. The result was the teeny-tiniest bottle-KAP rig you'll ever see!!!
I made a total of three flights of which only the first was successful, though all three yielded valuable information.
####Attempt Number 1 The first attempt was made on June 14th 2014 on a tiny peninsula called Potts Point in South Harpswell Maine. Parts used included- a small HQ Power Sled Kite w/ stabilizer tail, 100 yards of 50ibs test Dacron Line on a standard spool, and the micro-bottle rig pictured above with a 3D Printed Picavet attached to two carabiners with 100Ibs test Kevlar Line (used as the belt on the Printrbot Simple).
While the winds were more than strong enough to lift the kite immediately, they soon became so strong that it snapped the plastic spool reel in two! The picture shown below is as good an endorsement of the Dacron line that I can think of as Nylon line would surely have snapped in such conditions and I'd have no such view!
I was able to get a few good shots of the peninsula but the broken spool resulted in an early landing before adequate altitude was reached.
That evening I made some modifications to the bottle rig by adding some stabilizer "fins", and I transferred the Dacron line to my autowinding reel pictured below-
Attempt Number 2
Unfortunately, the auto reel didn't fare much better in the high winds as the mechanism that guides the line came loose almost immediately and resulted in some tangling evident in the photo below-
Despite all this, I managed to get some good altitude this time while the stabilizing "fins" worked wonders on the steadiness of the Mini-Bottle rig-
The satisfaction of a successful flight and camera retrieval was soon to be dashed howeveras I plugged in the camera and found nothing on the SD Card! Even though the same card had worked the previous day, subsequent recording comparisons using different SD Cards revealed the camera simply refused to write to the card I was using for no apparent reason! So on to attempt #3...
####Attempt Number 3 Having assured myself that my new SD Card would behave, I spent the next few days trying to improve performance in the always unpredictable afternoon wind conditions. I untangled the line on the automatic reel and got a hold of a 6 foot Delta Coyne Kite (http://www.amazon.com/gp/product/B00C9T4HDG/ref=oh_details_o00_s00_i00?ie=UTF8&psc=1) in the hopes that it would prove more stable in the variable wind conditions. The fact that I have no photos for this attempt hints at the outcome... While the Delta Coyne certainly took off with ease, it handled the wind like a bucking bronco! By the time I got my bottle rig hooked up it not only snapped off the guide reels completely, but started on a slow-motion decent into the water by sharply banking to its left unless I let out more slack. I desperately tried to reposition it so at least the camera would crash on dry land, but it wasn't long before I found myself reeling in the worlds most awkward fishing lure with a bobber that used to be a camera... Once again, the one piece of equipment that performed heroically was the Dacron line, which didn't seem to strain or even fray despite the fact that the Delta Coyne was now doing its best to collect what had to be over 50 Ibs of Kelp! **(EDIT: After recovering the SD Card from the waterlogged cam, it appears that, like the previous day, it didn't capture the video anyway,.. So final analysis is that that camera pretty much ended up where it belongs- In my box of e-scraps!)**
Questions and Next Steps
The lesson learned on the third day is that the Delta Coyne is clearly the better option for calmer days while the Power Sled handled itself much better in windier conditions. I'll always use Dacron line forever after, and I have a lot more research to do about strengthening kite reels. Despite its tiny size, the Mini-Bottle Rig performed surprisingly well, though v2.0 might be a little larger to accomodate the Mobius Action Cam I finally broke down and ordered (along with a waterproof case...). I might also look into adding a foam "life vest"to the bottom of the bottle rig to either cushion the landing or keep the camera from fully submerging should another water landing occur. (Edit: This note on a styrofoam version of the PET Bottle Rig seems to be perfect!- http://publiclab.org/notes/eustatic/03-12-2014/floating-camera-rig)
There was enough material from the first day however, to meet my initial goal of completing a full mapping workflow demonstration.
The screen capture utility on VLC seems to offer the highest resolution possible, while also eliminating the time consuming step of sorting through bad images.
I tried further sorting the captured stills through MapMill, but I can never get Ruby to play nice with Ubuntu, so my attempts at compiling a local deployment failed.
On the other hand, I discovered the Linux-based DigiKam to be perfectly suited to the image sorting needs of grassroots mapping. The same endlessly customizable features that make it so frustrating as a desktop photo manager, makes it perfect for the high volume meta-tagging necessary before uploading to Mapknitter.
As for Mapknitter itself, I managed to stitch together a layer covering a small area on this map- http://archive.publiclaboratory.org/leaflet/?tms=https://mapknitter.org/tms/pottskaptest2/&lat=43.7323905685&lon=-70.024710949, however, as of this writing the export process does not seem to be working. I can see all the photos in edit mode, and it seems to go through the export without error. Yet, it still gives me the "This Map has not been exported yet" dialog... I'm guessing it has something to do with the resolution, but my knowledge ends there...
Despite all the bumps in the road, I have undoubtedly gained some valuable insights into how to successfully deploy a grassroots mapping effort amidst certain local conditions. "thy wind shall giveth and thy wind shall taketh away"
Update 7/6/14
Field testing has been delayed due to the necessity of redesigning a camera rig that is
A.Waterproof and B.capable of accommodating the impressive Mobius Action Cam.
This is proving to be quite a challenge as the camera would need to be mounted in a somewhat vertical position. Initially, I was hoping to 3D Print a custom mount design but my Printrbot Simple decided it wanted to be completely rebuilt from the ground up... A task I'm not exactly jumping in anticipation for...
So my next idea was to use a transparent plastic dry-bag, in combination with the floating KAP rig design by PLOTS contributor eustatic- http://publiclab.org/notes/eustatic/03-12-2014/floating-camera-rig. That way I could just use the dry-bag to simultaneously waterproof and suspend the camera inside the foam shell-
The immediate problem was aligning the lens with the plastic covering tightly enough so as to not interfere with the pictures... Again, the vertical shape of the Mobius proved challenging as there was no way to make it fit flush within a flat dry-bag. I tried using multiple tube shapes to form a kind of scaffold that the plastic could wrap around smoothly but nothing worked... Ultimately, I settled on the tapered-flat shape of a medicine bottle from Target.
Its possible this could've done the trick with enough tweaking but before I got too far I discovered a purpose-built weather-cover for the wide-angle Mobius cam is actually for sale by the official US distributor for Mobius. Hence, as of Sunday July 6th, flight gear redesign is on hold pending delivery by USPS... I suppose this'll give me some time to rebuild and upgrade my Printrbot... whomp whomp...
Update 7/25/14
After a lengthy design process which was documented in its own research note and even spun off into an exciting underwater photography rig, I was finally able to get back into the air! The wind was way too strong that day, so with previous disasters in mind, I made sure to make it a short, low altitude flight to test the new rig, camera and reel.
The new setup yielded some fantastic photos! Unfortunately, none will likely be of much use for aerial mapping due to the low altitude limit and the wide angle lens distortion. Nevetheless, it confirmed that I'm indeed ready to fly again!
The full sequence can be found at https://picasaweb.google.com/107186102357963872918/KAP?authuser=0&feat=directlink
27 Comments
We generally prefer the manual "yo-yo" reels because of their durability. Those little winders you're using definitely break at high loads. I have one of these as well, its a little tricky and the string can jam up the brake if I'm not careful. its nice for flying alone, but when two or more people are with me I go to the yo-yo reels-- they're easier to learn on and simple enough not to cause much trouble. On my own the yo yo isn't bad either, but if I have to rapidly pull in a lot of string I'll have to drop the reel and make a mess.
Reply to this comment...
Log in to comment
Great report. The mini bottle and 3D printed Picavet will go in the Public Lab record books. And what a fantastic place to fly. Is that public land?
It's too bad about the little camera. I'm glad to hear you were able to retrieve the kite.
I bought one of those line winders too. It came with a $5 discount on another purchase, so I bought a second one. I used it once and have not touched either one since. They could work for ballooning, but are a liability for kiting. You can't beat a halo reel for convenience and effect.
Fifty pound Dacron is a little lightweight. Was it really 50 lb? 150 pound is the minimum line weight for a lot of KAP people.
ActionCams and Pi Cams and other little cameras have advantages, but most of them don't cost less than a $40 ebay or refurbished Powershot which will take photos which are actually useful. Your result at Potts Point confirms that you made a good decision to fly a low end camera, but when the wind is behaving and you have the correct kite, a decent camera might be worth the risk. I decided early on that kite photography was too much trouble unless I could get good quality photos.
Thanks for the story.
Chris
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
Hmm, i'm not sure what's going on with that mapknitter export. Looking into it... thanks!
Reply to this comment...
Log in to comment
I can't tell if there's something it's choking on in your images (maybe 'cause they were screenshots from VLC?) or it's having trouble downloading them from Amazon s3 after up you upload them. It errors with:
identify: magick/splay-tree.c:880: GetValueFromSplayTree: Assertion
splay_tree != (SplayTreeInfo ) ((void )0)' failed. Aborted`but that's not very helpful, and could just be what happens when you call
identify
on a nonexistent image? But when i run identify on a truly non-existent file, i getidentify: unable to open image
sadjlfkads': @ error/blob.c/OpenBlob/2489.` so maybe there's really something it can't deal with in the images...Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
Indeed there's something about the images themselves. I hate to ask, but could you try to convert them to jpg and re-upload them? I'm very sorry but since there are only 3 i hope it won't be too big a setback?
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
RE: Mapknitter- I converted the images to JPGs and uploaded them again. The export status dialog then reads (Status: Warping 1 of 6, 2 of 6 etc.) until it gets to 5 of 6 where it just hangs. This is definitely an improvement over last time however wherein it showed no status at all. I did use DigiKam to convert the images to JPGs and I can't remember if I used it the first time. I certainly hope the error doesn't trace back to DigiKam because it seems so well suited to the needs of batch editing.
Reply to this comment...
Log in to comment
RE: Kite Reels and Line- It was definitely 50 Ibs line but now that I know better I made sure to order a Yo Yo Reel with 150 Ibs Dacron this time. In hindsight it validates my decision to use the lighter cheaper camera all that more! As I mentioned earlier, I ordered a Mobius Action Cam that should be arriving tomorrow so I'll have the weekend to go over various options for the Picavet/Rig before the new line arrives. It certainly helps to have a 3D Printer, but with only 4x4x4 to work with I'll have to get creative.
Reply to this comment...
Log in to comment
RE:-High Winds- Has anyone posted a note about making a DIY wind speed meter? It would've been handy to get a rough idea of how close I was to the kites limits. I tried various Android apps that claim to calculate wind speed by measuring distortion in the phone microphone, but all were completely useless when I tried them in the field...
There seem to be a few "DIY Anemometer" tutorials on KAP forums and Instructables but they all seem to be for full anemometers, meaning it also measures wind direction. In my case direction wasn't all that important... I have an old PC fan with an analog output I was considering hacking into one of those attachments for the smartphone that go in through the headphone jack, but I wanted to see if anyones tried it already.
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
Hi,
Great project.
I do multi rotors, rc planes, blimp and kite pics.
Your pictures will be 100 times better with a Mobius, plus a waterproof case. 100 dollars, intervalometer inside, quite shockproof.
You will need Gimp and bimp to automatically make the pics square, and you can use agisoft photoscan for composing the whole picture.
Best of all, you can even make 3D images of your same project, from the exact same software and hardware, like I do here : https://www.youtube.com/watch?v=iOmtm0G-AJQ
Cheers
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
Thank you for the interesting recommendations. I actually just got my Mobius today and will be printing out various components for the rig. Can you recommend a good waterproof case? I certainly learned my lesson last time... I was not aware of the Bimp plugin though I use Gimp frequently. I was very impressed with DigiKam and was going to propose a side project aimed at configuring a preset template for aerial mappers or possibly a plugin for MapMill. But something along those lines would make much more sense for Gimp considering it has such a large user base. Can I ask if you've tried DigiKam before? If so how does it compare to Gimp+Bimp? Have you tried Mapknitter yet? If not I'm sure the devs would be interested in your input since you've worked with professional-level platforms. Some might dismiss the need for 3D but grassroots mapping is one application where 3D could be a game changer! It looks like Agisoft Photoscan uses some form of Computer Vision to add their 3rd dimension. I wonder if it would be possible to do something similar with OpenCV? Though it looks like the Agisoft Suite is proprietary? If so their technique might be patented...
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
Links to waterproof case (the only case I am aware of ) Video : https://www.youtube.com/watch?v=sy8ONQOhha8 Purchase : https://joovuu.com/gb/home/103-mobius-waterproof-case.html
Instead of using photoscan you can have a look at visualsfm / cmvs, it is just too complicated for my primitive knowledge of photogrammetry.
I had not heard about any of the software you mentioned, I will have a look :-)
One picture I took recently from the Mobius so you can have a flavour of what it can provide, at a rythm of 1 image every 2 seconds.
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
That is the "black island" from Tintin album cover. My multicopter is hand made with super cheap material, it is therefore vibrating a lot. From a kite / picavet, no doubt you will have crisp pictures despite low resolution.
Reply to this comment...
Log in to comment
Sorry two more things for you : - make sure you use pulleys and proper pulleys string on your picavet. Brooxes.com is the place. My picavet / pulleys from Brooxes are 10 year old and still going strong. - try free software microsoft ice if your pictures are flat enough ( not taken at an angle)
Reply to this comment...
Log in to comment
That is an excellent Mobius photo. The Mobius is so lightweight that there is no reason not to include one on every flight. The lens is very wide, so stitching maps from multiple low altitude photos produces poor results. The zoomed mode of the Mobius just uses the center part of the sensor so the resolution suffers. I don't know whether structure from motion algorithms can deal with very wide angle photos.
There is a very involved workflow for sfm using free programs. Brenden Duffy made a couple of tutorials that are linked here to my only attempt to do it. Very involved, but effective.
The PeKaBe blocks that Brooxes sells are excellent for Picavets, and help a lot with very lightweight rigs. But for normal rigs with the camera mass a few inches below the Picavet cross, and with soft line lacing the Picavet, smooth eyes work fine to keep the rig level. It's hard to justify $60 for four blocks, although they are beautifully engineered.
Reply to this comment...
Log in to comment
"The lens is very wide, so stitching maps from multiple low altitude photos produces poor results"
Sorry for not being clear enough. Gimp + Bimp allow you to automatically (batch) take the barrel effect out of every Mobius picture, making Mobius pictures "stitchable".
For instance, this was done from a few hundred Mobius pictures with barrel effect out thanks to Gimp + Bimp : https://www.youtube.com/watch?v=vK-3joqFIWA
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
Now I can't wait to get back in the air because I really want to compare the Bimp+Gimp combo to DigiKam. I have a slight suspicion that DigiKam postprocessing is causing some kind of file corruption in Mapknitter however, so I hope the same doesn't prove true with Bimp/Gimp.
Reply to this comment...
Log in to comment
That's good to know that structure from motion works with wide angle photos. It sounds like you have to correct the distortion first. It doesn't seem like making a flat map would work very well with wide angle photos even after the photos were corrected, because the ground is viewed from many different angles in each photo.
Reply to this comment...
Log in to comment
Also a brief search into OpenCV and 3D Aerial Photography yielded some promising results- This post on Stack Exchange almost seems like it came from someone at PublicLab- http://stackoverflow.com/questions/22180512/algorithm-for-ortho-rectification-mosaic-ing-aerial-images. Mathew, CFastie, and Warren- Has anybody examined the use of OpenCV for 3D Ortho-Rectification? Or is this a new discovery? If so I'll post a new research note about it.
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
I haven't seen anyone doing orthorectification with Open CV. MicMac is the only toolchain I know of it include 3D construction and orthorectification https://publiclab.org/notes/mathew/02-25-2014/3d-data-from-image-sets-autostitching
Reply to this comment...
Log in to comment
On anemometers-- learn the Beaufort scale and watch the tops of trees-- since wind speed on the ground is less important than high up, Beaufort is more useful than an anemometer. its not as precise, but its more accurate and useful. I had a pocket anemometer for a while but it wasn't worth it. I don't use one anymore. https://en.wikipedia.org/wiki/Beaufort_scale
Reply to this comment...
Log in to comment
Hmm, trying again now: https://mapknitter.org/map/view/pottskaptest2/
It worked this time! Not sure what your last error was but it seems converting to JPG was OK.
Reply to this comment...
Log in to comment
cfastie- Now that I'm back in the air, I definitely see what you're talking about with the lens distortion... My latest attempt- http://archive.publiclab.org/leaflet/?tms=https://mapknitter.org/tms/low-tide-potts-point/&lat=43.7319613151&lon=-70.0234926588
I forgot about the Gimp/Bimp method suggested by Philgib though so I will try it.
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
Philgib- I tried using the GIMP+BIMP combination that you suggested and it seems relatively straightforward. The only problem is I have no way of knowing how to set the lens distortion correction values. When working with a single photograph it gives you a live preview, but the batch processing menu has nothing of the sort and the parameters are different so I can't just copy them over from a single image. Can you maybe go into a little more detail about how you used Gimp for batch processing Lens distortions?
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
Sure. I won't say I have the best way to do it but that works for me for many different lenses.
Take a picture of that screen : http://1.bp.blogspot.com/_0zx-4pM8HnA/TSltkqjXscI/AAAAAAAAAI0/45MJoCS5-f8/s1600/OpenCV_Chessboard.png
Go to Gimp, open that picture, use filter=>distortion=>lens distortion, and play with settings until you have the picture square
For batch treatment, go to Bimp, click on the Add button, open the "open other bimp procedure", then choose plug-in-lens-distortion and use the same parameters as for gimp, then select directory or files, then Apply
My gimp is in French so options may not have the exact same wording but you should get the idea. Let me know if that works for you too.
You may also watch this : https://www.youtube.com/watch?v=hiiYW5cMGII
Cheers
Phil
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
I guess I read your question too fast or it is too late here (past midnight) or I am too old... Anyway...
I am using the first 2 variables in the Gimp lens distortion section, and amount of 2nd order and 4th order on Bimp plug-ins-lens-distortion.
Reply to this comment...
Log in to comment
Yes, I conducted my own test by correcting values using both menus on two copies of a single photo and the photos came out identical.
This is how the values seem to be translated-
Using GIMP-Lens Distortion-
and using BIMP Batch Editing dialog-
Its rendering now, so hopefully it makes a noticeable difference when I try to upload onto a new map. If not, I was looking into the HUGIN Panorama editor which has lens correction and batch processing but makes Gimp look like iPhoto in terms of complexity... So I'm hoping it doesn't come down to that...
Reply to this comment...
Log in to comment
How did i miss this note?
excellent discussion, y'all
I wrote this up after a chat with mathew http://publiclab.org/notes/eustatic/11-11-2014/a-method-for-distorting-mobius-action-cam-imagery-in-gimp-foss
Is this a question? Click here to post it to the Questions page.
Reply to this comment...
Log in to comment
Login to comment.