Title: Automata for bilevel image compression K. Culik II, V. Valenta: Finite Automata Based Compression of Bilevel images K. Culik II, V. Valenta: Finite Automata Based Compression of Bilevel and Simple Color Images M. Mindek: Finite State Automata and Image
1Automata for bilevel image compressionK. Culik
II, V. Valenta Finite Automata Based Compression
of Bilevel images K. Culik II, V. Valenta
Finite Automata Based Compression of Bilevel and
Simple Color ImagesM. Mindek Finite State
Automata and Image Recognition
- Alessandro Giusti
- April, 28 2006
2Quadtrees for multiresolution bw images
- Quadtree-based addressing scheme for image areas
3203
- Language specifies addresses of black pixels
- Multiresolution addresses can have arbitrary
length (possibly infinite)
3Quadtrees for multiresolution bw images (2)
- A state represents an image.
- The image is defined quadrant by quadrant by
outgoing transitions to other states (4
sub-images) - The color of an (infinite resolution) pixel is
found by feededing the automaton with the
(potentially infinite) pixel address - If the pixel is white, the string will not be
recognized - The evaluation can be stopped early for a
lower-resolution image (rough approximation) - Zooming is straightforward
- just replace the initial state with the state
obtained by feeding the automaton with the area
address - Note how language concatenation works
- Note how a black square is defined (final state)
4Quadtrees for multiresolution bw images (3)
5Last example
- Re-use the triangle T and make a fractal out of
it.
6Multiresolution black and white images
- Automata easily define
- images which can be defined vectorially, but not
rasterized - recursively-defined images (fractal-like),
self-similar at various scales, with infinite
resolution.
7Automaton construction procedure
- Goal given multiresolution image I as input,
build the minimal automaton perfectly defining
it. - Approach recursively create new states for each
subimage, unless that subimage is already
represented in an existing state. - Will not terminate when no automaton perfectly
defines the input (e.g. a triangle with an
irrational number as slope).
8Automaton construction procedure (example)
9Generalized finite automata
- The procedure becomes more powerful if we allow
image transformations in transitions - Rotation by 0, 90, 180, 270
- Optional mirroring
- Optional color negation
- Add one of the 4x2x216 possible transformations
as an additional transition label
10Generalized finite automata (2)
- Meaning
- Quadrant 0
- Quadrant 1
- Quadrant 2
- Quadrant 3
11Full example
0
1,2,3,4
12Another example
- Divide et impera applied to images
- Note how the stripes are recursively defined, and
how transformations partecipate in the definition
(result are infinite resolution, perfect lines). - Lines are not explicitly defined, and emerge from
cross-resolution constraints ? fractal
definition of lines. - Find n small errors in the figure (n2)
13Generalized automaton construction procedure
- Goal given multiresolution image I as input,
build an automaton approximating it. - News recursively create new states for each
subimage, unless the subimage is already
approximated within a given error, by any
transformation of an existing state. - Will always terminate
- Interesting implementation-related observations
14About color images
- Consider only graphic images, not photographs ?
no gradients. - Quantize to colors (n3) ? n bilevel
bitplanes - Approach apply algorithm separately to each
bitplane. - News?
- Share the states between different bitplanes
exploit cross-color self-similarity.
15Results showcase
16Results
- Remarkable (while not state of the art)
compression ability, but - Read the fine print! 8x8 subimages are vector
quantized (traditional compression mechanism). - Nothing more precise (e.g. number of quantized
vectors) is stated about this last step this
could even account for most of the compression
power! - Compression algorithm exploits
- Quadtree decomposition (Color-homogeneous areas)
- (Cross-resolution) self-similarity
17Critique
- Imprecise bilevel images are
- easily
- ? Lossy compression of bilevel images has very
limited applications w.r.t. more general
compression techniques - The proposed method is an interesting application
of automata, but - very limited flexibility and generality
- Much better approaches exist in order to compress
bilevel, non-fractal images (vectorial graphics,
tracing...)
18Generality
- Self-similarity at different scales not frequent
in everyday graphical images - Quadrant-based notation is arbitrary and too
rigid to be taken advantage of in practice - Needs perfect alignment of replicas
- ? Even if self-similarity was present, most
probably it would not be possible to exploit it - Example images are artificial and ad-hoc. Almost
everything else is not representable with the
same elegance - Why only 16 trasformations?
- Will the approach scale well if we improve it?
19Art (?)
- Also context-free grammars can generate beautiful
pictures - ? www.contextfreeart.org