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.