Skip to main content

Non-photorealistic Rendering with Cartesian Genetic Programming Using Graphics Processing Units

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10783))

Abstract

A non-photorealistic rendering system implemented with Cartesian genetic programming (CGP) is discussed. The system is based on Baniasadi’s NPR system using tree-based GP. The CGP implementation uses a more economical representation of rendering expressions compared to the tree-based system. The system borrows their many-objective fitness evaluation scheme, which uses a model of aesthetics, colour testing, and image matching. GPU acceleration of the paint stroke application results in up to 6 times faster rendering times compared to CPU-based renderings. The convergence dynamics of CGP’s \(\mu +\lambda \) evolutionary strategy was more unstable than conventional GP runs with large populations. One possible reason may be the sensitivity of the smaller \(\mu +\lambda \) population to the many-objective ranking scheme, especially when objectives are in conflict with each other. This instability is arguably an advantage as an exploratory tool, especially when considering the subjectivity inherent in evolutionary art.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    http://www.cosc.brocku.ca/~bross/CGP_NPR/Gallery/.

  2. 2.

    https://en.wikipedia.org/wiki/GeForce_10_series.

References

  1. Bentley, P., Corne, D.: Creative Evolutionary Systems. Morgan Kaufmann, San Francisco (2002)

    Google Scholar 

  2. Romero, J., Machado, P.: The Art of Artificial Evolution. Natural Computing Series. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-72877-1

    Book  Google Scholar 

  3. Dorin, A.: Aesthetic fitness and artificial evolution for the selection of imagery from the mythical infinite library. In: Kelemen, J., Sosík, P. (eds.) ECAL 2001. LNCS (LNAI), vol. 2159, pp. 659–668. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44811-X_76

    Chapter  Google Scholar 

  4. Dawkins, R.: The Blind Watchmaker. W. W. Norton & Company Inc., New York (1986)

    Google Scholar 

  5. Sims, K.: Interactive evolution of equations for procedural models. Visual Comput. 9, 466–476 (1993)

    Article  Google Scholar 

  6. Graf, J., Banzhaf, W.: Interactive evolution of images. In: Proceedings of the International Conference on Evolutionary Programming, pp. 53–65 (1995)

    Google Scholar 

  7. Yip, C.: Evolving image filters. Master’s thesis, Imperial College of Science, Technology, and Medicine, September 2004

    Google Scholar 

  8. Bergen, S., Ross, B.: Aesthetic 3D model evolution. Genet. Program Evolvable Mach. 4(3), 339–367 (2013)

    Article  Google Scholar 

  9. Gooch, B., Gooch, A.: Non-photorealistic Rendering. A.K. Peters, Natick (2001)

    MATH  Google Scholar 

  10. Strothotte, T., Schlechtweg, S.: Non-photorealistic Computer Graphics: Modeling, Rendering, and Animation. Morgan Kaufmann, San Francisco (2002)

    Google Scholar 

  11. Kang, H., Chakraborty, U., Chui, C., He, W.: Multi-scale stroke-based rendering by evolutionary algorithm. In: Proceedings of the International Workshop on Frontiers of Evolutionary Algorithms, JCIS, pp. 546–549 (2005)

    Google Scholar 

  12. Barile, P., Ciesielski, V., Trist, K.: Non-photorealistic rendering using genetic programming. In: Li, X., et al. (eds.) SEAL 2008. LNCS, vol. 5361, pp. 299–308. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89694-4_31

    Chapter  Google Scholar 

  13. Colton, S., Torres, P.: Evolving approximate image filters. In: Giacobini, M., et al. (eds.) EvoWorkshops 2009. LNCS, vol. 5484, pp. 467–477. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-01129-0_53

    Chapter  Google Scholar 

  14. Izadi, A., Ciesielski, V.: Evolved strokes in non photorealistic rendering. In: Proceedings of the World Academy of Science Engineering and Technology (WASET), vol. 67, pp. 1–6 (2010)

    Google Scholar 

  15. Neufeld, C., Ross, B., Ralph, W.: The evolution of artistic filters. In: Romero, J., Machado, P. (eds.) The Art of Artificial Evolution. Natural Computing Series, pp. 335–356. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-72877-1_16

    Chapter  Google Scholar 

  16. Baniasadi, M.: Genetic programming for non-photorealistic rendering. MSc thesis, Department of Computer Science, Brock University (2013)

    Google Scholar 

  17. Baniasadi, M., Ross, B.J.: Exploring non-photorealistic rendering with genetic programming. Genet. Program Evolvable Mach. 16(2), 211–239 (2015)

    Article  Google Scholar 

  18. Bakurov, I.: Non-photorealistic rendering with Cartesian genetic programming using graphic processing units. Master’s thesis, Department of Computer Science, Brock University (2017)

    Google Scholar 

  19. Miller, J.F.: Cartesian genetic programming. In: Miller, J. (ed.) Cartesian Genetic Programming. Natural Computing Series, pp. 17–34. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-17310-3_2

    Chapter  Google Scholar 

  20. Harding, S., Leitner, J., Schmidhuber, J.: Cartesian genetic programming for image processing. In: Riolo, R., Vladislavleva, E., Ritchie, M., Moore, J. (eds.) Genetic Programming Theory and Practice X, pp. 31–44. Springer, New York (2013). https://doi.org/10.1007/978-1-4614-6846-2_3

    Chapter  Google Scholar 

  21. Ashmore, L., Miller, J.F.: Evolutionary art with Cartesian genetic programming (2004). http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.571.9476. Accessed 20 Sept 2016

  22. Shiraishi, M., Yamaguchi, Y.: An algorithm for automatic painterly rendering based on local source image approximation. In: Proceedings of NPAR 2000, pp. 53–58. ACM Press (2000)

    Google Scholar 

  23. Langdon, W.: Graphics processing units and genetic programming: an overview. Soft. Comput. 15, 1657–1669 (2011)

    Article  Google Scholar 

  24. NVIDIA: CUDA enabled GPUs. https://developer.nvidia.com/cuda-gpus. Accessed 18 June 2017

  25. Maghoumi, M.: Real-time automatic object classification and tracking using genetic programming and NVIDIA CUDA. Master’s thesis, Department of Computer Science, Brock University (2014)

    Google Scholar 

  26. Maghoumi, M.: CudaGP. https://github.com/Maghoumi/CudaGP. Accessed 18 Oct 2017

  27. Hutter, M.: jCUDA framework. http://www.jcuda.org. Accessed 31 July 2017

  28. Ross, B., Ralph, W., Zong, H.: Evolutionary image synthesis using a model of aesthetics. In: CEC 2006, pp. 1087–1094, July 2006

    Google Scholar 

  29. Smith, J., Chang, S.F.: VisualSEEk: a fully automated content-based image query system. In: Proceedings of the ACM-MM, pp. 87–98 (1996)

    Google Scholar 

  30. Bentley, P.J., Wakefield, J.P.: Finding acceptable solutions in the Pareto-optimal range using multiobjective genetic algorithms. In: Chawdhry, P.K., Roy, R., Pant, R.K. (eds.) Soft Computing in Engineering Design and Manufacturing, pp. 231–240. Springer, London (1998). https://doi.org/10.1007/978-1-4471-0427-8_25

    Chapter  Google Scholar 

  31. Corne, D., Knowles, J.: Techniques for highly multiobjective optimisation: some nondominated points are better than others. In: Proceedings of the GECCO 2007, pp. 773–780. ACM Press (2007)

    Google Scholar 

  32. Bergen, S., Ross, B.J.: Evolutionary art using summed multi-objective ranks. In: Riolo, R., McConaghy, T., Vladislavleva, E. (eds.) Genetic Programming - Theory and Practice VIII. Genetic and Evolutionary Computation, vol. 8, pp. 227–244. Springer, New York (2010). https://doi.org/10.1007/978-1-4419-7747-2_14

    Chapter  Google Scholar 

Download references

Acknowledgements

This research was supported by NSERC Discovery Grant RGPIN-2016-03653.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Brian J. Ross .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Bakurov, I., Ross, B.J. (2018). Non-photorealistic Rendering with Cartesian Genetic Programming Using Graphics Processing Units. In: Liapis, A., Romero Cardalda, J., Ekárt, A. (eds) Computational Intelligence in Music, Sound, Art and Design. EvoMUSART 2018. Lecture Notes in Computer Science(), vol 10783. Springer, Cham. https://doi.org/10.1007/978-3-319-77583-8_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-77583-8_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-77582-1

  • Online ISBN: 978-3-319-77583-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics