Forum

Author Topic: Optimize camera alignment creates larger errors  (Read 9253 times)

rossnixon

  • Full Member
  • ***
  • Posts: 100
    • View Profile
Optimize camera alignment creates larger errors
« on: March 01, 2018, 06:14:52 AM »
Project is to make an orthophoto from DJI photos of a forest.
I aligned photos using the Reference option (longitude/latitude in EXIF).
To get all photos to align, I had to set Key Pt & Tie Pt options to 0.
I have 16 good precision GCPs, although I removed "8" as it had the biggest error.
A few photos had markers that I couldn't position due to tree lean/displacement, so I left those with grey symbol.

When I do Optimize Camera Alignment, my sparse cloud goes crazy, and my x,y,z errors get much worse. (The dialog box showed all options checked except Fit p3, Fit p4, rolling shutter.)

I have settled for creating the orthophoto without doing the optimize. It's not perfect, but still useable.
(Before optimize & after optimize (angled to show problem) images of sparse cloud are attached).
version 1.3.4.5067
« Last Edit: March 01, 2018, 06:32:21 AM by rossnixon »

SAV

  • Hero Member
  • *****
  • Posts: 710
    • View Profile
Re: Optimize camera alignment creates larger errors
« Reply #1 on: March 01, 2018, 09:51:26 AM »
Hi rossnixon,

The marker (GCP) accuracy that you are using is 3m (is that what you mean with good precision GCPs?). If you have measured them with an RTK GPS, then also import the individual accuracy values for each GCP. And check again if you have entered GCP 8 incorrectly. Seems to be an outlier.

Moreover, your camera location error exceeds your default camera accuracy value of 10m. I suggest you uncheck all images/cameras in the reference pane so only your GCPs are used for reference purposes.

Regards,
SAV

P.S. What is your GSD and image overlap? Maybe share your processing report to allow the community to assess your problem in more detail.

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 14813
    • View Profile
Re: Optimize camera alignment creates larger errors
« Reply #2 on: March 01, 2018, 05:51:34 PM »
Hello rossnixon,

I would suggest to not utilize camera locations in the optimization procedure. According to the screenshot the altitude errors for DJI in this project are about hundred of meters, despite that the coordinates are used with 10 m precision. I could also assume that there might be invalid camera orientation angles loaded to the Reference pane. So unchecking the cameras prior to the optimization would help to avoid any problems related to the incorrect reference information related to the cameras.

Also you should check the projection error (pix) for the markers prior to optimization, as some of the projections may be off the real location and then would cause severe optimization issues.
Best regards,
Alexey Pasumansky,
Agisoft LLC

rossnixon

  • Full Member
  • ***
  • Posts: 100
    • View Profile
Re: Optimize camera alignment creates larger errors
« Reply #3 on: March 02, 2018, 01:28:57 AM »
Hi SAV
Here is the report PDF. https://www.dropbox.com/s/79k37dhovyd1czt/Chopsticks_Photoscan_report.pdf?dl=0

My GCPs are based on an existing orthophoto with spatial accuracy is +-2m (@ 90% confidence). My Z values are estimated from 5m contours generated from LiDAR.

I have tried unchecking all cameras, but the Optimize Cameras process still makes the sparse cloud go haywire.
I had GCP 8 unchecked.

Perhaps I should run 'Model>Edit > Gradual Selection' before trying Optimize? I left that completely out as nearly all points were 'bad' - probably due to the big tree lean on the edge of photos (low altitude drone, wide angle lens).

My final orthophoto isn't positioned as well as I would like, but the tree lean is all gone.

SAV

  • Hero Member
  • *****
  • Posts: 710
    • View Profile
Re: Optimize camera alignment creates larger errors
« Reply #4 on: March 02, 2018, 02:31:35 AM »
Hi rossnixon,

Thanks for sharing the processing report. Image overlap looks good.
According to the processing report, the aerial images were acquired using a DJI Mavic Pro (FC220 camera). Have you tapped on the screen to focus when acquiring your images? This needs to be done when using a Mavic Pro, otherwise all your pictures might be (slightly) out of focus. Estimate the image quality and check if your images are above 0.7 (= not blurry)

It is a known issue that (all) DJI drones save altitude values in the image EXIF as relative altitude (alt above point of take off) instead of absolute altitude (above mean sea level). Hence, if you start to mix GCPs which are measured in regard to mean sea level with exif altitudes that are measured in respect to the point of take off, then you and up with a large camera station error.
Additionally, GPS altitude values on DJI drones have shown to be drifting by up to 20m in flight. This is due to the fact that the drone/GPS sensors are heating up, which means that at the end of your flight your drone thinks it is still flying at 50m above ground level, in reality it is only 35m. The main problem is that if you use these altitude values as reference, your model will end up with a large error.
This is why you will need to use ground control points. As Alexey confirmed, you should disable all camera locations in the reference pane before running optimisation because of their large error.

Low altitude? According to your processing report, the average flight height was 200m, hence I don't think that's causing your problems.

If you want to achieve better accuracy, you probably need to acquire more accurate GCPs. Use an RTK/PPK GPS (or even a handheld Garmin one if you are happy with 2-4m accuracy) and try to measure points that are easy to identify in your aerial imagery. If you use a Garmin GPS, try the AVERAGE POINT feature, where you place your Garmin on the ground, then the GPS acquires a measurement every second and averages the value over a period of 1-2min. You should then be able to get the accuracy down to 1-2.5m then, which is about 4-5 times better than what you have at the moment.

One more thing: When aligning you pictures, choose following settings:
Accuracy: HIGH
Generic preselection: ENABLED
Reference preselection: ENABLED
Key point limit: 40,000
Tie point limit: 4,000
Adaptive camera model fitting: YES


Note: If you only want to generate a DEM and orthomosaic, then there is no need to compute a mesh (saves you time).

Also delete all 'rogue' tie points either manually or by using Model > Edit > Gradual selection before optimizing your sparse point cloud/tie points.

All the best.

Regards,
SAV




« Last Edit: March 02, 2018, 02:37:58 AM by SAV »

rossnixon

  • Full Member
  • ***
  • Posts: 100
    • View Profile
Re: Optimize camera alignment creates larger errors
« Reply #5 on: March 02, 2018, 04:52:58 AM »
Hi SAV
Images are fine. Only one of 0.69; the others average 0.80.

I usually use 40,000 key points & 10,000 tie points. On this job, those settings left me with 65 or 70 non-aligned photos. Setting to 0 (unlimited) made them all align.

I disabled all camera locations in the reference pane before running optimisation, as suggested.

Just now I tried the Gradual Selection process again. Last time I tried it, I backed out due to (at first glance) too many points being selected.

Options used this time: Reconstruction Uncertainty 10. Reprojection Error 0.75. Projection Accuracy 10. My sparse cloud has dropped from 3.1 million points to 200,000 points. Then I did Update & Optimize. The problem is now that optimization gave console messages: "removed 29 cameras", removed 29 stations", "removed 3 points".
My Z errors before decimation ranged from -1m to 13m. But now they range from -33m to 44m.
Perhaps I should be less aggressive with removing points in this case?

Alexey Pasumansky

  • Agisoft Technical Support
  • Hero Member
  • *****
  • Posts: 14813
    • View Profile
Re: Optimize camera alignment creates larger errors
« Reply #6 on: March 02, 2018, 02:50:04 PM »
Hello rossnixon,

I suggest to check all the projections of the markers with the highest projection errors (pix errors):
"1", "11", "8", "5", 16, "2", "14".
Best regards,
Alexey Pasumansky,
Agisoft LLC

Paulo Martinho

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Optimize camera alignment creates larger errors
« Reply #7 on: March 22, 2018, 04:27:28 PM »
Hi Guys.

Quote
Options used this time: Reconstruction Uncertainty 10. Reprojection Error 0.75. Projection Accuracy 10.

I´d like to know if those values are the same no matter how many images I get in a flight?

I always use:
  - Reconstruction Uncertainty = 10,
  - Reprojection Error = 0.5,
  - Projection Accuracy = 10.

Do I have to change? Why?

Thanks.