Journal of Real-Time Image Processing

, Volume 11, Issue 1, pp 127–139 | Cite as

Performance engineering to achieve real-time high dynamic range imaging

  • Harald Köstler
  • Markus Stürmer
  • Thomas Pohl
Original Research Paper


Image-processing applications like high dynamic range imaging can be done efficiently in the gradient space. For it, the image has to be transformed to gradient space and back. While the forward transformation to gradient space is fast by using simple finite differences, the backward transformation requires the solution of a partial differential equation. Although one can use an efficient multigrid solver for the backward transformation, it shows that a straightforward implementation of the standard algorithm does not lead to satisfactory runtime results for real-time high dynamic range compression of larger 2D X-ray images even on GPUs. Therefore, we do a rigorous performance analysis and derive a performance model for our multigrid algorithm that guides us to an improved implementation, where we achieve an overall performance of more than 25 frames per second for 16.8 Megapixel images doing full high dynamic range compression including data transfers between CPU and GPU. Together with a simple OpenGL visualization it becomes possible to perform real-time parameter studies on medical data sets.


High dynamic range imaging GPGPU Multigrid Performance model 


  1. 1.
    Brandt, A.: Multi-level adaptive solutions to boundary-value problems. Math. Comput. 31(138), 333–390 (1977)zbMATHMathSciNetCrossRefGoogle Scholar
  2. 2.
    Briggs, W., Henson, V., McCormick, S.: A Multigrid Tutorial, 2nd edn. Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, USA (2000)Google Scholar
  3. 3.
    Christadler, I., Köstler, H., Rüde, U.: Robust and efficient multigrid techniques for the optical flow problem using different regularizers. In: Hülsemann F, Kowarschik M, Rüde U (eds) Proceedings of 18th Symposium Simulationstechnique ASIM 2005, SCS Publishing House, Erlangen, Germany, Frontiers in Simulation, vol. 15, pp. 341–346, preprint version published as Tech. Rep. 05-6 (2005)Google Scholar
  4. 4.
    Christen, M., Schenk, O., Burkhart, H.: Patus: A code generation and autotuning framework for parallel iterative stencil computations on modern microarchitectures. In: In International Parallel and Distributed Processing Symposium (IPDPS), IEEE, pp. 676–687 (2011)Google Scholar
  5. 5.
    Douglas C., Hu J., Kowarschik M., Rüde U., Wei C.: Cache optimization for structured and unstructured grid multigrid. Electr. Transact. Numer. Anal. (ETNA) 10:21–40 (2000)zbMATHGoogle Scholar
  6. 6.
    Fattal R., Lischinski D., Werman M.: (2002) Gradient domain high dynamic range compression. ACM Transact. Graph. 21(3):249–256CrossRefGoogle Scholar
  7. 7.
    Frigo, M., Strumpen, V.: Cache oblivious stencil computations. In: Arvind, Rudolph L (eds.) Proceedings of the 19th annual international conference on Supercomputing, ACM, pp 361–366 (2005)Google Scholar
  8. 8.
    Gradl, T., Freundl, C., Köstler, H., Rüde, U.: Scalable multigrid. In: Wagner, S., Steinmetz, M., Bode, A., Brehm, M. (eds) High Performance Computing in Science and Engineering. Garching/Munich 2007, LRZ, KONWIHR, Springer, Berlin, pp. 475–483 (2008)Google Scholar
  9. 9.
    Hackbusch, W.: Multi-Grid Methods and Applications. Springer, Berlin (1985)Google Scholar
  10. 10.
    He, K., Sun, J., Tang, X.: Guided image filtering. Computer Vision–ECCV 2010 pp. 1–14 (2010)Google Scholar
  11. 11.
    Hülsemann, F., Kowarschik, M., Mohr, M., Rüde, U.: Parallel geometric multigrid. In: Bruaset A, Tveito A (eds) Numerical Solution of Partial Differential Equations on Parallel Computers, Lecture Notes in Computational Science and Engineering, vol. 51, Springer, Berlin, chap. 5, pp. 165–208 (2005)Google Scholar
  12. 12.
    Kamil, S., Chan, C., Oliker, L., Shalf, J., Williams, S.: An auto-tuning framework for parallel multicore stencil computations. In: In International Parallel and Distributed Processing Symposium (IPDPS), pp. 1–12 (2010)Google Scholar
  13. 13.
    Köstler, H.: A Multigrid Framework for Variational Approaches in Medical Image Processing and Computer Vision. PhD thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg (2008)Google Scholar
  14. 14.
    Köstler H., Stürmer M., Rüde U.: A fast full multigrid solver for applications in image processing. Numerical linear algebra with applications 15(2–3):187–200 (2008)zbMATHMathSciNetGoogle Scholar
  15. 15.
    Kowarschik, M., Wei, C., Rüde, U.: DiMEPACK: a cache–optimized multigrid library. In: Arabnia H (ed.) Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2001), CSREA Press, Irvine, CA, USA, Las Vegas, NV, USA, vol. I, pp. 425–430 (2001)Google Scholar
  16. 16.
    Levin, A., Zomet, A., Peleg, S., Weiss, Y.: Seamless image stitching in the gradient domain. Lecture Notes in Computer Science, Computer Vision-ECCV 2004 3024/2004:377–389 (2004)Google Scholar
  17. 17.
    McCann, J., Pollard, N.: Real-time gradient-domain painting. ACM Transact. Graphics-TOG 27(3):93–93 (2008)Google Scholar
  18. 18.
    Schäfer, A., Fey, D.: High Performance Stencil Code Algorithms for GPGPUs. Procedia Comput. Sci. 4, 2027–2036 (2011)CrossRefGoogle Scholar
  19. 19.
    Stürmer, M., Treibig, J., Rüde, U.: Optimising a 3d multigrid algorithm for the IA-64 architecture. Int. J. Comput. Sci. Eng. 4(1), 29–35 (2008)Google Scholar
  20. 20.
    Stürmer, M., Wellein, G., Hager, G., Köstler, H., Rüde, U.: Challenges and potentials of emerging multicore architectures. In: Wagner, S., Steinmetz, M., Bode, A., Brehm, M. (eds.) High Performance Computing in Science and Engineering. Garching/Munich 2007, LRZ, KONWIHR, Springer, Berlin, pp. 551–566 (2008)Google Scholar
  21. 21.
    Trottenberg, U., Oosterlee, C., Schüller, A.: Multigrid. Academic Press, San Diego, CA, USA (2001)Google Scholar
  22. 22.
    Wang, T., Ke, W., Zwao, D., Chen, F., Chiu, C: Block-based gradient domain high dynamic range compression design for real-time applications. In: Image Processing, 2007. ICIP 2007. IEEE International Conference on, IEEE Computer Society Washington, DC, USA, vol. 3, pp. 561–564 (2007)Google Scholar
  23. 23.
    Wienands, R., Joppich, W.: Practical Fourier analysis for multigrid methods, Numerical Insights, vol. 5, Chapmann and Hall/CRC Press, Boca Raton, Florida, USA (2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  1. 1.Universität Erlangen-Nürnberg, Lehrstuhl für SystemsimulationErlangenGermany
  2. 2.Siemens AG, Healthcare Sector, Angiography and Interventional X-Ray SystemsForchheimGermany

Personalised recommendations