Tag Archives: FoV

Calculating Parameters For Fisheye Lenses

Previously I created RemoteSensorParameterCalculator which is an easy tool to calculate various parameters for remote sensing applications. However I recently wanted to calculate various parameters for a camera with a fisheye lens attached and discovered that the equations are a bit different. Information on the internet is a bit hit and miss, so I have created a separate version called “Fisheye Lens Calculator”. It calculates the following:

  • Fisheye Lens Image Circle Diameter
  • Fisheye Field of View
  • Pixel Size at Target Distance
  • Total Frame Diameter Size at Target Distance (factoring in the image circle)

This is especially useful if you are trying to pair fisheye lenses with machine vision cameras. After playing around with the calculator I had a few “aha!” moments:

  • If you are trying to use a fisheye lens you are generally trying to get a field of view of 180 degrees. Because image sensors are square and the image circle from a lens is round, the only way to actually achieve this is by fitting the image circle inside of the rectangular (or square) image sensor boundary. Thus the image will always look like a circular image inside of a black rectangle (see the title image from the Desert Fireball Network)
  • Due to this, there will always be “wasted pixels”. We want to minimize “wasted pixels” by adjusting the image circle so it fits as neatly as possible inside the sensor. The reason is there is a relationship between the wasted pixels and the pixel size at target distance. The main mechanism we have to try and adjust the image circle size is by adjusting the lens focal length. The larger the focal length, the smaller the pixel size at the target distance which is a good thing.
  • Field of View is never greater than 180 degrees. If the calculations show this, the image circle is simply inside the sensor area. Which is what we want.

RemoteSensorParameterCalculator: A Simple Web Application For Calculating Remote Sensor Parameters

For a while now I have had to calculate various camera sensor related parameters for remote sensing applications. Usually this is done using excel. But I have recently been getting some joy out of making super simple single page web applications that solve simple problems. With a small amount of code, you can create applications that will work on basically any device in the world. As someone who spends their days cursing over porting code for embedded devices and different operating systems, I can really see the beauty in this. So with this in mind, RemoteSensorParameterCalculator was born. The project is open source and can be found here. Feel free to use it where ever, just give me attribution.