Fractal Geometry Course

8,644 views

Published on

Many computer graphics and Image Processing effects owe much of their realism to the study of fractals and noise. This short tutorial is based on over a decade of teaching and research interests, and will take a journey from the motion of a microscopic particle to the creation of imaginary planets.

Further resources at:
http://wiki.rcs.manchester.ac.uk/community/Fractal_Resources_Tutorial

Published in: Education, Technology
1 Comment
10 Likes
Statistics
Notes
No Downloads
Views
Total views
8,644
On SlideShare
0
From Embeds
0
Number of Embeds
35
Actions
Shares
0
Downloads
420
Comments
1
Likes
10
Embeds 0
No embeds

No notes for slide
  • Fractals and Noise – Creation and Application Dr Martin J. Turner University of Manchester, UK [email_address] Abstract Many computer graphics and Image Processing effects owe much of their realism to the study of fractals and noise. This short tutorial is based on over a decade of teaching and research interests, and will take a journey from the motion of a microscopic particle to the creation of imaginary planets. This short tutorial looks at the history and explores the methods used by fractal generators to create all kinds of fractal textures. We will delve behind the fractal button given to designers and explore the various algorithms that are currently being used. These include the famous Voss/Mandelbrot algorithm as well as the popular divide-and-conquer fractal surface generators and Perlin noise generators. The fundamental properties fractals have, and hence some of their limitations, will also be discussed. An important part of the course will be spent in the study of noise and its various forms. Fractal noise is but one of an infinite series of noise types that can be used for synthetic imagery. Each has its own properties and uses that can be more appropriate than standard synthesised fractals. The important processes of fractional differentiation and integration will also be introduced which define a simple way to modify any formulaic shape. The course will include some extra topics including the popular use of Lindermayer systems, which is a simple language that can be used to create large branching structures. Also, an overview and research in the use of fractal compression tools to create infinite resolution textured enlargements. Other modern techniques involve use within exploratory visualization and even haptic interfaces. Background Knowledge Expected No specific knowledge is expected except an understanding of basic mathematical concepts. A general as well as a mathematically sound description of self-similar and correlation produced signals; noise and fractals is expected as outcome. Also it is wished to equip the delegates with knowledge and some experience of the limitations, using numerous practical examples. Biography of the Presenter Dr. Turner's work in different groups has covered a range of topics, where fractals, noise analysis, and image synthesis have been a recurring expertise since joining the Imaging Research Centre incorporating the Alias Centre of Excellence in 1994 at De Montfort University to running the Manchester Visualization Centre to the present day. Over many years of research and teaching, this has resulted in numerous research papers, a graduate research text published by Academic Press, invited presentations, and hosting a conference and one-day short course on the mathematics of Fractal Geometry for the Institute of Mathematics and its Applications (IMA) published 2002. The underlying mathematics has been used over the last seven years within a master course (MSc in Digital Signal and Image Processing - 2004) and in PhD topics, as well as in specialist training courses (Modified short course in Theory and Practice of Computer Graphics TP.CG Conference 2005). Topics that are strongly related have ranged from scientific visualization analysis to haptic development, designer image creation to infinite compression texture maps, and from mathematician nose filtering to image recognition.
  • Extra Resources Powerpoint slides cgislides.pdf Abridged set of tutorial notes cgip07.pdf Related Paper 1 cgipex1.pdf Related Paper 2 cgipex2.pdf
  • The second step is done by pre-computing a permutation table P with 256 entries. Perlin noise is well used to generate realistic image. For example, the left image shows just one perlin noise texture, which border looks very smooth. Many more different frequency perlin noise texture are added together get the right image, which is more natural look. Both images basic shapes are the same. But here we are more interested in another two issues size and direction which are vital to data visualization.
  • Fractal Geometry Course

    1. 1. Fractals and Noise – Creation and Application Short Tutorial Fractal Geometry Properties and Exploitation: 30+ years of Images Martin J. Turner Research Computing, University of Manchester [email_address]
    2. 2. Research Computing The University of Manchester Web: http://www.rcs.manchester.ac.uk/ <ul><li>Resources at: </li></ul><ul><li>http://wiki.rcs.manchester.ac.uk/community/Fractal_Resources_Tutorial </li></ul>
    3. 3. Contents of Presentation <ul><li>Introduction to Fractal Geometry. </li></ul><ul><li>Properties – Deterministic Fractals. </li></ul><ul><li>Noise – Creation and Images. </li></ul><ul><li>Language for Fractals. </li></ul><ul><li>Extra bits: </li></ul><ul><ul><li>Fractal Compression </li></ul></ul><ul><ul><li>Fractal Segmentation </li></ul></ul>
    4. 4. Introduction to Fractals and Chaos <ul><li>Algorithms used to generate fractals and chaotic fields depend on: </li></ul><ul><li>understanding a physical (e.g. non-linear) system; </li></ul><ul><li>clear and concise (mathematical) definition(s) of the field properties. </li></ul>
    5. 5. Example Applications <ul><li>Signal Processing: </li></ul><ul><li>Time Series Analysis, Speech Recognition </li></ul><ul><li>Image Processing: </li></ul><ul><li>Fractal Compression, Fractal Dimension Segmentation </li></ul><ul><li>Simulation: </li></ul><ul><li>Terrain Modelling, Image Synthesis, Music, Stochastic Fields </li></ul>
    6. 6. <ul><li>Financial: </li></ul><ul><li>Fractal Market Analysis, Futures Markets </li></ul><ul><li>Medicine: </li></ul><ul><li>Histology, Monitoring, Epidemiology </li></ul><ul><li>Military: </li></ul><ul><li>Visual Camouflage, Covert Digital Communications </li></ul>Example Applications
    7. 7. Brief History of Fractals/Chaos <ul><li>1815-1897: K W T Weierstrass Nowhere Differentiable Functions </li></ul><ul><li>1854-1912: J H Poincare </li></ul><ul><li>Non-Deterministic (Chaotic) Dynamics </li></ul><ul><li>1900s: Julia, Koch & others </li></ul><ul><li>Julia sets (simple fractals) - arise in connection with the iteration of a function of a complex variable </li></ul>
    8. 8. <ul><li>1886-1971: P Levy </li></ul><ul><li>Fractal Random Walks (Random Fractals) </li></ul><ul><li>1960s: E Lorenz </li></ul><ul><li>Nonlinear Systems Dynamics and Chaos </li></ul><ul><li>1970s: B Mandelbrot </li></ul><ul><li>Mandelbrot sets and the development of a general theory on the ‘Fractal Geometry of Nature’ (1975) </li></ul>Brief History of Fractals/Chaos
    9. 9. Brief History of Fractals/Chaos <ul><li>1815-1897: </li></ul><ul><li>K W T Weierstrass Nowhere Differentiable Functions </li></ul>
    10. 10. Brief History of Fractals/Chaos <ul><li>1815-1897: </li></ul><ul><li>K W T Weierstrass </li></ul>Matlab – speed.
    11. 11. Brief History of Fractals/Chaos <ul><li>1815-1897: </li></ul><ul><li>K W T Weierstrass Nowhere Differentiable Functions </li></ul>Dreadful Plague, Hermite Yesterday, if a new function was invented it was to serve some practical end; today they are specially invented only to show to the arguments of our fathers, and they will never have any other use Poincare
    12. 12. Aside: Fourier Series
    13. 13. Hilbert – one of the first useful fractals <ul><li>Hilbert Space Filling Curve </li></ul><ul><li>Suddenly we have uses; </li></ul><ul><li>Dimension reduction </li></ul><ul><li>Dithering style </li></ul><ul><li>Compression codecs </li></ul>
    14. 14. Hilbert – one of the first useful fractals <ul><li>Hilbert Space Filling Curve </li></ul><ul><li>Properties: Function f, </li></ul><ul><li>is a one-to-one mapping, </li></ul><ul><li>is onto, and </li></ul><ul><li>continuous function </li></ul><ul><li>There is no continuous inverse mapping. </li></ul>
    15. 15. Robert Brown – Non-Differentiation in nature <ul><li>varies in the wildest way in magnitude and direction, and does not tend to a limit as the time taken for an observation decrease </li></ul><ul><li>nature contains suggestions of non-differentiable as well as differentiable processes </li></ul><ul><li>Jean Perrin </li></ul>Step: 32, Length: 6392
    16. 16. Robert Brown – non-differentiation in nature <ul><li>varies in the wildest way in magnitude and direction, and does not tend to a limit as the time taken for an observation decrease </li></ul><ul><li>nature contains suggestions of non-differentiable as well as differentiable processes </li></ul><ul><li>Jean Perrin </li></ul>Step: 16, Length: 8747
    17. 17. Robert Brown – non-differentiation in nature <ul><li>varies in the wildest way in magnitude and direction, and does not tend to a limit as the time taken for an observation decrease </li></ul><ul><li>nature contains suggestions of non-differentiable as well as differentiable processes </li></ul><ul><li>Jean Perrin </li></ul>Step: 8, Length: 12091
    18. 18. Robert Brown – non-differentiation in nature <ul><li>varies in the wildest way in magnitude and direction, and does not tend to a limit as the time taken for an observation decrease </li></ul><ul><li>nature contains suggestions of non-differentiable as well as differentiable processes </li></ul><ul><li>Jean Perrin </li></ul>Step: 4, Length: 17453
    19. 19. Texture and Fractals <ul><li>Texture is an elusive notion which mathematicians and scientists find hard to grasp </li></ul><ul><li>Much of Fractal Geometry can be considered to be an intrinsic study of texture </li></ul><ul><li>Benoit Mandelbrot </li></ul>
    20. 20. The Fractal Geometry of Nature: Clouds Photo from Manchester, UK
    21. 21. Islamic Art: Self-Repeating Patterns
    22. 22. Self-Similarity by M C Escher
    23. 23. Self-Similarity by K Hokusai - Japanese Art from the 1800s
    24. 24. Self-Similarity by Snow Photos by Patricia Rasmussen
    25. 25. Texture by Jackson Pollock
    26. 26. Self-Similarity and J S Bach
    27. 27. This movement depicts the island as a physical object. There are three structural principles at work: 1) reading the silhouette of the island seen from the shore (east to west) as a graph with range/density along the y-axis and time (19') along the x-axis 2) alternating &quot;inbreaths&quot; and &quot;outbreaths&quot; of varying durations calculated by careful measurement of the inlets and outlets of the island's shoreline, as shown on a hand- drawn map 3) a series of soundscapes representing the various environments encountered during a brisk walk around the island (which takes 19'). Self-Similarity within Music ISLAND SYMPHONY: Andrew Hugill
    28. 28. Fractal: Origin of the word? 30+ years old! <ul><li>The word Fractal was introduced by B Mandelbrot in the 1970s. </li></ul><ul><li>The term fractal is derived from the Latin adjective fractus. The corresponding Latin verb frangere means ‘to break’, to create irregular fragments. In addition to ‘fragmaneted’ fractus should also mean ‘irregular’, both meanings being preseved in fragment </li></ul>
    29. 29. Fractal: Mandelbrot Sets Introduction of CG in the 70’s “ Objets Fractals” – published 1975 “ Fractals Form Chance and Dimension” – published 1977 Zooming into the Mandelbrot Set`
    30. 30. Fractal: Mandelbrot Sets Introduction of CG in the 70’s “ The Fractal Geometry of Nature” – published 1982 Zooming into the Mandelbrot Set`
    31. 31. Properties of Fractals: The Von Koch Curve Initiator: Production Rule:
    32. 32. Properties of Fractals: The Von Koch Curve Repeating the Production rule again and again and again.
    33. 33. Properties of Fractals: The Von Koch Island Joining three Curves gives us an Island.
    34. 34. Properties of Fractals: The Von Koch Island
    35. 35. Fundamental properties of a fractal signal <ul><li>It is nowhere differentiable. </li></ul><ul><li>It is infinitely long. </li></ul><ul><li>It is finitely bounded. </li></ul><ul><li>It has a notion of self-similarity at each level. </li></ul>
    36. 36. Dimension of a Fractal The dimension is the rate at which the signal approaches infinite length. A smooth signal has a lower dimension.
    37. 37. Dimension of a Fractal
    38. 38. Box Counting – Dimension
    39. 39. Fractional Brownian Motion fBm has zero mean Gaussian distribution increments with variance; with scaling property Most famous case when, H=1/2
    40. 40. Fractional Brownian Motion fBm is related to Box Counting So the number of boxes,
    41. 41. Power Spectrum Method We consider this a ‘favoured’ system; We wish to match a power spectrum decay rate, that has similar properties to fBm
    42. 42. Euclidean Objects in Fourier Space
    43. 43. Fractal Objects in Fourier Space
    44. 44. Frequency Spectrum and Log-Log <ul><li>Frequency spectrum F is proportional to (Frequency) -q or </li></ul><ul><li>F = c/k q </li></ul><ul><li>where c is a constant and k denotes frequency. </li></ul><ul><li>Take logs of both side and we get </li></ul><ul><li>log(F) = C - qlog(k) where C = log(c) </li></ul><ul><li>Equation describes a straight line with a negative gradient determined by value of q. </li></ul>
    45. 45. Fractal Signal of Koch Curve and its Log-Log Frequency Spectrum
    46. 46. The Fractal Dimension D and q (the Fourier Dimension) <ul><li>The larger the value of the fractal dimension D the smaller the value of q. </li></ul><ul><li>D and q must be related in some way. </li></ul><ul><li>For fractal functions: q=(5-2D) /2; 1<D<2. </li></ul><ul><li>The Fourier Dimension determines the ‘roughness’, ‘texture’ or frequency characteristics or spectrum of the fractal. </li></ul>
    47. 47. Random Fractals and Nature: Stochastic Noise <ul><li>Very few natural shapes are regular fractals. </li></ul><ul><li>The majority of natural shapes are statistically self-affine fractals. </li></ul><ul><li>As we zoom into a random fractal, the shape changes, but the distribution of lengths (texture) remains the same. </li></ul>
    48. 48. Fundamental Definition of a Random Fractal Signal: Frequency Spectrum <ul><li>Let f be a random function with spectrum F. </li></ul><ul><li>Let n be ‘white’ noise with spectrum N. </li></ul><ul><li>If F = N/k q where k is frequency, then a property of f is that </li></ul><ul><li>Pr[f(  x)] =  q Pr[f(x)] </li></ul><ul><li>N.B. The equation for statistical self-affinity implies that the spectrum of a fractal obeys an inverse q-power law. </li></ul>
    49. 49. Randomisation of the Koch Curve
    50. 50. Aside: all the fractals!
    51. 51. Summary Objects Self-similar Classical Deterministic Statistical Random Real Pure Chaotic
    52. 52. Noise: White to Black Fourier Spectrum has the property, black >2 Brown 1.5 Pink 1 White 0 Colour
    53. 53. <ul><li>Basic property is that the Power Spectrum is proportional to </li></ul><ul><li>Basic algorithm is thus: </li></ul><ul><li>1. Compute white noise field n. </li></ul><ul><li>2. Compute DFT of n to give N (complex). </li></ul><ul><li>3. Filter N with filter </li></ul><ul><li>4. Compute inverse DFT of result to give u[i] (real part) - fractal signal. </li></ul>Simulation of Random Fractal Signals
    54. 54. Fractal Signal for D=1.2 (top) with Log-Log Power Spectrum (bottom)
    55. 55. Noise: White to Black – Elegant Algorithm
    56. 56. Noise: Fourier Fractals Matlab Code
    57. 57. Noise: Non-Fourier Subdivide – a grid adding noise at each level Matlab example
    58. 58. Perlin Noise – a popular alternative Similar structure but the sum of weighted frequencies. Very similar to previous technique but values of ‘d’ from a LUT Perlin Noise from Jia Liu
    59. 59. Control of Perlin Noise Perlin Noise from Jia Liu
    60. 60. Parameters control Perlin Noise from Jia Liu
    61. 61. Tensor Gravity Field Analysis Perlin Noise from Jia Liu
    62. 62. Tensor Gravity Field Analysis Perlin Noise from Jia Liu
    63. 63. Aside: Fractional Brownian Motion
    64. 64. Aside: Fractional Brownian Motion P=0.50, D=1.621 P=0.75, D=1.609
    65. 65. Aside: Fractional Brownian Motion P=0.10, D=1.690 P=0.25, D=1.641
    66. 66. Adding Deterministic Information <ul><li>How can we incorporate a priori information on the large scale structure of a fractal field and thus Tailor it accordingly? </li></ul><ul><li>Replace white noise field n by (1-t)n+tp where p is a user defined function and t (0<t<1) is a ‘transmission coefficient’. </li></ul>
    67. 67. Example: Sine Wave with Fractal Noise (t=0.1) 0 200 400 600 800 1000 1200 0.4 0.41 0.42 0.43 0.44 0.45 0.46 0.47 10 0 10 1 10 2 10 3 10 4 10 -6 10 -4 10 -2 10 0 10 2 10 4 10 6
    68. 68. Adding Deterministic Info.
    69. 69. Adding Deterministic Info. Matlab system from J. Blackledge
    70. 70. Fractal Clouds: q=1.9
    71. 71. Fractal Clouds: q=1.8
    72. 72. Fractal Clouds: q=1.7
    73. 73. Fractal Clouds: q=1.6
    74. 74. Fractal Clouds: q=1.5
    75. 75. Fractal Clouds: q=1.4
    76. 76. Fractal Clouds: q=1.3
    77. 77. Novel Methods <ul><li>Use of Transparency as a texture modifier for an ellipse </li></ul>
    78. 78. Novel Methods <ul><li>Use of 3D fractal texture bumpmap </li></ul><ul><li>Fractal transparency for rings on a circle </li></ul>
    79. 79. Matlab system from J. Blackledge
    80. 80. Divergent fractal fields <ul><li>Consider the 2D stochastic fractional divergence equation </li></ul>Matlab system from J. Blackledge
    81. 81. Matlab system from J. Blackledge
    82. 82. Rotational fractal fields <ul><li>Consider the 2D stochastic fractional rotation equation </li></ul>Matlab system from J. Blackledge
    83. 83. Matlab system from J. Blackledge
    84. 84. Fractal flow fields <ul><li>Consider the 2D stochastic fractional flow equation </li></ul><ul><li>q 2 >q 1 : Flow is in x-direction </li></ul><ul><li>q 2 <q 1 : Flow is in y-direction </li></ul>Matlab system from J. Blackledge
    85. 85. Matlab system from J. Blackledge
    86. 86. Fractals in Haptics <ul><li>Controlling a multi-frequency haptic vibration device. </li></ul>
    87. 87. Generalisation <ul><li>Random fractal process: PSDF=ck -q </li></ul><ul><li>Ornstein-Uhlenbeck process: ck (k 0 2 +k 2 ) -1 </li></ul><ul><li>Bermann process: c |k| g (k 0 2 +k 2 ) -1 </li></ul><ul><li>Combining the results we can consider the following generalisation: </li></ul><ul><li>c |k| g (k 0 2 +k 2 ) -q </li></ul><ul><li>where k 0 is a ‘carrier frequency’, c is a constant and (q, g) are fractal parameters. </li></ul>
    88. 88. Book on fractal geometry Theory, applications and algorithms of fractal geometry for image synthesis, image processing and computer vision
    89. 89. Pause…
    90. 90. Language for Fractals <ul><li>Lindermayer Systems </li></ul>
    91. 91. Language for Fractals: Ex 1.
    92. 92. Language for Fractals: Ex 2.
    93. 93. Language for Fractals: Ex 2.
    94. 94. Language for Fractals: Ex 2.
    95. 95. Language for Fractals: Ex 2.
    96. 96. Language for Fractals: Ex 2.
    97. 97. Language for Fractals: Ex 2.
    98. 98. Language for Fractals: FractInt
    99. 99. Language for Fractals: FractInt Ex. 1
    100. 100. Language for Fractals: FractInt Ex. 2 – (Revisited)
    101. 101. Language for Fractals: FractInt Ex. 3
    102. 102. Language for Fractals: FractInt Ex. 4
    103. 103. Language for Fractals: Ex. 4+
    104. 104. Language for Fractals: Ex. 4++
    105. 105. Language for Fractals: Ex. 4.5++ Simulating and Modeling Lichen Growth – Brett Desbenoit, Eric Galin and Samir Akkouche, LIRIS, CNRS Universite Claude Bernard, Lyon (Poss. wrong one)
    106. 106. Language for Fractals: VR VR World of DMU
    107. 107. Language for Fractals: VR VR World of DMU
    108. 108. Language for Fractals: VR+ VR World of Manchester – Japanese Tuition: Anja Le Blanc Fractal Plants within a VLE – Virtual Learning Environment: 3D world
    109. 109. Language for Fractals: VR+ Blueberry3D – lots of LOD tricks and billboarding; circa 2003/4
    110. 110. Thanks … <ul><li>Over 10 years of Fractal curiosity: </li></ul><ul><li>Allan Evans, Jonathan Blackledge and all at the old ISS - Institute of Simulation Sciences, De Montfort University </li></ul><ul><li>The guys at the Virtual Environment Centre at De Montfort University </li></ul><ul><li>All the staff and students at the Manchester Visualization Centre at the University of Manchester </li></ul><ul><li>Plus many others (whose credits should be there). </li></ul>
    111. 111. Research Computing The University of Manchester Web: http://www.rcs.manchester.ac.uk/ Resources at: http://wiki.rcs.manchester.ac.uk/community/Fractal_Resources_Tutorial

    ×