IMAGE COMPRESSION USING FRACTAL TILINGS

Abstract: A system and method for compressing a data set using lattice tilings is disclosed. The system includes a data buffer (22) for the storage of data elements to be compressed, a database (26) of non-rectangular shapes and corresponding mapping transformations, and a controller (24) for selecting a non-rectangular shape and corresponding mapping transformation from the database and using the selected shape to segment the data elements in accordance with the selected shape. Following the segmenting of the data elements, the controller determines coefficients for the corresponding mapping transformations which represent the data set. An entropy encoder (28) may be included which losslessly encodes the coefficients. A method for generating non-rectangular lattice tilings is also disclosed.

Description: IMAGE COMPRESSION USING FRACTAL TILINGS FIELD OF THE INVENTION This invention relates to the field of data compression, and more particularly, to the compression of data sets using fractal techniques. BACKGROUND OF THE INVENTION Data compression methods are used to determine a representation of a data set where the representation requires less information than the data set itself. This representation may then be used to communicate the data set across conduits at greater speeds than if the original data set was communicated. Likewise, the representation of the data set requires less storage space than the original data set. The savings in communication time and storage space may be significant. Data compression methods are generally of two types ~ lossless and lossy. Lossless data compression methods generate representations of a data set which may be used to regenerate the data set without any loss of information in the original data set while lossy methods may be used to regenerate representations which approximate the original data set. One field where data compression is of particular interest is image compression. Video applications continue to increase the number of pixels which represent a monitor screen or the like in an effort to improve resolution of an image displayed on such a screen. Additionally, the color space for a monitor screen or the like includes a greater range of intensity for the component colors of the color space. As the number of pixel elements which represent the monitor screen space increases and the data associated with the intensity values for each pixel element also increase, the amount of data in a data set needed to represent a monitor screen has increased significantly. Such an increase in data to represent one frame of a monitor screen, video camera frame, or the like, has increased the load on the communication conduits for such video data and the storage space required for the video data. As a result, data compression methods which reduce the amount of data necessary to represent data sets are the subject of a number of writings and patents. One lossy method of data compression which closely approximates an original data set while achieving significant reduction in the data necessary to represent a video image or the like is the fractal transform method. That method is the subject of U.S. Patent No. 5,065,467 to Barnsley, et al. This method is important because it generates a representation of the original data set which is resolution independent. That is, when an area of interest is magnified, the data for the expanded region does not have to be extrapolated from the existent pixels for that area. As set forth in the patent noted above, the fractal transform method generates mapping transformation functions which are used to map data from one portion of a data set to another portion. These mapping transformations may be used to expand the data in the area of magnification so detail is not lost. This property is at least theoretically possible with a fractal transform method. The fractal transform method requires the division of an original data set into domains and ranges. The domains must cover the entire original data set in a non-overlapping fashion. Ranges are larger than domains and may overlap with one another. To simplify computation of coefficients for the mapping transformations used to represent domain data, square or rectangular domain and range shapes are used. While this selection of domain and range shapes simplifies the computational requirements for determining the mapping transformations, they do result in "blocking" artifacts at some levels of resolution. That is, a line may begin to lose its distinctive contours as an area is magnified and begin to present a stair step contour of squares or rectangles. The blocking effect in images generated by using fractal transform techniques is the result of the use of square or rectangular domains and ranges. Blocking is also evident in resolution dependent data compression methods such as discrete cosine transform (DCT) methods or the like. The fractal transform method discussed above selects a mapping transformation which corresponds to the least error between a selected domain and range. This selection based upon minimal error is made after an error measurement is calculated between each domain and each range. As a result, the selection of a mapping transformation for all domains of a data set is directly proportional to the number of domains comprising the set and the number of ranges searched for each domain. To reduce this computational load, fractal transform techniques have been developed which preselect the ranges to be searched for each domain and compute the coefficients of the mapping transformations which yield the minimum error. Such a method is disclosed in an international patent application entitled Fractal Coding of Data and having an international publication number of WO 93/17519. The method disclosed in this published patent application, sometimes called the Bath transform method calculates the mapping transformation coefficients which represent the original data. The coefficients are the solutions for a set of linear equations which define the conditions for minimizing a difference between a rectangular domain and a preselected rectangular range. Thus, the numerous comparisons of the fractal transform method are avoided. Still, the method taught in this patent uses rectangular domains and ranges with corresponding mapping transformations to simplify the minimization techniques for the coefficient computation. As a result, the blocking artifacts may also appear in an image represented by the mapping functions determined by such a technique. Another problem arising from the use of rectangular domains and rectangular mapping transformations is the inaccuracy of mapping data from a curved surface to a linear representation. The use of rectangular domains and mapping transformations may introduce linear artifacts or distortions into the representation regenerated from the compressed data. What is needed is a data compression technique which reduces the blocking effect in resolution independent data representations. What is needed is a data compression technique which maps curved data to a linear representation with less distortion and artifacts than that generated by techniques using rectangular domains and mapping transformations. SUMMARY OF THE INVENTION The limitations of the data compression techniques noted above have been overcome by a method for determining a fractal transform which uses non-rectangular domains and ranges with corresponding non-rectangular mapping transformations. This method comprises the steps of selecting a non-rectangular shape for domains and ranges with corresponding mapping transformations, dividing a data set into domains and ranges corresponding to the selected non- rectangular shape, and determining mapping transformation coefficients which correspond to a minimal difference between one of the domains and one of the ranges. The non-rectangular shapes used by the present invention for the ranges and domains are preferably two-dimensional iterated function system attractors. These attractors are preferred because the mapping transformations for many such attractors are well known. Each mapping transformation for an attractor is comprised of a number of functions which spatially map all of the elements within a range having a non-rectangular shape to a domain having the same non- rectangular shape. Preferably, the selected domain lies within the selected range and most preferably, the selected range is covered by two or more domains without overlap. Preferably, the shapes for the domains and ranges have boundary shapes which interlock with adjacent domains and also have mapping transformations which have rotational components. Most preferably, the attractors are fractal in addition to being non-rectangular. The advantages of this structure are discussed in more detail below. The coefficients of the transformations which represent the minimal difference between a domain and a range may either be determined by measuring the minimal difference between predetermined rotations of ranges to domains or by computing the minimization values for a set of equations describing the difference between the data values of the original data set and their mapped values. The former method corresponds to the fractal transform method described above and the latter method corresponds to the Bath transform method also noted above. While these known methods may be used to determine the mapping transformation coefficients, the use of non-rectangular domains, ranges, and mapping transformations to solve the above noted problems has not been previously applied to such methods. The use of non-rectangular mapping transformations, domains and ranges reduces the blocking effect because the representation of the pixel values follow the fractal boundary of the attractor shape. Since many of the attractor shapes interlock with a disjoint, i.e., non- overlapping, but adjacent domain, the pixel values generated from the mapping transformations for which the coefficients were calculated, blend or appear smoother to the eye than pixels generated by rectangular domains, ranges, and mapping transformations. As noted above, the mapping transformations have rotational components which also tend to spread the data at the boundaries to dissipate vertical or horizontal artifacts thought to be produced by rectangular mapping transformations. As a result, there is less linear distortion in mapping curved surface data to a two-dimensional representation and fewer vertical or horizontal artifacts. To simplify the numerical calculations associated with the use of non-rectangular fractal mapping transformations, a particular class of attractors are used. Attractors belonging to this class are called lattice tiles in this specification. Lattice tiles are computationally simpler because they may be used to cover a data set or image by translation only. Translation is the shifting of the attractor by a vector to disjointedly cover the data set to be represented. Vectors move the lattice tile by a fixed distance in a defined direction. Lattice tiles may be more easily used to cover or segment an original data set yet retain the advantages of rotational mapping within the boundaries ofthe domains and ranges. A further use of the present invention involves the use of different non-rectangular domains, ranges and mapping transformations in conjunction with rectangular domains, ranges, and mapping transformations. For example, in a data set of image pixels, portions of the image may have pixel values of approximately the same value. In such an area where details are not apparently important, rectangular domains, ranges and transformations may be used to speed the calculation of coefficients for the mapping transformation which represents the pixel values. However, in areas where pixel values vary more rapidly, such as along a boundary of a feature, the non-rectangular domains, ranges, and mapping transformations may be used to generate smoother images and retain greater informational content in those areas. Thus, the method of the present invention contributes advantages to systems using rectangular domains, ranges, and mapping transformations which were not available in such systems previously. These and other features and advantages may be ascertained from reading the detailed description and the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram of a system which implements the use of non-rectangular domains, ranges, and mapping transformations; Fig. 2 is a representation of a non-rectangular range tiled by four domains having an ell shape; Fig. 3 is a representation of a non-rectangular range tiled by four domains having a triangular shape; Fig. 4 is a representation of a non-rectangular dragon shaped range having a fractal boundary tiled by two domains having a dragon shape; Fig. 5 is a flowchart of a process for generating lattice tiles and corresponding mapping transformations used to compress data; and Fig. 6 is a flowchart of a process implementing the present invention. DETAILED DESCRIPTION OF THE INVENTION A system 10 for implementing the present invention is shown in Fig. 1. The compressor 12 which uses the non-rectangular shaped domains and ranges provides the mapping transformation coefficients which describe an original data set to a transmitter 14 for transmission to a remote site or the like. Receiver 16 provides the data to a decompressor 18 which uses the inverse process implemented by the compressor to generate a data set which approximates the original data set. The reader should appreciate that the receiver and transmitter of Fig. 1 may be components within a computer system for storing and retrieving compressed data to and from a memory. The compressor 12 includes a data buffer or memory 22 that contains an original data set. The memory is preferably organized in a matrix form so that each element in a data set may be spatially described in x,y coordinates. Data values stored for each of these elements in memory 22 may be described as a vertical element of image data. These values may be gray scale intensity values or they may be intensity values for a component of a color space. The memory 22 is coupled to a controller 24 which generates the coefficients which represent the original data set. Controller 24 is also coupled to working memory 20 and a database 26 of mapping transformations and corresponding non-rectangular shapes for segmenting memory 22. An entropy encoder 28 is preferably coupled to controller 24 to receive the generated coefficients and further compress the coefficient data. Entropy encoding methods are lossless and include, for example, Huffman and arithmetic encoding. To compress the original data set in memory 22, controller 24 selects a non-rectangular shape and corresponding mapping transformations from database 26 and groups the elements of memory 22 in accordance with the selected shape. Controller 24 then uses a known compression method to compute the coefficients for the mapping transformations which best map the domain data elements to a range. The computed coefficients for the mapping transformations may then be used to represent the original data set elements. The computed coefficients may then be further compressed using an entropy encoding method before transmitting or storing the compressed representation. Preferably, memory 22 is comprised of RAM storage elements and its size is dependent upon the data sets being processed by system 10. For example, a typical image application may require 16 MB of RAM for memory 22. Controller 24 is, preferably, an Intel 80486 processor, or equivalent, and the database of mapping transformations and non-rectangular shapes is, preferably, stored on a 540 MB hard drive or the like. The program implemented by controller 24 may be stored on database 26 and all or portions of it loaded into RAM memory for execution. The computer system which includes controller 24, memory 22, working memory 20 and database 26 should, preferably, have at least 8 MB of RAM to support the implementation of the processes described herein. An image or other data set may be represented as a collection of discrete data values, generally called elements and for imaging data known as pixel elements, to represent the image. As described above with respect to memory 22, each pixel element has an x,y coordinate pair for describing its spatial value and the value of the pixel element describes a vertical component which is usually a grayscale or color intensity value. As is well known in fractal transform techniques, this collection of elements may be segmented into domains and ranges for which a mapping transformation comprised of one or more functions may be used to map data from a domain to a range. A mapping transformation may be generally described as: ' Wλ F = y where W is a two-dimensional affine mapping in the spatial variables x,y. W is of the form: V is a scalar function in both the spatial variables and the intensity variable t having the form: where \p \ <\ and P(x,y) is a polynomial where P(0,0)=0. Applying the mapping transformation F to the elements of a domain results in an approximation function The original data may be described as a function g(x,y). The square of a least squares difference between g(x,y) may be calculated as: In the simplest case, the polynomial P(x,y)=0 which means may be used to describe a mapping of the data. The goal is to compute the values forp and q which minimize the least square difference || _ &1I between the original data set and its mapping. For a range which is covered or "tiled" by two or more domains, the minimization over the range is the sum of the minimization of the range to each domain. The minimization of the range to one domain may be represented mathematically as: These equations may be restated as a linear system: gmx.y )) The integrals of this linear system may be computed by using known numerical methods on the discrete data values from the range. This mathematical expression of minimizing the difference between a data set and its mapping is known. Previously, efforts to determine the coefficients of the mapping transformations focused on the simplification of the techniques to compute the coefficients. For example, the fractal transform method used predetermined rotations of ranges distributed across the original data set and sought the minimal difference between a domain and one of the ranges or its rotation to select the coefficients of the mapping transformation most representative of the original data set. Likewise, the Bath transform method focused on the use of blocks to simplify the calculations for solving the linear system presented above and the quantization and coding of those computed coefficients. Of particular importance to the present invention is the selection of range shapes which vary the two-dimensional interval of integration in such a linear system. Integration of the mapping function over non-rectangular ranges results in benefits not previously known. One benefit of such range shapes is the reduction of the blocking effect in the representation regenerated from the coefficients for the compressed data. This reduction in blocking effect appears to be independent of the resolution selected for the regenerated representation. Another benefit from such non-rectangular shapes is the rotational component of the corresponding mapping transformation which tends to smooth vertical and horizontal artifacts which may be otherwise propagated by the use of rectangular domains, ranges, and mapping transformations, which have rotational components of 90° or some multiple thereof. The mathematical system described above may include higher order terms in the definition of V to achieve higher quality in coding, although the computations and coefficients will require greater computer resources and time. For example, y ■ ■ ax + by + pl + q. may be used to define V. Going through the same analysis as presented above, a four-by-four linear system is generated of the form: The integrals in this system may also be computed by using known numerical methods with the discrete data within the ranges and the linear system is then solved to determine the values of a,b,p,q. Again, the present invention is directed not to the solution of this system, but rather to the selection of ranges, domains, and mapping transformations (comprised of the various w(x,y)) which are non-rectangular in shape. One important element of the present invention is to find a set of domains having a non- rectangular shape which covers a range. In general, this is done by finding an attractor T that may be translated about the Euclidean space, R to cover R^. T represents an attractor of a just touching iterated function system (IFS), that may be translated to cover R^. This covering of R2 with T is achieved by rotating and shifting T about R^ so that every element in R^ is contained in one of the shifted or rotated attractors T which cover R^. The shifting of T is done in two independent directions and by a fixed distance so that the set of 7s which cover R^ do not overlap, i.e., they are disjoint. For example, the range 50 of Fig. 2 is covered by the four ell shape domains 52,54,56, and 58. The IFS which defines the ell shape is comprised of the following mapping transformations: -• ( A ( oA ( ) oACAi> By using these transformations, the domain may be translated and rotated to cover the range 50. For instance, domain 54 is both a translation and rotation of domain 52. This tiling of range 50 with the non-rectangular ell shape may be used to provide the benefits discussed above. Another example of a range being tiled with non-rectangular shape is shown in Fig. 3. The IFS shown in that figure is a triangle which is comprised of the following transformations: ^ HAX; MMA)©A Again, these transformations may be used to rotate and translate the domains 62, 64,66, and 68 to cover the range 60. Here, domains 64 and 66 are translations of domain 62 and domain 68 is a translation and 180° rotation of domain 62. This range tiling is exemplary of the tilings which are available with non-rectangular shapes. To use a non-rectangular shape, a spatial map and corresponding mapping transformations are stored in database 26. The spatial maps are used to segment or select the data elements which are members of the ranges having the shape o the spatial map. The spatial map identifies the coordinates ofthe pixel elements which lie within the range shape. The domains, ranges, and mapping transformations shown in Figs 2 and 3 provide advantages not previously known with rectangular domains, ranges, and mapping transformations. Preferably, the domains, ranges, and mapping transformations used to compress a data set in the present invention have fractal boundaries in addition to being non-rectangular and belong to a class of IFSs called lattice tiles herein. A lattice tile is a two-dimensional attractor of IFS of the type described below. The mapping transformations for this type of IFS are constructed from a linear expansive mapping E which leaves invariant a lattice. A two- dimensional lattice is a discrete subset of points or elements which has a group structure under vector addition so that each element in the set is defined by a linear combination of two independent vectors. For example, the integer coordinate pairs (m,n) of a Cartesian system are a lattice ofthe Euclidean plane R^ and two independent vectors which generate the lattice are [1,0] and [0,1]. That is, any point in the lattice may be reached by moving one unit in either the x or y direction. This lattice is sometimes denoted as 7?-. Any other lattice in the Euclidean plane may be described as a linear deformation ofthe 7J- lattice. Preferably, a lattice tile which may be used to cover or tile a range is determined by finding the inverse of an expansive mapping. An expansive mapping E is a linear mapping having eigenvalues with an absolute value greater than 1. E operates on a lattice L to generate E(L) which is a sublattice of L such that E(L) is a group of elements in the original lattice but E(L) does not include all the points of the original lattice. Each point in E(L) is a linear combination of two independent vectors. For example, the group of coordinate pairs (2m,2n) is a subset of l which is also a lattice generated by independent vectors [2,0] and [0,2]. The set of elements not in an expansion lattice but which are members of the original lattice may be described by the coset group TAI E(ZA This group has a finite number of elements equal to the absolute value of the determinant of E. A set of representative vectors which may be used to express 7 -I E(Z^) may be defined by selecting a set of points kg, k\ ,...,k m . 1. The vectors which move E(Z^) so it includes all of the points in 7? I E(Z^) may be used to define the affine maps WQ, W\ ,...,W m _\ of a lattice tile. The affine maps may be expressed as Wj(x) = E'^(x+kβ, for O≤j ≤ m -1. Because the absolute values for the eigenvalues for E are greater than 1 , the Wi have eigenvalues with absolute values strictly less than 1. Generally, this does not imply that the W ; are contractive but it can be shown that the IFS defined by the Wi have a compact attractor. A compact attractor is an attractor that is bounded and closed in the mathematical sense. This attractor may be used to tile a range by using the vectors corresponding to the k υ ,...,k m .\ selected to define the affine maps. E Al . _ (. \ - \( χ For example, A l V y ) _ has two eigenvalues with an absolute value of V2. Geometrically, this expansive function rotates the 7?- lattice 45° in the counterclockwise direction and expands a unit square defined by four points in the 7?- lattice by a factor of 2 so that the sides of the expanded square equal the diagonal of the original square. The number of representative points needed for the is two since the determinant of the matrix is 2. Selecting two points in the coset group and assigning them to Arj and to: These mapping transformations define a range 70 comprised of two domains 72, 74 as shown in Fig. 4. This fractal boundary of this shape is generally known as a dragon shape and provides many of the benefits of the non-rectangular shapes discussed above. In addition, the fractal boundary provides many interlocking structures at the boundary of the domains and ranges which are thought to provide many of the benefits of the present invention. Although representative points may be selected which result in rectangular sublattices of T , these are eliminated by inspection since they do not yield the results of smoothing to reduce propagation of artifacts and the blocking effect in images at resolutions other than the one at which the image was generated. In fact, the mapping transformations corresponding to the non- rectangular domains and ranges having fractal boundaries used in the present invention to segment an image for application of the fractal transform method or the Bath transform method yield subtle but significant effects in the regenerated data set. To implement the present invention. various expansive mappings of the Z lattice are used in the process shown in Fig. 5 to generate non-rectangular shapes and mapping transformations. Preferably, the linear portion of the expansive mappings rotate mapped elements by angles which are not 90° or multiples thereof. Such expansive mappings deform R^ into lattice tiles which are non-rectangular in shape. For expansive mappings which rotate by 90° or multiples thereof, a set of representative elements are selected do not form a rectangular attractor. An expansive mapping is selected (Block 80) and E(Z^) is then generated using the selected mapping transformation (Block 82). The determinant of the linear mapping E is calculated (Block 84) and a set of representative elements is selected having a number of elements equal to the determinant (Block 86). The corresponding mapping transformations are then computed (Block 88) and the resulting lattice tile is generated (Block 90). If the resulting lattice tile is rectangular (Block 92), another expansive mapping is selected and the process continues. Otherwise, the mapping transformations corresponding to the lattice tile and a spatial map describing the shape of the tile are stored in database 26 (Block 94) for use by controller 24. The spatial map may be a list of the elements which lie on the boundary of a tile, an equation which defines the perimeter of a tile, or another suitable way of defining the boundary of a shape. The process of Fig. 5 may be continued to generate other shapes for database 26. To process an original set of data stored in memory 22. controller 24 performs the process shown in Fig. 6. Controller 24 begins by selecting a spatial map and a transformation (Block 100) and segments the data set into domains and ranges which correspond to the selected spatial map (Block 102). Preferably, controller 24 uses a spatial map for a lattice tile to segment data elements into domains which cover a range and which contain all of the elements in the range. This is preferred since there is a better probability that a mapping of range data to a domain within the range yields less differences than a mapping to an area outside the range. Controller 24 then applies a compression method for determining new coefficients for the mapping transformations which represent the original data set (Block 104). The compression method may be the fractal transform method or the Bath transform method. Following the coefficient determination, controller 24 determines whether a comparison evaluation is to be made (Block 106) and whether a previous coefficient determination has occurred (Block 108). If so, controller 24 stores the representative coefficients (Block 1 10) and repeats the process. Following calculation of the new coefficients, controller 24 determines that a comparison between the two compressed coefficient representations is to be performed (Blocks 106, 108). The comparison is made and a set of coefficients selected (Block 112). If accuracy in data representation is desired, the comparison may use any of a number of known metrics for measuring a difference such as a comparison of the Hausdorff, least squares or other known measurements used to evaluate data representation errors. Alternatively, if the non-rectangular shapes are being applied to obtain visual benefits in the regenerated data set, controller 24 may implement a regeneration program and display the regenerated data set for evaluation by an operator. The regeneration program may use a deterministic, random iteration, escape time algorithm or any variant thereof to regenerate the representative data set. The operator then selects the regenerated data set which conforms to the image qualities desired. Controller 24. may use entropy encoding (Block 1 14) to further reduce the data representing the original data set before transmitting or storing the compressed data. The present invention may also be used to supplement known segmentation methods for the compression of data. For example, in processing image data, controller 24 may scan data elements in memory 22 and determine that an area is comprised of data elements having approximately the same intensity value. Such an area may not benefit from the advantages of non-rectangular tiling and controller 24 may retrieve rectangular shapes for the domains and ranges for this portion of the data set. For the remaining elements outside the area processed with rectangular domains and ranges, controller 24 may process the elements using the method shown in Fig 6. Thus, the present invention may be combined with known data compression methods to process subsets of a data set most likely to benefit from the advantages of the present invention. While the apparatus and method described herein set forth preferred and alternative embodiments of the invention, the invention is not limited thereby and changes may be made therein without departing from the scope of the present invention as defined by the appended claims.

Claims: CLAIMS 1. A method for compressing a data set comprised of data elements, the method comprising the steps of: selecting a non-rectangular shape for domains and ranges with corresponding mapping transformations, dividing a data set into domains and ranges corresponding to the selected non- rectangular shape, and determining coefficients for said mapping transformations so that said mapping transformations represent said domains of said data set. 2. The method of claim 1 further comprising the step of: selecting said non-rectangular domains to lie within said non-rectangular ranges. 3. The method of claim 1 wherein said determining step uses a fractal transform method to determine said mapping transformation coefficients. 4. The method of claim 1 wherein said determining step uses a Bath transform method to determine said mapping transformation coefficients so that said calculated coefficients correspond to a minimal difference between one ofthe domains and one ofthe ranges.. 5. The method of claim 1 wherein said selected shapes are fractal in addition to being non-rectangular. 6. The method of claim 1 further comprising the step of: selecting rectangular shapes for said domains and ranges for processing a portion of said data set; and said non-rectangular selecting step is performed for a remainder of said data set. 7. A system for compressing a data set comprising: a data buffer for storing data elements of a data set; a database of non-rectangular shapes and corresponding mapping transformations and spatial maps; and a controller for selecting a non-rectangular shape and corresponding mapping transformation and spatial map from said database, said controller segmenting said data elements in said data buffer in accordance with said selected non-rectangular spatial map and determining coefficients for said corresponding mapping transformations which represent said data elements in said data set. 8. The system of claim 7 further comprising: an entropy encoder for lossless encoding of said determined coefficients. 9. The system of claim 7 wherein said database includes mapping transformations and spatial maps corresponding to non-rectangular, fractal shapes. 10. The system of claim 7 wherein said database includes mapping transformations and spatial maps corresponding to rectangular shapes so that said controller may select rectangular shapes for portions of said data elements of said data set and non-rectangular shapes for a remainder of said data set. SUBSTITUTE SHEET (RULE 26) 12. A method for determining non-rectangular mapping transformations comprising the steps of: selecting an expansive mapping; generating a sublattice with said selected expansive mapping; selecting a group of representative elements not in said generated sublattice; computing a set of mapping transformations corresponding to a non-rectangular attractor formed from said expansive mapping and said selected group of representative elements; and storing said set of mapping transformations in a database for tiling a data set. 13. The method of claim 12 wherein said correspondence between said mapping transformations and said expansive mapping and said selected group of representative elements correspond to W,-(x) = E'^(x+kβ, for 0< j ≤ m -1 where kg,...,k m .\ are said selected representative elements. 14. The method of claim 12 wherein a number of said selected representative elements corresponds to the determinant of said expansive mapping.

Inventors: BARNSLEY MICHAEL F, DELIU ANCA, BARNSLEY, MICHAEL, F., DELIU, ANCA
Applicants: ITERATED SYSTEMS INC, ITERATED SYSTEMS, INC.
Application year: 1996
Main classification: G06T9
IPC codes: G06T9