File Exchange

image thumbnail

Light-Field PSF Transpose Computation

version 0.0.8 (3.73 KB) by Corban Swain
MATLAB Implementation of the Eberhart 2020 Light-Field Point Spread Function Transpose Computation

1 Download

Updated 17 Oct 2020

View License

This function transposes a light-field point-spread function.

# Syntax
Y = computeLfPsfTranspose(lfPsf)
Y = computeLfPsfTranspose(___, 'DoKeepAllValues', doKeep)

# Inputs
* `lfPsf` - a 5D array representing the light-field PSF. The first 2 dimensions should represent image space, the third and fourth dimensions should represent object space, and the fifth dimension should represent the z or axial-dimension of object space.
* type: numeric array
* size(lfPsf, 3) and size(lfPsf, 4) must be odd.

## Parameter/value pairs:
* 'DoKeepAllValues' (default: false) - boolean flag to perform the transpose on a padded array, followed by unpadding of the result. This is done such that no values are lost from the original PSF (although if the image-space dimensions have even size, some values will still be lost). If this flag is set to false the output will have a border of zeros of width ((size(lfPsf, [3, 4]) - 1) / 2).
* type: logical scalar

# Output:
* `lfPsfT` - the transposed light-field PSF.
* type: class(lfPsf)
* size: size(lfPsf)

# Note
This is an implementation of the index-switching transpose described by Martin Eberhart in "Efficient algorithm for calculating transposed PSF matrices for 3D light field deconvolution" (2020).

Cite As

Corban Swain (2020). Light-Field PSF Transpose Computation (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (0)

MATLAB Release Compatibility
Created with R2020b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!