In order to observe targets in expanded depths of view in light field imaging, we design an open source light field parallel refocusing GUI software named OpenRefocus, which is based on classical spatial projection integration. OpenRefocus consists of four-tier MVC-style separation framework including presentation layer for display and interaction, core processing layer for light field refocusing, data acquisition layer for input and output, and security monitoring layer for exception monitor. Moreover, OpenRefocus adopts Qt-based multi-threaded asynchronous processing architecture to improve the resource utilization rates of both CPU and system, and it is also equipped with CUDA-based distributed parallel computing architecture aiming at significantly accelerating the light field refocusing speed. OpenRefocus supports GUI in Windows platform, and it is a code-free software for users.
Steps to reproduce
For developers, you can open /OpenRefocusSourceCode/LFRefocus.pro by Qt creator to load the whole project, pay special attention to reconfigure .pro file. Additional tools that software depends on include Qt-5.15.2, CUDA-11.1, MSVC-2019-64bit and OpenCV-3.4.5. For users, if you want to use CPU mode, use GPU mode with GTX-1050Ti, you can download /OpenRefocusRelease and then open /OpenRefocusRelease/OpenRefocus.exe. If you want to use GPU mode with more version GPUs, reconfigure CUDA setting in the .pro file.