Did you align images and the resulting point cloud seems to be bent? This is a known issue in photogrammetry and it is also known as bowl effect, curved effect, bending effect or camber error. It is mostly done on an image dataset where the camera is moved parallel to the object surface and where the surface is almost planar or with a very small visible parallax. Nowadays the most cases with this error are related to the drone data. So, you can find it on the roads, rails, beaches, walls or flat areas.
This error happens due to the image distortions, compensation of internal and external calibration parameter such as camera altitude and a camera focal length. Simply speaking - if you were shooting a paper laying on a table from above then you would be able to get the same image be moving the camera up and down and adjusting camera zoom. If you were taking pictures of a box or any non-planar object, you would not be able to get the same looking image. How much camera zooming (or other calibration parameters) can be compensated by changing the camera position depends on the scanned surface and the way how you take images of it.
Error accumulation is another factor which can lead to this issue. If you the program to calculate each camera calibration independently, even the camera zooming is fixed, then every camera internal calibration might be estimated a little bit differently. When scanning larger area, this might lead to small deviation from the real camera values. Then setting software to force single internal camera calibration to every camera will fix the problem.
Here we show practical steps you should undergo to avoid "banana effect".
If you are recording only one lane or your images only have forward overlap and not sideways overlap, which can mess with camera calibration, you can get this error.
It is possible to aware of this error in the first stages of modelling process – in data collection stage. But sometimes we need to solve it in the front of computer.
So here are the advices:
During or before data capturing
Add another set of your images at different height, change the image capturing angle or ensure that each part of your survey is covered with both forward and sideways overlap. Then the camera calibration can be more accurately calculated, and your results are less likely to have weird deformations.
Also, you can add some control points to the area. This control point should cover whole area and have proper distribution. If you want to have the project georeferenced, these control points should have measured coordinates.
For precise alignment use RTK or PPK drones.
After data capturing, before or after alignment
There are more steps you can do before alignment. First, we recommend not to change these setting, but if you get banana effect after first alignment, then try these advices.
Click in Images in 1Ds window and group your cameras by Group calibrations w.r.t to Exif.
Change the distortion settings in Advanced Registration settings. Change Brown 3 distortion model to Brown 4 with tangential 2 or K + Brown4 with tangential 2 distortion model.
If you use GCPs, select all your inputs in 1Ds view and set Camera Absolute pose prior to Unknown. This will disable the usage of geo-referencing imported from camera metadata and the app will rely completely only on GCPs data.
These steps should help you to solve this problem. In next paragraph we simulate a computation of a big dataset, where it wasn’t possible to align all images to a single flat component as discussed in previous sections.
There are alternative steps, which you can use for a big long dataset:
- Divide your dataset to more parts
- Import first part of your dataset to RC
- Set Use camera prior to Yes
- Set the position accuracy in Camera prior setting to lower number (this number should be the precision of your imaging device)
- Set wanted distortion model
- Align images
- Add second part of the project, align again and continue until you have whole dataset in the project
- Add GCPs and measure its position on the images
- Set No to Use camera prior pose
- Align again