This paper presents an algorithm for efficient image synthesis. The main goal is to generate realistic virtual views of a dynamic scene from a new camera viewpoint. The algorithm works on-line on two or more incoming video streams from calibrated cameras. A reasonably large distance between the cameras is allowed.
The main focus is on video-conferencing applications, where the background is assumed to be static. By performing a foreground segmentation, the foreground and the background can be handled separately. For the background a slower, more accurate algorithm can be used. Reaching a high throughput is most crucial for the foreground, as this is the dynamic part of the scene.
We use a combined approach of CPU and GPU processing. Performing depth calculations on the GPU is very efficient, thanks to the possibilities of the latest graphical boards. However the result tends to be rather noisy. As such we apply a regularisation algorithm on the CPU to ameliorate this result. The final interpolation is again provided by rendering on the graphical board.
CPU and GPU can run completely in parallel. This is realised by an implementation using multiple threads. As such different algorithms can be applied to two frames simultaneously and the total throughput is increased.