Forum

Author Topic: My drone mapping project using GCPs from Pictometry and LiDAR  (Read 6068 times)

DayGeckoArt

  • Jr. Member
  • **
  • Posts: 84
    • View Profile
I've been doing GIS for about 15 years and majored in geography. Since I first started looking into photogrammetry I've been wondering why ground control points are exclusively considered to be square targets that you put on the ground. In GIS we usually georeference aerial photos, scanned maps, etc using existing imagery to find features on the ground.

Well over the past month have been using Agisoft Metashape Pro trial to learn drone photogrammetry. Previously I had only generated simple orthophotos using Maps Made Easy and Pix4D

I work at Maui County where we have access to high resolution orthophotos from Pictometry. In Hawai'i we also have a pretty extensive set of LiDAR data for coastal areas and with the full state coming later this year. Both are available to the public through ArcGIS Online which is good because I'm doing this as a personal project. Since I don't have access to a high precision PPK GPS receiver, or access to some of the places I wanted to map, I decided to try using the Pictometry and LidAR as a source for GCPs

The first landscape I've mapped is a heiau (Hawaiian shrine or temple) on a small knoll here on Maui. It's preserved but surrounded by development. The landscape that provides context for the heiau is almost completely altered and soon buildings will be blocking the viewsheds, and even oblique drone views, so I needed to collect photos ASAP. I went out around solar noon on a few weekends and manually collected raw photos with my Parrot Anafi drone. Some were in cloudy weather so I separated sunny/cloudy into separate projects. I applied Colorchecker profiles in Lightroom except for the set of JPEGs I got with Pix4D Capture (I don't recommend this program, it collected distortion corrected images and all with different white balance and exposures)


I found a set of features on the landscape that are visible on Pictometry and my drone photos, mostly electric company concrete pads and manholes. I found coordinates by placing features in ArcGIS Pro and calculating latitude/longitude in WGS84. I then grabbed elevations from the closest LiDAR points. Many of the LiDAR elevations aren't totally accurate because they were collected before construction of the infrastructure but I think they're close enough


I didn't use all of these GCPs, I tried to choose ones that were widely spaced from each other just like we do when georeferencing flat maps


For the sunny weather project I used 521 photos to generate the model, from many different elevations and angles, but only the low altitude (25m) for generating textures and orthomosaics


The orthophoto from Agisoft matches Pictometry almost exactly, which is what you'd expect. I can't say how accurate it is, but it would be the accuracy of the imagery plus whatever error is introduced in the georeferencing process. I believe the Pictometry rating is "below 1 meter" but it varies with location. More importantly, the orthophoto and 3D model match an existing reference set of imagery that is standard for government and related uses in Hawai'i, and future orthophotos will match the existing ones allowing direct comparison. Also, since Pictometry is already orthorectified, any error should just be simple shift, so future adjustment will be easy!


Another orthophoto from the cloudy weather project:

 
I think this is the power of a 3D model... Our brains can really understand a landscape if we can see a 3D model. A photo from a drone is a view from one vantage point and has perspective distortion. Viewing from the ground is even less helpful. I learned only from looking at my model that the lot is already built up much higher than the two knolls, so the mansions will tower above. I'm not sure this development would have been approved if the community could see and understand the landscape in three dimensions

 
I learned a lot in the past few weeks, but I only have 6 days left on my trial, so in a week I'll have to switch to another program that I can afford. Unfortunately there is no product from Agisoft that lets someone like me do this kind of non-commercial mapping :( I hope they consider some kind of home use or hobby license. The standard license is fine for objects but without geographic capability it's not useful for documenting landscapes
« Last Edit: April 17, 2022, 12:12:16 AM by DayGeckoArt »

DayGeckoArt

  • Jr. Member
  • **
  • Posts: 84
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #1 on: April 16, 2022, 10:33:02 PM »
I want to keep working on this project, adding more photos and expanding the area to cover a lot of the coastline in Makena. But I have over 500 photos in the sunny weather project, most with GCP markers. Is there a way to export the marker locations on the photos that other programs like Reality Capture can interpret? I've spent hours placing them and I don't want to have to do it again. I only have 4 days left on the trial so I don't have much time to figure this out!

dpitman

  • Full Member
  • ***
  • Posts: 246
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #2 on: April 17, 2022, 03:55:40 AM »
Quote
Since I first started looking into photogrammetry I've been wondering why ground control points are exclusively considered to be square targets that you put on the ground.

This is incorrect.  Ground targets are generally used because in many / most areas being developed, there is not established infrastructure in place that can be used reliably to establish centimeter level precision when developing a 3d model.  In cases like yours where there is plenty of substantial, identifiable objects that can be measured and assigned coordinates, they are fine and often preferable because they are permanent.

Quote
I learned a lot in the past few weeks, but I only have 6 days left on my trial, so in a week I'll have to switch to another program that I can afford. Unfortunately there is no product from Agisoft that lets someone like me do this kind of non-commercial mapping :( I hope they consider some kind of home use or hobby license. The standard license is fine for objects but without geographic capability it's not useful for documenting landscapes

This service was recently suggested by Agisoft where you can run projects and pay for only what you use.  Maybe it might be an option for you.

https://www.geocloud.work/

Quote
Is there a way to export the marker locations on the photos that other programs like Reality Capture can interpret?

Yes.  Similar to the importing of .csv coordinates, you can also export marker and/or camera positions.




« Last Edit: April 17, 2022, 04:03:45 AM by dpitman »

DayGeckoArt

  • Jr. Member
  • **
  • Posts: 84
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #3 on: April 17, 2022, 10:54:06 AM »
Quote
Since I first started looking into photogrammetry I've been wondering why ground control points are exclusively considered to be square targets that you put on the ground.

This is incorrect.  Ground targets are generally used because in many / most areas being developed, there is not established infrastructure in place that can be used reliably to establish centimeter level precision when developing a 3d model.  In cases like yours where there is plenty of substantial, identifiable objects that can be measured and assigned coordinates, they are fine and often preferable because they are permanent.

Quote
I learned a lot in the past few weeks, but I only have 6 days left on my trial, so in a week I'll have to switch to another program that I can afford. Unfortunately there is no product from Agisoft that lets someone like me do this kind of non-commercial mapping :( I hope they consider some kind of home use or hobby license. The standard license is fine for objects but without geographic capability it's not useful for documenting landscapes

This service was recently suggested by Agisoft where you can run projects and pay for only what you use.  Maybe it might be an option for you.

https://www.geocloud.work/

Quote
Is there a way to export the marker locations on the photos that other programs like Reality Capture can interpret?

Yes.  Similar to the importing of .csv coordinates, you can also export marker and/or camera positions.

I have yet to see discussion on any forum, Facebook group, or a tutorial about using ground control points that aren't GPSed checkerboard pads. Discussion of using manholes and things like that may exist somewhere but I haven't seen it!

The Geocloud thing may be an option, but just uploading photos would take days because this particular project is over 8GB of JPEGs. I'm guessing the costs would get pretty steep for by the hour work... I think I've spent 40 hours or more on this

I'm going to try importing a "bundler" file to Reality Capture. I installed it today and started working on a new project... I don't have high hopes. I can't get it to import my ground control points properly, the coordinates get totally changed. And the UI is atrocious

dpitman

  • Full Member
  • ***
  • Posts: 246
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #4 on: April 17, 2022, 05:22:22 PM »
Quote
I have yet to see discussion on any forum, Facebook group, or a tutorial about using ground control points that aren't GPSed checkerboard pads. Discussion of using manholes and things like that may exist somewhere but I haven't seen it!

Like I said above, it depends on the environment being scanned.  The typical discussions you are talking about are probably "unbuilt".  That said, identifying a marker in a photo set is easier and faster when it is targeted in a uniform way.  Think production here.  The target itself, whether a painted square, painted lines, bucket lid, etc. doesn't matter so long as they make identifying the exact point easier at pixel level.  Placing the point in software, and the accuracy of it's coordinates are what is important.

I can't help with Realtiy Capture, and have no idea what a bundle file is.  You can export markers and camera locations in typical .txt



DayGeckoArt

  • Jr. Member
  • **
  • Posts: 84
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #5 on: April 17, 2022, 08:51:58 PM »
Quote
I have yet to see discussion on any forum, Facebook group, or a tutorial about using ground control points that aren't GPSed checkerboard pads. Discussion of using manholes and things like that may exist somewhere but I haven't seen it!

Like I said above, it depends on the environment being scanned.  The typical discussions you are talking about are probably "unbuilt".  That said, identifying a marker in a photo set is easier and faster when it is targeted in a uniform way.  Think production here.  The target itself, whether a painted square, painted lines, bucket lid, etc. doesn't matter so long as they make identifying the exact point easier at pixel level.  Placing the point in software, and the accuracy of it's coordinates are what is important.

I can't help with Realtiy Capture, and have no idea what a bundle file is.  You can export markers and camera locations in typical .txt

I've done every export possible but none seems to save the pixel locations of markers on the photos

Paulo

  • Hero Member
  • *****
  • Posts: 1359
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #6 on: April 18, 2022, 12:28:57 AM »
Hi,

you could probably export your markers with their projections by script defining the required export format....

something like this:
 
Code: [Select]
Mark_id Num_proj
Cam_id X_pix Y_pix pinned
PA01 5
0026_170404.jpg 3496.79 606.83 True
1135X_170404.jpg 3170.74 1909.38 True
2143_170404.jpg 3433.42 3222.78 True
2854_170404.jpg 32.35 2669.91 True
4435_170404.jpg 102.05 880.07 False
PA03 5
9047_170404.jpg 4531.91 2106.73 True
9692_170404.jpg 87.13 2432.41 True
0156X_170404.jpg 4686.40 830.26 True
0482X_170404.jpg 849.07 1545.09 True
1273_170404.jpg 1031.43 643.16 True
PA08 8
3644X_170404.jpg 3951.15 2763.77 True
4260_170404.jpg 4274.75 475.43 True
4435_170404.jpg 4093.19 1822.35 True
5225X_170404.jpg 4111.96 796.55 True
5268X_170404.jpg 4156.12 1719.80 True
6775_170404.jpg 4161.53 264.14 True
7565X_170404.jpg 4209.40 1283.48 True
8255_170404.jpg 4263.33 2216.07 True
....
where for each marker, the projections (pixel coordinates) in each camera where they are measured are listed....
« Last Edit: April 18, 2022, 04:53:46 AM by Paulo »
Best Regards,
Paul Pelletier,
Surveyor

dpitman

  • Full Member
  • ***
  • Posts: 246
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #7 on: April 18, 2022, 03:53:13 AM »
Quote
I've done every export possible but none seems to save the pixel locations of markers on the photos

You can export the marker's geographic or projected coordinates.  I'm not sure what you are trying to achieve when you say the "pixel location" so no help there.

Maybe Paul's script might be helpful.
« Last Edit: April 18, 2022, 04:57:59 AM by dpitman »

DayGeckoArt

  • Jr. Member
  • **
  • Posts: 84
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #8 on: April 18, 2022, 07:59:28 AM »
Hi,

you could probably export your markers with their projections by script defining the required export format....

something like this:
 
Code: [Select]
Mark_id Num_proj
Cam_id X_pix Y_pix pinned
PA01 5
0026_170404.jpg 3496.79 606.83 True
1135X_170404.jpg 3170.74 1909.38 True
2143_170404.jpg 3433.42 3222.78 True
2854_170404.jpg 32.35 2669.91 True
4435_170404.jpg 102.05 880.07 False
PA03 5
9047_170404.jpg 4531.91 2106.73 True
9692_170404.jpg 87.13 2432.41 True
0156X_170404.jpg 4686.40 830.26 True
0482X_170404.jpg 849.07 1545.09 True
1273_170404.jpg 1031.43 643.16 True
PA08 8
3644X_170404.jpg 3951.15 2763.77 True
4260_170404.jpg 4274.75 475.43 True
4435_170404.jpg 4093.19 1822.35 True
5225X_170404.jpg 4111.96 796.55 True
5268X_170404.jpg 4156.12 1719.80 True
6775_170404.jpg 4161.53 264.14 True
7565X_170404.jpg 4209.40 1283.48 True
8255_170404.jpg 4263.33 2216.07 True
....
where for each marker, the projections (pixel coordinates) in each camera where they are measured are listed....

Thanks, maybe I can figure it out in the future and use the cloud service to do it quickly

DayGeckoArt

  • Jr. Member
  • **
  • Posts: 84
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #9 on: April 18, 2022, 08:03:43 AM »
Quote
I've done every export possible but none seems to save the pixel locations of markers on the photos

You can export the marker's geographic or projected coordinates.  I'm not sure what you are trying to achieve when you say the "pixel location" so no help there.

Maybe Paul's script might be helpful.

You know when you move the marker positions on the photos to tell the program what pixel coordinates correspond to the marker locations? That's the most labor intensive part and it increases both with # of photos and # of GCPs

DayGeckoArt

  • Jr. Member
  • **
  • Posts: 84
    • View Profile
Re: My drone mapping project using GCPs from Pictometry and LiDAR
« Reply #10 on: April 20, 2022, 08:43:25 AM »
I just looked at the marker XML export file and it does seem to store pixel coordinates of each marker and each photo! I don't know if other programs can import it, but at least it does get saved