Repository logo
 

HoloGen: An open-source toolbox for high-speed hologram generation

Accepted version
Peer-reviewed

Type

Article

Change log

Authors

Gordon, GSD 
Wilkinson, TD 

Abstract

The rise of virtual and augmented reality systems has prompted an increase in interest in the fields of 2D and 3D computer-generated holography (CGH). The numerical processing required to generate a hologram is high and requires significant domain expertise. This has historically slowed the adoption of CGH in emerging fields. In this paper we introduce HoloGen, an open-source Cuda C and [Formula presented] framework for computer-generated holography. HoloGen unites, for the first time, a wide array of existing hologram generation algorithms with state of the art performance while attempting to remain intuitive and easy to use. This is enabled by a [Formula presented] and Windows Presentation Framework (WPF) graphical user interface (GUI). A novel reflection based parameter hierarchy is used to ensure ease of modification. Extensive use of [Formula presented] templates based on the Standard Template Library (STL), compile time flexibility is preserved while maintaining runtime performance. The current release of HoloGen unites implementations of well known generation algorithms including Gerchberg-Saxton (GS), Liu-Taghizadeh (LT), direct search (DS), simulated annealing (SA) and one-step phase-retrieval (OSPR) with less known specialist variants including weighted GS and Adaptive OSPR. Benchmarking results are presented for several key algorithms. The software is freely available under an MIT license. Program summary: Program title: HoloGen v2.2.1.17177 CPC Library link to program files: https://doi.org/10.17632/nzk4swwsrg.1 Developer's repository link: https://gitlab.com/CMMPEOpenAccess/HoloGen Licensing provisions: MIT Programming language: Cuda, [Formula presented], [Formula presented] External packages: Cuda, ManagedCuda, MathNet, Newtonsoft.Json, NUnit, AForge, Accord, ClosedXML, CefSharp, PdfiumViewer, Xceed, NHotkey, SharpDX, MaterialSkin, Xamarin.forms, HelixToolkit, Dragablz, LiveCharts, MahApps Nature of problem: Hologram generation for two-dimensional Fourier and Fresnel holograms displayed on amplitude or phase modulating spatial light modulators with binary or multi-level control Solution method: Algorithmic variants including Gerchberg-Saxton, Liu-Taghizadeh, Direct Search, Simulated Annealing and One-Step Phase-Retrieval. Includes real-time reporting, batch processing and complex field manipulation Additional comments include restrictions and unusual features: Graphical user interface only exposes access to two-dimensional hologram generation. Includes a novel reflection based parameter hierarchy for ease of modification.

Description

Keywords

Computer-generated holography, Optics, Iterative Fourier transform algorithm, Gerchberg-Saxton, Liu-Taghizadeh, Direct search, Simulated annealing, One-step phase-retrieval

Journal Title

Computer Physics Communications

Conference Name

Journal ISSN

0010-4655
1879-2944

Volume Title

270

Publisher

Elsevier BV
Sponsorship
Engineering and Physical Sciences Research Council (EP/I033491/1)
EPSRC (EP/T008369/1)
EPSRC (2108797)
Engineering and Physical Sciences Research Council (EP/L016567/1)
Cancer Research UK (C20/A20976)
Cancer Research UK (21102)
Cancer Research UK (24669)
EPSRC (EP/V055003/1)