Triokulus - Efficient Image Processing for 3D-Tracking Systems
The Triokulus project was a research project funded by the German Federal Ministry for Education and Research (BMBF).
It focused on the development of FPGA-based, "smart" cameras for augmented reality applications. The project was
carried out in close collaboration with industry and the University of Augsburg.
Within the Triokulus project, results were gained in manyfold fields of image processing
in conjunction with the use of embedded systems.
Firstly, demonstrators of optical tracking systems were realized with software implementations, also running on embedded hardware.
This was achieved by a careful selection of algorithms in the field of optical tracking, by
optimizing them and by an efficient implementation of the system.
The demonstrators finally realize efficient object recognition and localization tasks (including pose estimation in 3D space).
Furthermore, hardware structures (IP cores) for the use in FPGAs were developed. These are able to perform image processing tasks efficiently and can be used for example within so called Smart Cameras.
The essential feature of smart cameras is the efficient processing of specific tasks, so that, for example, in-camera pre-processed image data can be transmitted to the host.
Within the Triokulus project, hardware modules were developed for the following fields of image processing:
The modules are connected in a pipelined structure so that all image processing steps can be executed in real time.
- Real time image undistortion and rectification
- Real time calculation of depth maps
- Acceleration of the SURF detector stage
- Common image processing tasks to be executed in Smart Cameras (image capture, resizing, ...)