1 / 53

Quadtrees, Octrees and their Applications in Digital Image Processing

Quadtrees, Octrees and their Applications in Digital Image Processing. Hierarchical Data Structures for Computer Vision and Image Processing. Definition of pyramids Explanation of Quadtrees and Octrees Techniques used for generation Applications. What is a pyramid?.

orde
Télécharger la présentation

Quadtrees, Octrees and their Applications in Digital Image Processing

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. Quadtrees, Octrees and their Applications in Digital Image Processing

  2. Hierarchical Data Structures for Computer Vision and Image Processing Definition of pyramids Explanation of Quadtrees and Octrees Techniques used for generation Applications

  3. What is a pyramid? Pyramid is a sequence of arrays A(0) A(1) 2 1 * 2 1 A(2) 2 2 * 2 2

  4. Example of a four layer pyramid 2 0 * 2 0 2 1 * 2 1 2 2 * 2 2

  5. Example of a four layer pyramid Layer 3 2 3 * 2 3

  6. How partitioning is done? 1 partitioned to 2 2 = 4

  7. How pyramid is build? • From top to bottom • From bottom to top • Always recursively • Good exercise in recursion and arrays • Treat image as a Boolean or discrete function, what is the counterpart of these type of recursions?

  8. We will build a pyramid from top For simplicity, dimension = 2 Partitioning at any level i from i-1 can be done by defining a two-dimensional array A(i) for the i-th level

  9. The partitioning Algorithm Cell (j,k) at level i-1

  10. The partitioning Algorithm

  11. Pyramids versus trees Pyramids are interlinked (for instance by indices) sequences of arrays with hierarchy. Similarly we can create trees to define this hierarchy Trees can be more convenient for processing

  12. Types of pyramids: quadtree and octree

  13. Recursive Tree Decomposition Think how to write this software in Lisp

  14. Construction of the quadtree We get an image represented by a quadtree

  15. Advantages of the quadtree Trees can be well manipulated in software, for instance in Lisp

  16. Disadvantages of the quadtree

  17. Octrees are to represent three-dimensional robot environments Structure of an Octree

  18. Structure of an Octree

  19. Advantages of the Octrees

  20. Applications of these data structures • The quadtree, octree and binary tree decomposition methods are widely used in two and three dimension image processing and computer graphics • Some of the application areas involve: • the image data structure, • region representation, • picture segmentation, • component labeling, • image smoothing, • image enhancement, • data compression

  21. Applications of these data structures • Pattern recognition • Shape analysis • Image segmentation • Region matching • Images can be represented with pyramids and thus, both local and global feature extraction is possible

  22. Application to pattern recognition

  23. We want to know where is B located structurally in our image

  24. We got here the structure of our environment

  25. Tree Decomposition in Pattern Classification Tree decomposition can be used not only in imagespace but in transform space or feature space

  26. Tree Decomposition in Pattern Classification

  27. Tree Decomposition in Pattern Classification

  28. Application of trees to Edge Detection • The edge detection task can be accomplished by applying a point-neighborhood operator or the edge detectorto every point of a large matrix • The algorithm for this works as follows: • An edge detector is applied at each point in the starting level • At each point, if the value exceeds a threshold, the operation is applied to the descendants of the point in the next finer level. Starting from top

  29. Application of trees to Feature Detection Pyramides are used for feature detection Pyramides limit scope of the search Pyramides are used for feature extraction

  30. Application of trees to Feature Detection The disadvantage of this method is that the reduction of resolution will affect the visual appearance of edges and small objects • In particular, at a coarser level of resolution: • edges tend to get smeared and • region separation may disappear

  31. Extracting compact objects using trees • Many image analysis tasks require the extraction of compact objects from a background, where • the shapes of the desired objects are not known, • except for the fact that they are compact • Image segmentation using pyramids can be applied to extract such objects. • “Spot detectors” are applied to image at each level of the pyramid: • this is equivalent to applying spot detectors of many sizes to full-resolution image

  32. Extracting compact objects using trees

  33. Extracting compact objects using trees • Three sets of informationare represented in the pyramid structure • 1. Gray level • 2. Edge magnitudeand direction • 3. Surroundedness • The interaction between the different types of information at each level of the pyramid leads to the final segmentation

  34. Using Quadtrees to Smooth Images • Digital images usually contain noise of various kinds. • Most image processing tasks are simplified if noise is removed • A general approach to noise removal is to smooth the image • Smoothing is done by replacing each pixel value by a new value which is a function of the values in some neighborhood of the pixel.

  35. Using Quadtrees to Smooth Images Method 1 Method 2 See next slides

  36. Using Quadtrees to Smooth Images

  37. Using Quadtrees to Smooth Images

  38. Using Quadtrees to Smooth Images Using Quadtrees to Smooth Images Smoothing becomes hierarchical in trees

  39. Using Quadtrees to Smooth Images Using Quadtrees to Smooth Images Method 2 1. Constructs a quadtree from an image 2. Replaces each pixel by the gray level of the leaf to which each corresponds

  40. Hierarchical Coding of Binary Images using trees Hierarchical Coding = to segment a picture into the largest possible uniform areas and to transmit a hierarchical representation of these areas. Quadtrees can be used for coding Pictures with large uniform areas can be highly compressed

  41. Hierarchical Coding of Binary Images using trees The transmission result can be recreated by the receiver as soon as sufficient information about transmitted picture has been gathered

  42. Quadtree Compression 4 3 2 1

  43. G = goto ground W=white B=black w w Second level

  44. Hierarchical Coding of Binary Images GGGWWBBWBWGWGWWWBBWWW

  45. Hierarchical Coding of Binary Images • A bit assignment can be selected for the symbols • The coding can also be extended to three dimensions with the use of octrees

  46. Problems to solve: • Use pyramide for edge detection • Treat a large (12 variables) Karnaugh Map as an image. What is the counterpart of Shannon Decomposition in terms of binary trees? • Generalize to 4-valued logic and show link to quadtrees • Generalize to 8-valued logic and show link to octrees • Disscuss general links between discrete functions, images and compression methods.

  47. Problems to solve: • Use octree to represent the space for robot manipulator • Use this space description to plan precise assembling operations.

  48. References

More Related