Newsgroup: it.comp.grafica
Titolo: (circa) Da disegno umano a rappresentazione matematica

Semplificando il problema: prendo un foglio di carta e ci disegno sopra
varie curve o ghirigori con un pennarello, poi passo il foglio nello
scanner.
Naturalmente, la larghezza delle linee che ho appena disegnato è di vari
pixel.
Ora, io avrei bisogno di implementare un algoritmo (in linguaggio Delphi)
che a partire da questa "banda di pixel", mi restituisca una serie di curve
della laghezza un solo pixel, che rappresentino "lo scheletro" di quelle da
me tracciate.
Il punto di partenza credo sia ovviamente quello di trasformare l'immagine
acquisita dallo scanner, in un immagine a 1 bit di profondità, con soli
bianchi e neri.
Poi, essendo abbastanza profano in questo genere di cose, la prima cosa che
mi viene in mente è quella di prendere in esame riga per riga l'immagine
scannerizzata, "affettando" così la "banda di pixel" in varie righe, e
rilevando contemporaneamente gli estremi destro e sinistro.
Così dovrei ottenere dei valori del tipo:
    RIGA 1:    3 , 6
    RIGA 2:    4 , 8
    RIGA 3:    4 , 7
    RIGA 4:    5 , 8
per una linea più o meno verticale.
E fin qui ci sono.
Ora non mi è chiaro il modo con cui potrei estrarre da questi intervalli di
valori, una specie di "interpolazione".
Sperando di non essere troppo OT, qualsiasi suggerimento è il benvenuto.
--
Mauro Falzari.
"Se guardi nell'abisso, anche l'abisso guarda in te."
(Friedrich Nietzsche)

 ha scritto nel messaggio
news:9s8iim$11iffm$1...@ID-86629.news.dfncis.de...


     RIGA 4:    5 , 8 = 6.5

 piu' complesse, come curve, ellissi, ecc...
beh, a questo volevamo arrivare...però forse è sufficiente questo sistema
che hai suggerito tu.
Tnx.
--
Mauro.
"Non è morto ciò che in eterno può attendere,
e col passar di strane ere, anche la morte muore."
H. P. Lovecraft, The Nameless City (1921), in Weird Tales, novembre 1938.

> uno scanner e dalle linee delle isobare ricavare un modello 3D
non "isobare", ma "isoipse".


 per una linea piů o meno verticale.
Il discorso funziona solo per linee piu' o meno verticali, appena ti 
sposti da questo angolo il discorso fila sempre meno, e lo spessore 
viene falsamente considerato (un eccesso artificiale crescente man mano 
che ti avvicini all'orizzontalita', o comunque alla direzione di 
scansione); gli estremi dai quali ricavare i valori medi devi andarli a 
ricercare nei punti di intersezione tra il vettorializzato e 
un'ipotetica linea di taglio perpendicolare al vettorializzato in ogni 
punto preso in considerazione.
Glorb...
Io incontro spesso problemi di questo tipo nei casi in cui devo 
presentare degli studi di impatto ambientale per la realizzazione di 
costruzioni in contesti preesistenti, urbani e non. Spesso mi capita di 
dover portare in AutoCAD delle planimetrie prese dai catasti in formato 
rigorosamente cartaceo (magari risalenti agli anni '60): ormai mi sono 
rassegnato a ricalcare le isoipse tramite le spline di AutoCAD, anche 
vettorializzatori validi come CorelTRACE cedono in situazioni del 
genere, e CorelTRACE di opzioni di vettorializzazione ne ha un bel po'.
Bisognerebbe provare i prodotti piu' recenti dedicati ai vettori, e' una 
cosa che faro' prima o poi, sto iniziando a non trovare piu' 
collaboratori che accettano di fare 'sto lavoraccio a mano... :-)))
En passant, mi pare di capire che tu vuoi ottenere dei modelli 3D a 
partire dalle isoipse fornite dalle planimetrie; hai verificato di avere 
una densita' delle linee sufficiente ad approssimare un solido decente?
Inoltre: hai mai considerato l'alternativa DEM? Oddio, magari un DEM di 
Roccapizzopapero Inferiore e' difficile da trovare... :-)))
-- 
Alessandro "JonVon" Vannini - a.va...@mclink.ti
http://www.mclink.it/personal/MC7872/index.htm
<<Change .ti with .it in the email address to reply>>