I just downloaded WebODM and I’m a newbie to creating orthomosaics with my images. My images are of ocean flights and islands and also mangroves, reefs and other homogenous type environments. My images are all geotagged using Mission planner and my UAV is a 2m fixed-wing. I ran the default orthomosaic but only got back a slither of one of the islands (albeit a very nice slither) but this represents only 1 of the 4 islands flown around and none of the ocean. We can’t place GCPs due to the nature/remoteness of where I work. Does anyone have any suggestions as to how to stitch my whole flight transect?
Melissa, welcome and thanks for your first post.
Unfortunately, you’ve picked quite a difficult subject matter for photogrammetry with what sounds like large areas of water.
Open/clean water tends to be a nearly perfect spectral surface, so highly reflective with little surface detail/variation, which is what photogrammetry relies upon to generate what are called
tie points. Tie points are features that can be identified in multiple images as referring to the same exact space, and thus are used to reconstruct the spatial distribution of the other points.
Do you have any sample images you could upload? Maybe a quick sketch of what your Area of Interest looks like (say, 30% land, 70% open water)?
welcome to the ODM community!
It’d be great to see a flight plan and have some idea of image overlap - GCPs are less important here, their role is to act as ties to a world coordinate system - if your imagery are geotagged and overlap a lot you’ll still get useful results.
@Saijin_Naib hinted at tie points - these are key in the process, being able to find them.
Also the ocean is highly dynamic - even if it looks flat to you, a feature detector might struggle to match things. If the water is really clear its possible to (sometimes) reconstruct shallow bathymetry, but not always…
Looking forward to seeing how we can help!
Dear @adamsteer and @Saijin_Naib thanks for your swift replies!
I have attached three things- a screenshot of the KML of the transect- it also shows the orientation and overlap of the images in the geotagged folder, as is produced by Mission Planner. I have drawn a red line over the area WebODM was able to map. The stars represent islands. The overlap % is large enough to allow for decent stitching (I think?), but also appreciate tie points may be tricky on the sea. My transects include % cover of all possibilities it seems. I try to get the UAV to include about 50:50 land and reef but as I fly in the field (no internet), and these islands are poorly documented in online maps, I often draw/plan my transects on outdated images, or they don’t load fully, and the resolution is so low that 1 pixel= the whole beach and reef area (CRY!)- it becomes difficult to be accurate. I have attached a few screen grabs of images to keep size down. I have also attached the ortho that WebODM made- its very pretty and useful for my work, but I would love to get the whole flights and the many others I will be processing. Thank you so much for your time and advice! Best wishes, Melissa
This is the main problem. You can try increasing
min-num-features and use
--fast-orthophoto, but I have doubts it will work due to the characteristics of the scene (mostly water).
Thanks @pierotofy, I think you’re right. I will throw smaller image sets of just the islands and distinct reefs in, and omit the water ones and see what happens…!
Melissa, do you have hard constraints for GSD or spatial resolution?
I’m curious if you might have a touch more luck flying higher.
So I try to keep it as close to 1cm/pixel and no more than 3. I fly at 80m-110m depending on mission, which is around 262-360ft. Unfortunately, I won’t be collecting any data any time soon, but also posit that these altitudes are the max I can go for megafauna detection (and safe flying). My colleagues at the botanical gardens at Kew fly at around 200m (656ft) with an eBee but their objectives are different to mine. They are able to stitch their images but they are interested in terrestrial cover, so lots of tie points. I have done manual geo-rectification in ArcGIS in the past to do a quick and dirty and it worked pretty well. Does WebODM have this faciltiy? That would be great!
Do you have a dataset available somewhere? I’ve had lots of luck with Microsoft Image Composite Editor stitching difficult data, but bear in mind it is NOT georeferenced, so you will need to transform the result after the fact.
I do not believe WebODM has that capability at present, but QGIS is always available for any heavy lifting you might need to do
Hia! Unfortunately I can not share my data set due to the location and nature of this particular study- none of my data or images from any of my other field sites are available online at this time, either. I have been using QGIS for a few years and would like to learn more about using it for geo-rectification and I will also have a look at Microsoft Image Composite editor Do you have any examples of outputs?
Many thanks again
A great OSS / non blackbox alternative to ICE is Hugin - which gives you a lot of control around image mosaicking parameters and controlling distortion, although with more control comes more different knobs to tweak and stuff you need to think about.
After you’ve made a mosaic, use QGIS’ georeferencing tool: https://docs.qgis.org/3.10/en/docs/user_manual/plugins/core_plugins/plugins_georeferencer.html to do a quick and dirty. It won’t be a true orthophoto, but if it fits the need…
Thanks Adam, I will give it a go! Wish me luck
Adam’s point about ICE being proprietary is well taken, but it is stupid simple to use. I’ve attached a head-to-head test against Hugin below, but Hugin is well respected these days for sure.
Here’s some early samples from ICE+QGIS:
And one of this site taken for the aesthetic (they grew weeds better than rootstock trees ):
Ha! These look great!
Is it important to reference the water because of the megafauna you are detecting, or would reconstruction of each of the islands independently be enough?
Apologies all for the slow reply! It’s ideal to represent the whole transect as this is reflective of the “effort” done which for us ecologists, is important and can be used in equations. However, for the reconstruction of islands independently, to count mega fauna associated with those islands, that should be sufficient. It is also important to point out, that I have never used orthomoscaics before, and ordinarily count mega fauna from each photo, and apply a blanket rule to account for any double counting. I was wondering, if I am able to render islands from the images, what are the chances of losing mega faunal detections? Perhaps this is a question in it’s own right, worth exploring!
There is some risk of double count or missing counts. It would be interesting to compare orthophoto counts to your raw counts with your rule applied.
I wonder if the folks at Johnston’s lab at Duke have looked into this at all. I seem to remember Professor Johnston talking about this problem in their surveys.
Yeah he was here in the UK at a Uni where I am an honorary researcher (Exeter) and we were supposed to meet up, but it never happened sadly- he knows of my work though. If I can’t make the orthomosaics in the first instance, then I have to continue with my current method of counting and applying the rule, which works, but it is very slow.
When I ran the whole flight through WebODM it only produced that one slighter and was unable to stitch any of the other photos together. I will need to spend a little more time on this!! Also, I didn’t purchase the guidebook for WebODM- should I get it? Is it worth it? Thank you
Have you tried running each island separately?
Piero Toffanin, the primary developer for OpenDroneMap wrote the book. It is both thorough and quite readable and accessible. I definitely recommend it.