WaBis

walter.bislins.ch

Lens Distortion and the Curvature of the Earth

Thursday, October 22, 2020 - 00:18 | Author: wabis | Topics: Knowlegde, Simulation, Interactive, Geometry
When using distorting lenses like GoPro fisheye lenses, the curvature of the horizon is not shown correctly, except if the horizon line passes through the center of the image. The App on this page lets you investigate how different shapes are distorted by different lens distortions depending on their position in the frame.

Lens Distortion App

The left display shows the undistorted Shape in blue color, while the right display shows the same Shape but distorted in red color. For comparison the undistorted shape can be overlayed in light blue with the option Show Undistorted. Move the Y-Pos slider to move the shape up and down to see how the curvature changes depending on position. The initial values are chosen so that an arc is distorted to a straight line using a fisheye barrel distortion.

Positive values for Distortion create Barrel Distortions, while negative values create Pincushion Distortions. A value of zero does not create any distortion. See Distortions in Wikipedia for the equations used.

If you select Shape = Arc you can change the curvature of the arc with the Size slider.

Observations and Conclusions

Lines that don't cross the center of the frame are bent by non-rectilinear lenses as shown by the App. Straight lines that cross the center of the frame remain always straight. Curved lines that cross the center of the frame get distorted as they divert away from the tangent line through the center of the frame, but the direction of the curvature is retained.

That means we can determine the shape of the earth from images that use distorting lenses like fisheye lenses, if the horizon line crosses the center of the frame. Near the center of the frame the curvature is the same as in an undistorted image. Away from the center the curvature gets more and more distorted, but retains its direction of curvature.

  • If the horizon appears flat when it crosses the center of the frame, using any lens, then the horizon is flat in reality.
  • If the horizon appears bent when it crosses the center of the frame, using any lens, then the horizon is curved in reality.
  • If in a video the shape of the horizon shows the same curvature or no curvature no matter where in the frame it is, then the lens is a non-distorting rectilinear lens and shows the real shape of the horizon.
  • If in a video the shape of the horizon changes depending on the location in the frame, then a distorting lens was used. We can still get approximately the real shape of the horizon from those images, where the horizon crosses the center of the frame.

If the earth is flat and the horizon crosses the center of the frame, the horizon will appear flat. If the earth is a sphere and the horizon crosses the center of the frame, the horizon will appear curved and the curvature near the center of the frame is the same as from a non-distorting lens.

Can a Fisheye Lens invert Curvature?

A fisheye lens creates barrel distortion, which bends all objects away from the center. All straight lines appear curved outwards, except if they cross the center of the frame. But can a convex curve be inverted to a concave curve by the barrel distortion of a fisheye lens? Yes it can, as the following images show:

ZoomUndistorted Image with a Convex Border of a chair beck rest
ZoomA Fisheye Lens (Barrel Distortion) Inverts the Curvature

So if the earth horizon is curved convex, like the beck rest in the left image, it will appear flat or even concave (inverted curvature) if the horizon is far enough away from the center of the frame.

Flat earther deny that the flat horizon in some images is caused by a fisheye lens. They claim that fisheye lenses can not straighten or invert curvature, but only exaggerate an already existing curvature. This is definitively false as is demonstrated on this page.

Note that the straight brown band that crosses the center of the frame remains straight. All lines that cross the center of the frame mostly retain their curvature.

So if we have an image taken with a fisheye lens and the earth horizon is crossing the center of the frame, the image shows the real curvature of the earth.

Earth from Space taken with Fisheye Lens

The following screenshots are taken from the video GoPro Awards: On a Rocket Launch to Space. The GoPro HERO4 camera used a fisheye lens. We can tell this from the images, because the shape of the earth changes considerably depending on the location in the frame. We can even tell from the different curvatures of the horizon in different images, that the lens distortion is a barrel distortion.

ZoomImg 1: Horizon above center of frame shows too much curvature
ZoomImg 2: Horizon at center of frame shows correct curvature
ZoomImg 3: Horizon below center of frame appears flat
ZoomImg 4: Horizon below center of frame appears concave

In Img2 the horizon crosses the center of the frame. This image shows the real shape and the right amount of curvature of the horizon as is confirmed by the image below, where a lens correction is applied to undo the fisheye effect.

Lens Correction

If we know the specifications of the lens used, we can apply a mathematical transformation on the image to undo the distortion of the lens. Such transformations are called lens corrections and implemented in most good image manipulation software.

ZoomImg 5: Lens correction applied → Open In Curvature App

The screenshot above is from the same video as the images Img1 to Img4. I know that a GoPro HERO4 camera was used with a fisheye lens of 18 mm focal length. I imported a screenshot of the video in Adobe Lightroom and applied a GoPro4 lens correction.

To confirm that this is the real curvature of the earth, I used my Curvature App to calculate the expected curvature from an altitude of 120 km. I then overlayed the prediction of the App with the lens corrected image. As you can see, the globe prediction of the App matches perfectly the lens corrected image.

More Page Infos / Sitemap
Created Thursday, October 22, 2020
Scroll to Top of Page
Changed Monday, November 2, 2020