Metameric Varifocal Holograms
David R. Walton, Koray Kavaklı, Rafael Kuffner dos Anjos, David Swapp, Tim Weyrich, Hakan Urey, Anthony Steed, Tobias Ritschel, and Kaan Akşit
Paper | Video | Supplementary Material | Code (Hologram Optimisation) | Library (Metameric Loss)
Abstract
Computer-Generated Holography (CGH) offers the potential for genuine, high-quality three-dimensional visuals. However, fulfilling this potential remains a practical challenge due to computational complexity and visual quality issues.
We propose a new CGH method that exploits gaze-contingency and perceptual graphics to accelerate the development of practical holographic display systems. Firstly, our method infers the user’s focal depth and generates images only at their focus plane without using any moving parts. Second, the images displayed are metamers; in the user’s peripheral vision, they need only be statistically correct and blend with the fovea seamlessly. Unlike previous methods, our method prioritises and improves foveal visual quality without causing perceptually visible distortions at the periphery.
To enable our method, we introduce a novel metameric loss function that robustly compares the statistics of two given images for a known gaze location. In parallel, we implement a model representing the relation between holograms and their image reconstructions. We couple our differentiable loss function and model to metameric varifocal holograms using a stochastic gradient descent solver. We evaluate our method with an actual proof-of-concept holographic display, and we show that our CGH method leads to practical and perceptually three-dimensional image reconstructions.
Code
We provide source code for the metameric loss and hologram optimisation separately, so that the metameric loss can be used on its own for other purposes if desired.
The metameric loss is part of the odak
computational optics library. To use this we recommend installing odak
using pip
, for example:
$ pip install odak
Depending on your environment you may need to call pip3
rather than pip
. Please ensure you have installed version 0.1.9 or newer. For details on installation and how to use the loss function, please see the odak documentation.
The hologram optimisation code is located here. Please see the repository README
for installation and usage instructions.
Citation
@inproceedings{walton2022metameric,
title={Metameric Varifocal Holograms},
author={Walton, David R and Kavakl{\i}, Koray and Dos Anjos, Rafael Kuffner and Swapp, David and Weyrich, Tim and Urey, Hakan and Steed, Anthony and Ritschel, Tobias and Ak{\c{s}}it, Kaan},
booktitle={2022 IEEE Conference on Virtual Reality and 3D User Interfaces (VR)},
pages={746--755},
year={2022},
organization={IEEE}
}
Acknowledgements
This work was funded by the EPSRC/UKRI project EP/T01346X/1.