1 / 35

Bounding Iterated Function Systems

Bounding Iterated Function Systems. Orion Sky Lawlor olawlor@uiuc.edu CS 497jch November 14, 2002. Roadmap. Introduction to IFS Rice’s Bounding Spheres Lawlor’s Polyhedral Bounds. Iterated Function Systems. Iterated Function Systems--IFS.

yon
Download Presentation

Bounding Iterated Function Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bounding Iterated Function Systems Orion Sky Lawlor olawlor@uiuc.edu CS 497jch November 14, 2002

  2. Roadmap • Introduction to IFS • Rice’s Bounding Spheres • Lawlor’s Polyhedral Bounds

  3. Iterated Function Systems

  4. Iterated Function Systems--IFS • A finite set of “maps”—distortions of some space • Apply the maps in random order • Converges to unique “attractor” • Equivalent to L-systems, others • E.g., Mandelbrot set is just convergence diagram for a one-map 2D IFS: complex squaring

  5. Example IFS—Sierpinski Gasket Shape is 3 copies of itself, so we use 3 maps:

  6. Example IFS—Sierpinski Gasket Shape is 3 copies of itself, so we use 3 maps: • Map to top

  7. Example IFS—Sierpinski Gasket Shape is 3 copies of itself, so we use 3 maps: • Map to top • Map down right

  8. Example IFS—Sierpinski Gasket Shape is 3 copies of itself, so we use 3 maps: • Map to top • Map down right • Map down left

  9. Example IFS—Sierpinski Gasket Many other, equivalent options

  10. IFS Gallery: Menger’s Sponge

  11. IFS Gallery: Spirals

  12. IFS Gallery: Five Non-Platonic Non-Solids Reproduced from Hart and DeFanti, SIGGRAPH 1991

  13. IFS Gallery: Fractal Forest Reproduced from Hart and DeFanti, SIGGRAPH 1991

  14. IFS Conclusions • An IFS is just a set of maps of space • Pastes shape onto copies of itself • IFS are useful tool for representing fractal shapes • Wide variation in results • Arbitrary number of dimensions • Beautiful, natural look • Easy to produce/manipulate

  15. Sphere Bounds for IFS

  16. Why bother bounding an IFS? • For display, processing, etc. • Raytracing [Hart, DeFanti ‘91] • Intersect rays with bounds • Replace nearest intersecting bound with a set of smaller bounds • Repeat until miss or ‘close enough’

  17. Why Bound IFS with Spheres? • Spheres are a commonly used bounding volume for raytracing • Very fast intersection test—a few multiplies and adds • Invariant under rotation • Rotate a sphere, nothing happens • Closed under scaling • Scale a sphere, get a sphere • Easy to represent and work with

  18. Recursive Bounds for IFS • Each map of the bound must lie completely within the bound • B contains map(B) • Now we just recurse to the attractor • B contains map(B) contains map(map(B)) contains map(map(map(B)))...

  19. Sphere Bound for IFS • Each map of the sphere must lie completely within the sphere • This is our “recursive bound” Knowns wi Map number i si Scaling factor of wi Unknowns r Radius of big sphere x Center of big sphere

  20. dist(x, wi (x)) si r x r Sphere Bound for IFS [Rice, 1996] • We require dist(x, wi (x)) + si r < r • Equivalently r > dist(x, wi (x))/(1 - si ) • We must pickx to minimize r • Nonlinear optimization problem (!)

  21. Sphere Bound Conclusions • Spheres are nice bounding volumes • Especially for raytracing • Hart gives a heuristic for sphere bounds • Rice shows how to find optimal (recursive) sphere bound • Requires nonlinear optimization • Complex, slow (?)

  22. Polyhedral Bounds for IFS

  23. Why Bound IFS with Polyhedra? • Includes many common shapes • Box, tetrahedron, octahedron, ... • Bounding boxes are the other commonly used bounding volume for raytracing • A better fit for elongated objects • Computers don’t like curves (nonlinear optimization); a polyhedron has no curves

  24. Why not Bound IFS with Polyhedra? • Polyhedra have corners, which might stick out under rotation • Can always fix by adding sides • Not so bad in practice !

  25. Polyhedral Bound for IFS • Each map of the polyhedron should lie completely within the original polyhedron • Again, a “recursive bound” Knowns wm (x) Map number m ns Normal of side s Unknowns ds Displacement of side s

  26. Polyhedron Bounding, in Words • We will require • Each corner of the polyhedron • Under each map • To satisfy all polyhedron halfspaces

  27. Point-in-Polyhedron Test • Points inside polyhedron must lie inside all halfspaces • Point lies in a halfspace if

  28. Polyhedron corners (2D Version) • The corner of sides i and j is where both halfspaces meet or, if we define

  29. Polyhedron Bounding, in Equations • We require: • Each corner of the polyhedron (linear) • Under each map (linear) • To satisfy all the halfspaces (linear) • These are linear constraints (I M S of them)

  30. Linear Optimization [Lawlor 2002] • We’ve reduced IFS bounding to a problem in linear optimization • Constraints: Just shown • Unknowns: Displacements ds • Objective: Minimize sum of displacements? (Probably want to minimize area or length instead) • Guaranteed to find the optimal bound if it exists (for some definition of “optimal”)

  31. 2D Implementation • Used open-source linear solver package lp_solve 3.2 • Written in C++ • Generating constraints take about 40 lines (with comments) • Would be even shorter with a better matrix class • Welded to a GUI

  32. Time vs. Number of Sides O(s4.6) time; all in solver

  33. Area vs. Number of Sides Little benefit to using more than 12 sides

  34. IFS Gallery: Spirals, with Bounds

  35. Convex IFS Bounds: Conclusions • Optimal polyhedron bounding using linear optimization • Off-the-shelf solvers • Piles of nice theory (optimality!) • Fast enough for interactive use • Future directions • RIFS Bounding (solve for attractorlet bounds) • Implement in 3D

More Related