Support Website Contact Support Blog

Incorrectly calibrated cameras creating errors in point cloud

I have a survey of a coastal platform and cliff using a Phantom 4 with the Pix4D double grid mission (altitude 50m, 70 degree camera angle).

However after the 1st processing stage it appears 20-30 cameras are being incorrectly calibrated, and this is resulting in the point cloud that is generated to be incorrectly projected above and below the surface.

This is with multiple GCPs (very accurate with GNSS) added too.

 

 

 

I undertook 2 other very similar surveys of which there have been no issues.

 

I believe maybe adding some MTPs may solve the issue, but many of the ATPs seem to be fine. Would water reflections cause this?

 

Unfortunately re-surveying is not an option so would ideally need to fix this using the current images.

 

 

Thanks for adding screenshots of the issue. 

Adding about 3 to 5 Manual Tie Points (MTPs) in the center of the project where the cameras were wrongly calibrated should help. Then, the project should be reoptimized with Process > Reoptimize.  

Could you post a link (e.g. Google Drive, Dropbox,…) to the Quality Report of that project?
This might give some other pointers as to what can be improved. 

1 Like

Thank you for the quick reply.

 

I added 8 MTPs (ranging from 3-23 images in each) and this does not seem to have rectified the issue after reoptimizing. Do I need to select the MTP in ALL the images it is visible to work? This is proving difficult as it is a natural surface.

 

Attached is a link to the quality report (after stage 1).

https://www.dropbox.com/s/im9w35r9eocf4ez/Scalby_02_09_17_report.pdf?dl=0

Thanks for attaching the Quality Report. 

I think there might be a problem in how the GCPs and MTPs were marked in the images. Have you checked all marks manually or did you use “Automatic marking”?

If we check the quality report, we can see that: 

  • there are a lot of marks for each point (>20 for each GCP)
  • many marks were not verified by the software

For the GCPs: 


For the MTPs: 

I would double check the marks in the images for each MTP and GCP. Make sure that the marks were added at a fairly high zoom level and that all marks of a same tie point are at the same spot. If they are not, you can remove the mark by clicking the “Delete” key on your keyboard. The high zoom level gives a higher weight to a mark and is represented by the yellow circle around your mark.

Looking forward to updates from your side.

1 Like

I manually marked the points, would you suggest using automatic marking?

Also would you suggest more or fewer marks for the GCPs and MTPs?

 

Thanks again for the suggestions

Marking them manually should be fine. Automatic marking could introduce some errors, if the marks are not checked. 

I would suggest less marks. For a standard project about 4 to 8 marks should be enough.

Usually, that is how I go about marking MTPs or GCPs: 

  • create the MTP or GCP in the rayCloud and mark about 4 images (https://support.pix4d.com/hc/en-us/articles/202560349), making sure I zoom in on the image before clicking (note: if you click the space bar when hovering over an image that you want to mark, it gets full screen.)
  • click Apply
    - check the reprojection of the point I marked in the other images, if the reprojection is not at the same spot where I marked the first 4 images, I add a mark on the image to correct it.

Also, if too many marks are added, there is a risk to inadvertently make marking mistakes.

In your case I would make a copy of the project with Project > Save Project As…, then I would remove the MTPs and start over. This should be faster than checking all the marks you have done so far and it will enable you to compare both projects. Hope it helps!

1 Like

I’ve tried again with the MTPs as you’ve instructed (4-8 points then clicking apply), however I have many pictures with green crosses where the Tie Point I’m trying to select isn’t even on the image and would be 50m away. This makes it it difficult to correct, and any corrections I do make end up with pink circles (outliers?). Am I doing something wrong here? After reoptimizing the errors in the ray cloud still persist. Would rematching help?

Ok! I suspect that the software had some troubles finding matches in the area. Maybe the images look very similar, which could lead to having images that should not be together suggested for marking for the same MTP. In this case, it is better to only mark the images that really contain the feature you are interested in. If you do not mark the images that are 50m away, they will not be taken into account for the MTP. The pink circles show that the mark is an outlier. 

Before following the next suggestions, please double check if there is enough overlap between the images in the problematic area. In addition, I would check if the quality of the images is as expected, e.g. sharp or blurry? Something you can check here, is how many matches were found in specific images. For this, you can select an image in the left sidebar of the rayCloud and check the orange crosses on the right as below: 


If there are very few, it could explain why it is difficult to correctly calibrate them. 

It seems as if you have flown a double grid mission (with a tilted camera) and that you have used the 3D Maps processing options template. These are the matching options in the 3D Maps template: 

We can see that the time stamp of the images, image geolocation, image similarity and MTPs are taken into account for the computations. However, I believe that the “distance” option could help in your case, because it could improve the matches in the same area between the two grids. The first thing I would try, would be to run the 3D Model template, as shown below (notice the difference in the selected options): 

If this did not work, I would suggest to uncheck the “Use capture time” checkbox and try again: 

Let us know how this went :slight_smile: As usual, I would make a copy of the project to test this new suggestion, so that you can compare them. 

Thanks again for getting back to me.

I managed to solve the issue by clicking “Uncalibrate” on all the incorrectly positioned cameras, and then clicked “calibrate” which put them in the correct position.

Thanks for the update. 

When I try to “Uncalibrate” images in an example dataset, the “Calibrate” button is grayed out afterwards. Is there another step you did between those two?

I assume you mean this sidebar that appears when clicking on an image: 

Pierangelo,

 

Did you get a response to the calibrate / un-calibrate step mentioned above by Philippa above? I have the exact same problems that he has and I have added MTPs. and re ran multiple times.  

Colin, 

No, I did not get an update. Hopefully Philippa will see the updates on the post and will let us know. Feel free to create a new post in the community on your issue with a link to the quality report and maybe log file of the project, so that we can have a look and see if there is something else. 

Thanks!

Hi guys,

I would love to know how Philippa solved the problem, as I had the same problem in two consecutive flights! Does anyone get anything in mind of how did she do?

thanks!

Hi guys, I had similar issues and I was also able to use the calibrate button. 

I had some images flipped and they projected points in weird angles upwards, I uncalibrated them, added some MTP’s and then calibrated them again.

I will report back if this solved my issues.

Hope this helps!

Hi all,

@Jerzy thank you for sharing with us your workflow.

The calibrate button gets enabled when:

  • The image has at least  20 inliers.
  • All manually marked points (MTPs) are inliers.

To see the full workflow on how to calibrate an uncalibrated camera please see: How-to-manually-calibrate-uncalibrated-Cameras-in-the-rayCloud

Cheers,

Ina

Thank you for your response Ina, but it seems the link you shared is blocked 

oops my bad, check this one please:

https://support.pix4d.com/hc/en-us/articles/202560189-How-to-manually-calibrate-uncalibrated-Cameras-in-the-rayCloud