Dispense di I.U.M. Modellazione Geometrica

Cap.1: Introduzione alla modellazione bidimensionale

Leila De Floriani, Paola Magillo

Modellazione geometrica bidimensionale

Definizione di rappresentazioni per entita' geometriche bidimensionali.

Paradigma della modellazione geometrica

   +-----+       +-----+       +-----+
   |  W  | ----> |  M  | ----> |  R  |
   +-----+       +-----+       +-----+

Passaggio dal mondo reale W all'astrazione matematica M: fatta dalla mente umana, non formalizzabile.

Passaggio dal modello matematico M alla rappresentazione R usata all'interno dell'elaboratore: formalizzata dallo schema di rappresentazione.

Def. Schema di rappresentazione

Applicazione che associa ad un modello matematico m in M una rappresentazione r in R.

Una rappresentazione e' una stringa finita di simboli appartenenti a un alfabeto.

Modellazione geometrica bidimensionale

Entita' geometriche considerate:

Modello matematico di REGIONE PIANA

Una regione piana e' un sottoinsieme del piano che sia:
  1. Chiuso: deve contenere il suo contorno.
  2. Limitato.
  3. Connesso: non deve consistere di piu' parti staccate.
    Un insieme e' connesso se ogni coppia di suoi punti puo' essere unita da un segmento di curva (nota: non necessariamente di retta) senza uscire dall'insieme.
  4. Regolare: deve essere uniformemente bidimensionale, avere un suo interno e un suo contorno senza parti "isolate".
    Un insieme e' regolare se coincide con la chiusura del suo interno.
  5. Con contorno 1-manifold.
    Per ogni punto P appartenente al contorno, esiste sul contorno un intorno di P omeomorfo ad un intervallo aperto.
Una regione piana puo' essere:

Rappresentazioni di REGIONI PIANE

Dal modello matematico si passa alla rappresentazione.

Le rappresentazioni di regioni piane possono essere suddivise in due categorie:

Rappresentazioni basate sullo spazio occupato

Tali rappresentazioni sono basate sulla suddivisione di una porzione di piano (che chiameremo immagine) in celle quasi-disgiunte, generalmente di forma quadrata, dette pixel.

+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+
Una regione e' descritta da un insieme massimale 4-connesso di pixel pieni.

Osservazione

Nella definizione di rappresentazione a pixel, un'immagine del tipo
+--+--+--+--+--+--+--+--+
|  |  |  |XX|XX|XX|  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |XX|XX|XX|  |  |
+--+--+--+--+--+--+--+--+
|  |XX|XX|  |  |  |XX|  |
+--+--+--+--+--+--+--+--+
|  |XX|XX|  |  |  |XX|  |
+--+--+--+--+--+--+--+--+
|  |  |XX|  |  |  |  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+
rappresenta un insieme di tre regioni.

Versione alternativa

Una regione e' descritta da un insieme R massimale 4-connesso di pixel pieni, tale che
  1. per ogni coppia di pixel tra loro 8-adiacenti ma non 4-adiacenti appartenenti a R, esiste un pixel appartenente a R e 4-adiacente a entrambi.
                            +--+--+      +--+--+
                            |XX|  |      |  |XX|
    configurazioni vietate: +--+--+      +--+--+
                            |  |XX|      |XX|  |
                            +--+--+      +--+--+
    
                            +--+--+      +--+--+
                            |XX|XX|      |XX|XX|
    configurazioni ammesse: +--+--+      +--+--+    ecc.
                            |  |XX|      |XX|  |
                            +--+--+      +--+--+
    
    
  2. non esiste un sottoinsieme S 8-connesso dell'immagine formato da pixel pieni per cui R sia contenuto in S ma non uguale a S.
Dalla condizione 1 segue che configurazioni di questo tipo non sono rappresentazioni valide di regioni:
+--+--+--+--+--+--+--+--+
|  |  |  |XX|XX|XX|  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |XX|XX|XX|  |  |   infatti il contorno
+--+--+--+--+--+--+--+--+   non sarebbe 
|  |XX|XX|  |  |XX|  |  |   1-manifold
+--+--+--+--+--+--+--+--+
|  |XX|XX|  |  |XX|  |  |
+--+--+--+--+--+--+--+--+
|  |  |XX|XX|XX|XX|  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+
Dalla condizione 2 segue che i pixel appartenenti a due regioni distinte non sono mai 8-connessi.

Strutture dati

Una rappresenazione a pixel fornisce una descrizione approssimata di una regione piana.

La risoluzione e' determinata dalla dimensione del pixel. La descrizione e' tanto piu' accurata quanto piu' fine e' la suddivisione dell'immagine in pixel.

Strutture dati per la codifica di una rappresentazione a pixel: matrice bidimensionale binaria:

Se l'immagine e' costituita da k x k pixel, la dimensione della matrice e' k x k.

Proprieta' delle rappresentazioni a pixel

Rappresentazioni a pixel adattive: QUADREE di regione

Il termine quadtree indica una classe di rappresentazioni gerarchiche di entita' geometriche (punti, segmenti, regioni, superfici, solidi) basate sul principio di scomposizione ricorsiva e regolare dello spazio.

Tali rappresentazioni sono classificate in base alle entita' geometriche che descrivono.

Noi ora ci occupiamo del Quadtree di regione (region quadtree).

Un quadtree e' descritto da un albero quaternario in cui:
+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+
|  |  |  |  |  |  |  |  |
+--+--+--+--+--+--+--+--+  matrice binaria 0/1 che
|  |  |  |  |1 |1 |1 |1 |  rappresenta una regione
+--+--+--+--+--+--+--+--+  (per leggibilita' sono
|  |  |  |  |1 |1 |1 |1 |  marcati solo gli "1")
+--+--+--+--+--+--+--+--+
|  |  |  |1 |1 |1 |1 |1 |
+--+--+--+--+--+--+--+--+
|  |  |1 |1 |1 |1 |1 |1 |
+--+--+--+--+--+--+--+--+
|  |  |1 |1 |1 |1 |  |  |
+--+--+--+--+--+--+--+--+
|  |  |1 |1 |1 |  |  |  |
+--+--+--+--+--+--+--+--+

+--+--+--+--+--+--+--+--+
|           |     |     |
+           + F0  + G0  +
|           |     |     |
+     B0    +--+--+--+--+  divisione in blocchi del
|           |     |     |  relativo quadtree
+           + H1  + I1  +  (i blocchi con etichetta
|           |     |     |  terminante per "1" sono
+--+--+--+--+--+--+--+--+  pieni)
|     |R0|S1|     |     |
+ J0  +--+--+ N1  + O1  +
|     |T1|U1|     |     |
+--+--+--+--+--+--+--+--+
|     |     |V1|W1|     |  
+ L0  + M1  +--+--+ Q0  +
|     |     |X1|Y0|     |
+--+--+--+--+--+--+--+--+

l'albero quaternario

                          A
                          |
 +----------+-------------+-------------+
 |(NW)      |(NE)         |(SW)         |(SE)
B0          C             D             E
            |             |             |
      +--+--+--+    +--+--+--+    +--+--+--+
      |  |  |  |    |  |  |  |    |  |  |  |
     F0 G0 H1 I1   J0  K  L0 M1  N1 01  P  Q0
                       |                |
                 +--+--+--+       +--+--+--+
                 |  |  |  |       |  |  |  |
                R0 S1  T1 U1     V1 W1  X1 Y0

Proprieta' del quadtree di regione

Rappresentazioni mediante il contorno

Consideriamo regioni piane poligonali, cioe' regioni contornate da poligoni (semplici).

Definizioni

Un poligono e' definito da un insieme finito di segmenti nel piano, in cui ogni estremo di segmento e' comune a esattamente due segmenti.
Un poligono e' detto semplice se non esiste alcuna coppia di lati intersecantisi (al di fuori degli estremi).

Teorema di Jordan

Un poligono semplice (in generale, una curva semplice e chiusa) partiziona il piano in due regioni distinte: interno ed esterno.

Un poligono e' detto convesso se il suo interno e' un insieme convesso.

Un insieme S di punti nel piano euclideo e' convesso se e solo se, per ogni coppia di punti in S il segmento di retta che li unisce e' interno ad S.

Un poligono semplice e' detto a forma di stella (o stellato) se esiste un punto Q non esterno al poligono (vale a dire che Q puo' appartenere al poligono o al suo interno) tale che, per ogni punto P del poligono, il segmento di retta PQ e' interno al poligono.

Il luogo dei punti che godono della proprieta' precedente e' detto nucleo (o kernel) del poligono a stella.

Nota: un poligono convesso e' anche un poligono a stella, e il suo nucleo concide con il poligono + il suo interno.

Rappresentazioni per regioni piane poligonali

Una regione poligonale semplicemente connessa e' descritta da un poligono semplice.

Una regione poligonale molteplicemente connessa e' descritta da un insieme di poligoni semplici. Viene anche detta, impropriamente, poligono con buchi. L'insieme di poligoni e' dato in una lista dove per convenzione il primo poligono rappresenta il contorno esterno.

Rappresentazione di un poligono

Un poligono e' descritto da una sequenza ordinata di vertici (struttura a lista): Pigreco = [P1,P2,...,P(n)]

Se il poligono e' semplice, il lato P(i)P(i+1) e' orientato in modo tale che l'interno del poligono giace alla sinistra della retta orientata da P(i) a P(i+1). Vale a dire: il poligono e' ordinato in senso antiorario.

Quando un poligono semplice e' usato all'interno della rappresentazione di una regione poligonale, le convenzioni sono un po' diverse:

Regola base: la regione sta sempre a sinistra del suo contorno orientato.