Photonbend allows one to convert photos between different sorts of lenses, rotate photos and make panoramas.
Project description
Photonbend
Photonbend is a python module to handle photos, especially photos taken with fisheye lenses, and convert them between different kinds of lenses, FoV, and types of photos like inscribed circles, cropped circles, or even side-by-side double inscribed circles. It also allows you to rotate those photos, convert them to equirectangular panoramas or convert panoramas to fisheye photos.
It can be used as a library to handle images on your projects or it can be used as a standalone tool with its own set of commands to help you alter your photos taken with a fisheye lens, an omnidirectional camera such as the Samsung Gear 360 or an equirectangular panorama.
If you just want to use the tools go to the Scripts. If you want to undestand how it works just keep reading
Concepts
Fisheye photography
Unlike rectilinear lenses, fisheye lenses can capture great angles like 180º and even greater. With the right setup we can nowadays produce 360º images.
A 360º fisheye photo with its center aiming at the ceiling.1
Those type of images follow a scheme like the one below:
Fisheye photo scheme depicting the angles produced by an equidistant lens
How it works
This module uses the information you provide about the image format, lenses, and FoV, couples it with mathematical functions that describes the ways the lenses behave, and makes use of trigonometry to map your planar photos or panoramas to a sphere (actually, the interior wall of a sphere. Using a sphere as a base lets you rotate the image. Using all those functions and trigonometry, it also lets you take a virtual picture of the interior of the sphere using different sorts of lenses and FoV to produce new images. It also lets you map a sphere to an equirectangular panorama.
You can see examples on the scripts page
Convention
On the case of the images this software was designed to handle, the convention we adopted was the the center of the image is the top of the sphere, and its borders are the maximum angle of the FoV (In case of a 360 degree image, the sphere's bottom). This convention is important to understand the rotation scheme.
Rotation
This tool lets you rotate your images. For reference, the rotation is defined in 3 degrees of freedom, namely: pitch, yaw and roll, and their direction of rotation are those shown in the image below:
For reference, on the scheme above, we are visualizing the image sphere looking down from its top.
Scripts
The module installs a a script 3 different commands to help you deal with your images.
-
About the source image used on the examples:
Author: Bob Dass
Title: View From The Deck
Available at: https://flickr.com/photos/54144402@N03/50677156243/in/faves-195024173@N05/
License: Creative Commons - Attribution 2.0
License summary here
License text here
↩
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file photonbend-1.0.1.tar.gz.
File metadata
- Download URL: photonbend-1.0.1.tar.gz
- Upload date:
- Size: 20.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.2.2 CPython/3.10.4 Linux/5.15.90.1-microsoft-standard-WSL2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ead4e114d9b9d1a6b28456dcca2a0463b1e3e5d07d4b418d7429b6d7c5f9334c
|
|
| MD5 |
d01647cf66fc41288ded2a8cf8f8ce9e
|
|
| BLAKE2b-256 |
25ca1212b0ce00f9147b2d07fcca1e3ddfcd4624b6c602ba8671035231ad4696
|
File details
Details for the file photonbend-1.0.1-py3-none-any.whl.
File metadata
- Download URL: photonbend-1.0.1-py3-none-any.whl
- Upload date:
- Size: 34.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.2.2 CPython/3.10.4 Linux/5.15.90.1-microsoft-standard-WSL2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f6360b678e78665118e96d21874ba4d80aa515cc566ce0dfcad9adbb304b9fa9
|
|
| MD5 |
729d2e2788f7d4d3a5a62190d8773989
|
|
| BLAKE2b-256 |
bbeba9a8f06b333188854c8427ae8cb7c8913fd86c3edf3ecc909c2ac49a9dba
|