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 ▪ 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 ▪ 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 ▪ 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 summaryProgram title: HoloGen v2.2.1.17177CPC Library link to program files:https://doi.org/10.17632/nzk4swwsrg.1Developer's repository link:https://gitlab.com/CMMPEOpenAccess/HoloGenLicensing provisions: MITProgramming language: Cuda, ▪, ▪External packages: Cuda, ManagedCuda, MathNet, Newtonsoft.Json, NUnit, AForge, Accord, ClosedXML, CefSharp, PdfiumViewer, Xceed, NHotkey, SharpDX, MaterialSkin, Xamarin.forms, HelixToolkit, Dragablz, LiveCharts, MahAppsNature 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 controlSolution 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 manipulationAdditional 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.
Read full abstract