MULTIMEDIA


Recommended Posts

<FONT COLOR="ff0000">Esporti da suono ad aif per esempio e il gioco e' fatto. Poi con

taglia ed incolla ti prepari il file con le dimensioni che vuoi.</FONT>

scusa, temo di non aver capito bene...

Poniamo che io abbia un link tipo:

" rtsp://real.bluewin.ch/montreuxjazz03/etc-etc-etc.rm"

mi indichi passo passo come procedo?

Grazie, perdona la mia imperizia (non ho mai salvato audio/video streming prima d'ora)

ciao

Link to comment
Share on other sites

  • Replies 1.3k
  • Created
  • Last Reply

Top Posters In This Topic

A boh! L'unica cosa che posso dirti è che non ho mai venduto un solo QTVR: mi sono sempre mancati "determinati requisiti" ... E non solo per quanto concerne QTVR (o Shockwave3D, o players Java) ma anche a proposito di tutto il resto (fotografia cd: tradizionale, sceneggiature cinematografiche - 2 - o format televisivi che fossero! o libri - 1 -).

Qualche giorno fa ho accennato a Cologno Monzese. Pensa che nel marzo del 1997 Battocchio non sapeva più cosa fare per frenare il declino di Baudo e della Cuccarini e, così, mi ha convocato insieme ad un'altra decina di persone. Gli ho scritto un Format che credevo veramente bello; tutto costruito intorno all'uso di set virtuali che all'epoca erano stati provati solo in Canada ed a Madrid (Neppure una volta negli USA). Si sarebbero usate le Onyx SGI (già in grado di generare anche le ombre in tempo reale) per una serie di musical che avrebbero raccontato, ogniuno, una storia d'amore da Rotocalco ambientata nei luoghi originali attraverso il rendering delle onyx ed il compositing in RealTime. Maya era appena uscito ed ancora dominava Power Animator di Alias Wavefront. I protagonisti sarebbero sempre stati Baudo e la Cuccarini.

Insomma, il mio (quarantottesimo) format non gli fu neppure presentato. Non si fece proprio nulla.

E questo per non parlare di quella masnada di buffoni che "lavora/va" tra V.le Mazzini e Via Teulada (a Bepi, vedi d'anna aff...): che se apro bocca poi scoppia una bomba.

E' l'Italia, caro Stefano; quella che la cernia delle cernie giganti, tal Costanzo Maurizio, tenta disperatamente *et inutilmente* di salvare col manifesto d'accusa verso gli uomini di Murdoch, colpevoli (certo lui non lo può dire) di non guardare in faccia alle clientele, ai privilegi abusivi ma più che consolidati, all'esercito dei parassiti annidati ovunque, perciò accusandoli di non avere la patente ... De che, de mafia?

Bene, ti ricordi il ropgramma di quest'inverno condotto dal "giovine" Amendola? Maglio: ti ricordi la prima puntata (perchè dopo il bombardamento di telefonate del sottoscritto sono cambiate molte cose nella produzione Rizzoli Audiovisivi)? Bene quella era l'orribile, volgarizzata e banalissima copia del lavoro di cui sopra.

Chiedo scusa per lo sfogo ma sono a quota 5 beK's

e devo smaltire (non smentire). Cercherò di farmi perdonare spiegando come funziona PanoTools ...

Gianni

ps: scritto nella semioscurità di un pub e non riletto. Prego di essere indulgenti a proposito degli errori di grammatica (e/o quan'altro)

Link to comment
Share on other sites

Aggiungo alla precedente richiesta di aiuto anche la necessità di capire perchè nn mi funzionano tutti gli applicativi di panotools (PTAverage,PTInterpolate,PTMorpher,PTStereo,PTStitcher,PTStripe)...

ho seguito le istruzioni ma mi danno sempre un errore e crashano...spero possiate aiutarmi...tnk

Link to comment
Share on other sites

PanoTools non è il software comunemente inteso ma una libreria che opera sulle immagini in moltissimi modi, praticamente tutti quelli utili a correggere i difetti tipici degli schemi ottici ed a trasformare la geometria delle immagini.

Per chiamare i servizi di pano12 (questo il nome della libreria) il suo originale sviluppatore, il prof. Dersch, aveva previsto una serie di piccole applicazioni chiamate "helper" ogniuna con un compito specifico attivato attraverso il drag'n drop sulla rispettiva icona di uno script, all'occorrenza selezionato insieme alle immagini sulle quali operare. Il linguaggio dello script era/è elementare ma la conoscenza dei concetti di istruzione meno così sono nate alcune interfaccie grafiche che negli anni hanno raggiunto un notevole livello di finitura integrando in un workflow grafico l'imput di tutte le informazioni di cui i vari "helper" di Helmut Dersch avevano/hanno bisogno per fare il loro lavoro. Nonostante questo, e nonostante l'implementazione in PTGUI (la più evoluta delle intefaccie, solo per PC) di una procedura guidata e del "panorama editor" (una finestra che permette la manipolazione grafica delle immagini agendo sulle relative icone) l'utilizzo di PanoTools resta un lavoro manuale che continua a richiedere la conoscenza dei parametri da impostare per ottenere risultati di qualità.

Dunque vediamo quali siano i concetti, limitandoci a quelli necessari per fare il cd. Stitching di più immagini. In altre parole prescindendo, per ora, dall'interfaccia grafica.

Immaginiamo di avere davanti due scrivanie: una dove abbiamo buttato alla rinfusa tutte le immagini scattate ed un'altra che useremo per comporre il risultato finale. La prima è l'imput e la seconda l'output, il canvas su cui assembleremo la panoramica.

Immaginiamo di dover fare un puzzle. Prendiamo nel disordine quella che crediamo la foto centrale, la prima scattata, il primo pezzetto del puzzle e mettiamolo al centro della scrivania vuota. Questa diventa l'àncora, l'immagine che non verrà ruotata o spostata ma invece assunta da PanoTools come riferimento sulla cui base trasformare le altre immagini. Poi cerchiamo la seconda che sta alla destra della prima, la terza che sta sopra, la quarta sotto (e così via).

Perchè PanoTools possa incollare fra loro le immagini e farne una sola deve sapere i dove sono più o meno collocate nello spazio e per comunicarglielo dobbiamo usare un linguaggio 3D a sua volta derivato dal gergo aereonautico: Il "pitch" che indica il puntare in alto (+) od in basso (-) il muso dell'aereo, lo "yaw", l'indirizzarlo a destra (+) invece che a sinistra (-) ed il "roll" per l'abbassamento dell'ala destra (+) o di quella sinistra (-).

La prima immagine, l'àncora, avrà "roll" uguale a 0 "Yaw" uguale a 0 e "pitch" uguale a zero. In realtà nessuno di questi parametri deve essere uguale a zero ma se la macchina fotografica è in bolla ci si avvicina e resta cmq l'esempio più semplice da assumere. La seconda immagine, che abbiamo detto essere a destra della prima, avrà dunque un "roll" uguale a 0, un "Pitch" uguale a 0 ma uno "Yaw" di mettiamo +30° o di quant'altri abbiamo puntato la fotocamera verso destra per fare la seconda immagine. La terza foto, quella in alto, avrà gli stessi valori della prima e della seconda a parte il pitch che sarà di +30°. La quarta immagine avrà un pitch negativo (e così via).

Dobbiamo dire a PanoTools anche il tipo di obiettivo usato per scattare le foto: se un fisheye circolare, un fisheye full frame; se immagini cilindriche ottenute con macchine come le Noblex, le Widelux o le russe Horizon oppure immagini rettolineari (quelle derivate dalla stragrande maggioramza degli obiettivi diciamo "normali"). Specificare l'angolo di campo orizzontale, che diventa quello verticale con la macchina in posizione da ritratto, ed i valori di distorsione radiale. Questo è un argomento complesso, per ora scriviamo solo i valori iniziali così come li vedremo di qui a poco. Infine dobbiamo specificare la dimensione delle immagini da incollare.

E' importante chiarire come tutti i valori in parola sono (possono essere) approssimativi in quanto verranno ottimizzati successivamente dal software attraverso la matematica fotogrammetrica: cioè in riferimento al posizionamento assoluto nello spazio tridimensionale dei parametri da noi specificati e da lui ottimizzati.

A questo punto possiamo scrivere la prima linea di imput

i f0 w1200 h1200 y0 p0 r0 v45 a0 b0.001 c0

i f0 w1200 h1200 y40 p0 r0 v=0 a=0 b=0 c=0

i f0 w1200 h1200 y0 p40 r0 v=0 a=0 b=0 c=0

i f0 w1200 h1200 y0 p-40 r0 v=0 a=0 b=0 c=0

# i i parametri che hanno il valore "=0" fanno riferimento a quello dell'immagine O, la prima. Siccome l'obiettivo usato per scattare le fotografie è lo stesso non c'è ragione per specificarlo ogni volta.

# i sta per imput

# f sta per formato dell'immagine e 0 indica il tipo rettolineare, cioè l'obiettivo "normale".

# w sta per Width, la larghezza, la base dell'immagine.

# h sta per altezza dellimmagine in ingresso

# y sta per Yaw

# p sta per Pitch

# r sta per Roll

# V sta per view (field of view, angolo di campo)

# a sta per il fattore di distorsione radiale periferica dell'immagine

# b sta per il cofficiente di distorsione radiale medio (molti si limitano a correggere solo questo tralasciano "a" e "c"

# c sta per il coefficiente di distorsione radiale relativo al centro dell'immagine; dunque il più trascurabile.

l'imput (i) senza l'output (p) non avrebbe senso e dunque ecco che dobbiamo dichiarare il tipo di panoramica che vogliamo. PanoTools può renderizzare una proiezione rettolineare, cioè un mosaico di immagini con cui, per esempio, congiungere due fotografie prese perchè un una sola non ci stava tutta la facciata del Duomo di Orvieto (una parallela al terreno ed una con la macchina puntata verso l'alto). Oppure una panoramica cilindrica come i vecchi QTVR od - ancora e sopratutto - una panoramica sferica (equirettangolare) da convertire in QuickTime cubico. Poi dobbiamo dire a PanoTools la dimensione del rendering, l'angolo di campo, che in una panoramica completa sarà di 360°, la larghezza della sfumatura fra le immagini incollate (cioè la modulazione della transizione definita nel numero di pixel utilizzati per passare da un'immagine a quella adiacente o dal bianco al nero della maschera di livello nel caso si scelga come formato di scrittura del file "PSD_mask"). Infine il formato di file, appunto.

Perciò:

p f0 w2000 h2000 v80 u10 n"PSD_mask"

# p sta per panorama (cioè output)

# f sta per formato e 0 indica il tipo rettolineare

# w sta per width, larghezza, base

# h sta per altezza

# v sta per angolo di campo del rendering che sarà maggiore di quello dato da una sola immagine ma minore del doppio, considerata la zona di sovrapposizione fra due immagini.

# u sta per la larghezza del passaggio da una immagine a quella adiacente e 10 sono i pixel specificati

# n sta per il formato di file e "PSD_mask" indica il file di photoshop con le maschere di livello editabili fra una immagine e la successiva del puzzle.

Quindi lo script per incollare il mosaico dell'esempio, trascinandolo insieme alle immagini sull'Helper chiamato PTStitcher insieme alle immagini contemporaneamente selezionate, sarebbe:

p f0 w2000 h2000 v80 u10 n"PSD_mask"

i f0 w1200 h1200 y0 p0 r0 v45 a0 b0.001 c0

i f0 w1200 h1200 y40 p0 r0 v=0 a=0 b=0 c=0

i f0 w1200 h1200 y0 p40 r0 v=0 a=0 b=0 c=0

i f0 w1200 h1200 y0 p-40 r0 v=0 a=0 b=0 c=0

Abbiamo detto sopra che i valori relativi alla posizione delle nostre immagini fra loro, dell'angolo di campo orizzontale e dei coefficienti di distorsione radiale possono (sono sempre) approssimati perchè panoTools li ottimizza successivamente. Ma come? attraverso l'affinamento della posizione assoluta dei cd. Control Points. In pratica è necessario dare a PanoTools le coordinate di più punti presenti ogni due immagini adiacenti: la foto 0 con la 1, la 1 con la due, la due con la tre et c. Questo è un lavoro tedioso che viene agevolato dalle interfaccie grafiche. All'inizio si raccoglievano le coordinate misurandole con la finestra info di Photoshop, poi la procedura di incollare bandierine numerate su una copia dell'immagine ed usare il plug in per photoshop di panoTools al fine di lanciarne il riconoscimento automatico. Da qualche anno, grazie a Dio, si è passati per un javascript che raccoglie/va i punti cliccando il mouse in una finestra di IE o Netscape (pixelPicker) per poi trascinare lo script su PTOptimizer (un altro helper di PTools) fino alle varie PTGUI, Open PTGUI, PT Assembler e PTMac che radunano tutto in un solo workflow provvedendo a semplificare molto la vita.

Così eccoci ai control points e già che ci siamo cambiamo tutto; facciamo il caso più classico, quello per cui si usa di più PanoTools: lo stitching di 3 (o 4 o 5) immagini fisheye sferiche in una panoramica equirettangolare di 360 x 180 gradi.

Abbiamo bisogno di una coppia di punti di controllo per ogni parametro da ottimizzare e l'esperienza insegnerà che non è bene ottimizzare tutti i parametri un una volta sola; Anche, però, che molti parametri possono essere ottimizzati una sola volta per tutte. Questa la sintassi per stabilire i Control Points:

c n0 N1 x__ y__ X__ Y__

# c sta per control

# n0 in minuscolo è la prima della coppia di immagini in cui si deve identificare un particolare comune (per ex l'angolo di una finestra)

# N1 è la seconda della coppia.

# x..y.. in minuscolo sono le coordinate cartesiane del punto/spigolo della finestra sulla prima immagine.

# X..Y.. in maiuscolo sono le coordinate dello stesso punto nella seconda immagine.

Perciò, nel caso volessimo di 6 punti di controllo per fotografia e tre scatti col fisheye circolare distaziati di 120° ogniuno; considerato che la prima immagine va con la seconda, la seconda con la terza e la terza nuovamente con la prima, avremo uno script [in questo caso vuoto] del tipo:

p f2 w3472 h1736 v360 u10 n"PSD_mask"

i f2 w1736 h1736 y0 p0 r0 v185 a0 b0.01 c0

i f2 w1736 h1736 y120 p0 r0 v=0 a=0 b=0 c=0

i f2 w1736 h1736 y240 p0 r0 v=0 a=0 b=0 c=0

# nella linea "p" cambia il formato di output che non è più "0" ma "2" cioè equirettangolare/sferico.

#nella linea "i" cambia anche il formato di imput che non è più "0" (rettolineare) ma "2" cioè fisheye circolare. Se le immagini fossero state fatte con un fisheye full frame, quelli che riempiono tutto il fotogramma e coprono 180° solo sulla diagonale, l'imput sarebbe stato "f3".

c n0 N1 x__ y__ X__ Y__

c n0 N1 x__ y__ X__ Y__

c n0 N1 x__ y__ X__ Y__

c n0 N1 x__ y__ X__ Y__

c n0 N1 x__ y__ X__ Y__

c n0 N1 x__ y__ X__ Y__

c n1 N2 x__ y__ X__ Y__

c n1 N2 x__ y__ X__ Y__

c n1 N2 x__ y__ X__ Y__

c n1 N2 x__ y__ X__ Y__

c n1 N2 x__ y__ X__ Y__

c n1 N2 x__ y__ X__ Y__

c n2 N0 x__ y__ X__ Y__

c n2 N0 x__ y__ X__ Y__

c n2 N0 x__ y__ X__ Y__

c n2 N0 x__ y__ X__ Y__

c n2 N0 x__ y__ X__ Y__

c n2 N0 x__ y__ X__ Y__

Ora che abbiamo stabilito tutto dobbiamo ottimizzare i vari parametri sulla base dei punti di controllo elencati. Per farlo usiamo la linea "v":

v v0 b0 y1 p1 r1 y2 p2 r2

# v0 sta per ottimizza l'angolo di campo dell'immagine "0". nella numerazione PanoTools parte da O e non da 1. Siccome l'obiettivo usato per le tre immagini è lo stesso, si ottimizza solo l'angolo di campo dell'àncora che in questo caso è la "0"

# b0 sta per ottimizza la distorsione media do "0" che sarà uguale a quella di 1 e di 2 per le stesse ragioni di cui prima.

# y1 sta per ottimizza lo yaw, l'orientamento orizzontale, quindi la rotazione sull'asse verticale dell'immagine "1" (la seconda)

#p1 sta per ottimizza il pitch dell'immagine "1" Cioè di quanto la macchina fotografica fosse puntata verso l'alto o verso il basso.

# r1 sta per il roll dell'immagine "1" cioè la rotazione intorno all'asse orizzontale.

# y2 come sopra ma per l'immagine due (la terza)

# p2 vedi sopra

# r2 vedi ancora sopra.

Lo script d'esempio [questa volta pieno] è pronto; tarsciniamolo sull'icona di PTOptimizer per ottenere quanto segue:

p f2 w3472 h1736 v360 u10 n"PSD_mask"

i f2 w1736 h1736 y0 p0 r0 v185 a0 b0.01 c0

i f2 w1736 h1736 y120 p0 r0 v=0 a=0 b=0 c=0

i f2 w1736 h1736 y240 p0 r0 v=0 a=0 b=0 c=0

v v0 b0 y1 p1 r1 y2 p2 r2

c n0 N1 x1430 y940 X214 Y931

c n0 N1 x1415 y645 X250 Y627

c n0 N1 x1411 y496 X340 Y490

c n0 N1 x1470 y654 X297 Y646 t1

c n0 N1 x1560 y693 X375 Y702

c n0 N1 x1453 y589 X315 Y584

#c n0 N1 x1494 y938 X273 Y926

c n1 N2 x1489 y964 X277 Y947

c n1 N2 x1501 y844 X281 Y831 t1

c n1 N2 x1411 y556 X298 Y538

c n1 N2 x1412 y617 X265 Y592

c n1 N2 x1524 y507 X436 Y542

c n1 N2 x1532 y840 X313 Y828

#c n1 N2 x1521 y973 X308 Y953

c n2 N0 x1455 y763 X248 Y757 t1

c n2 N0 x1517 y571 X386 Y596

c n2 N0 x1565 y737 X366 Y746

c n2 N0 x1430 y711 X238 Y702

c n2 N0 x1353 y397 X375 Y397 t1

c n2 N0 x1377 y445 X349 Y443

*

# ====================================================================

# Output generated by Panorama Tools

# 551 function evalutations

# the relative error between x and the solution is at most tol

# Panorama description

# p f2 w3472 h1736 v360 n"PSD_mask"

# Parameters for Each Input Image:

# (*) - optimized (p) - preset

# Image No 0:

# Yaw: 0 deg (p) Pitch: 0 deg (p)

# Roll: 0 deg (p) HFov: 179.804 deg (*)

# Polynomial Coefficients: a 0.000000 (p); b -0.096717 (*); c 0.000000 (p)

# Horizontal Shift: 0.000000 (p) Vertical Shift: 0.000000 (p)

# 4th polynomial coefficient: 1.09672

# Command for Panorama Creation:

o f2 r0 p0 y0 v179.804 a0.000000 b-0.096717 c0.000000 u10 -buf

# Image No 1:

# Yaw: 120.201 deg (*) Pitch: 0.0708954 deg (*)

# Roll: -0.968018 deg (*) HFov: 179.804 deg (*)

# Polynomial Coefficients: a 0.000000 (p); b -0.096717 (*); c 0.000000 (p)

# Horizontal Shift: 0.000000 (p) Vertical Shift: 0.000000 (p)

# 4th polynomial coefficient: 1.09672

# Command for Panorama Creation:

o f2 r-0.968018 p0.0708954 y120.201 v179.804 a0.000000 b-0.096717 c0.000000 u10 +buf -buf

# Image No 2:

# Yaw: -119.856 deg (*) Pitch: 0.00604071 deg (*)

# Roll: -0.285043 deg (*) HFov: 179.804 deg (*)

# Polynomial Coefficients: a 0.000000 (p); b -0.096717 (*); c 0.000000 (p)

# Horizontal Shift: 0.000000 (p) Vertical Shift: 0.000000 (p)

# 4th polynomial coefficient: 1.09672

# Command for Panorama Creation:

o f2 r-0.285043 p0.00604071 y-119.856 v179.804 a0.000000 b-0.096717 c0.000000 u10 +buf

# ====================================================================

# Control Points: Distance between desired and fitted Position (in Pixels)

# Control Point No 0: 2.14679

# Control Point No 1: 1.31373

# Control Point No 2: 0.973645

# Control Point No 3: 1.04248

# Control Point No 4: 2.33718

# Control Point No 5: 0.473072

# Control Point No 6: 1.28798

# Control Point No 7: 0.962731

# Control Point No 8: 0.594887

# Control Point No 9: 2.77871

# Control Point No 10: 3.64498

# Control Point No 11: 1.37365

# Control Point No 12: 0.704597

# Control Point No 13: 1.29363

# Control Point No 14: 1.26191

# Control Point No 15: 0.622329

# Control Point No 16: 0.763426

# Control Point No 17: 3.12713

C i0 x2267.85 y925.766 X2268.57 Y924.964

C i1 x2269.28 y924.162 X2268.57 Y924.964

C i0 x2274.94 y688.059 X2274.85 Y688.711

C i1 x2274.77 y689.362 X2274.85 Y688.711

C i0 x2321.51 y570.319 X2321.04 Y570.468

C i1 x2320.58 y570.617 X2321.04 Y570.468

C i0 x2330.74 y700.353 X2330.22 Y699.482

C i1 x2329.7 y698.611 X2330.22 Y699.482

C i0 x2419.09 y738.343 X2420.03 Y737.639

C i1 x2420.96 y736.936 X2420.03 Y737.639

C i0 x2330.94 y648.264 X2330.91 Y648.029

C i1 x2330.89 y647.793 X2330.91 Y648.029

C i1 x18.4651 y934.042 X18.3552 Y933.407

C i2 x18.2453 y932.773 X18.3552 Y933.407

C i1 x25.6087 y840.723 X25.1273 Y840.762

C i2 x24.6459 y840.802 X25.1273 Y840.762

C i1 x3453.97 y608.727 X3454.14 Y608.971

C i2 x3454.31 y609.215 X3454.14 Y608.971

C i1 x3436.3 y657.286 X3437.23 Y656.251

C i2 x3438.15 y655.215 X3437.23 Y656.251

C i1 x130.204 y590.601 X131.204 Y592.125

C i2 x132.203 y593.649 X131.204 Y592.125

C i1 x58.3791 y837.83 X57.6923 Y837.822

C i2 x57.0055 y837.815 X57.6923 Y837.822

C i2 x1140.12 y782.275 X1140.47 Y781.863

C i0 x1140.82 y781.451 X1140.47 Y781.863

C i2 x1251.36 y641.364 X1251.94 Y641.66

C i0 x1252.51 y641.956 X1251.94 Y641.66

C i2 x1260.28 y768.366 X1260.16 Y767.746

C i0 x1260.05 y767.125 X1260.16 Y767.746

C i2 x1121.23 y739.633 X1121.54 Y739.652

C i0 x1121.85 y739.671 X1121.54 Y739.652

C i2 x1153.23 y480.376 X1152.85 Y482.353

C i0 x1152.46 y484.329 X1152.85 Y482.353

C i2 x1152.18 y522.353 X1151.34 Y523.668

C i0 x1150.49 y524.984 X1151.34 Y523.668

Quello che vediamo sopra altro non è che l'nsieme dei parametri necessari a realizzare la panoramica: quelli che abbiamo chiesto a PTOptimizer di ottimizzare sono comtaddistinti dal simbolo (*) gli altri restano come noi li abbiamo inseriti e contrafddistinti da (p) cioè "preset".

Lo script dovrebbe essere ora facilmente leggibile, eccetto:

1) # 4th polynomial coefficient: 1.09672

che rappresenta il coefficente polinominale di distorsione radiale: quello che sommato ai valori di "a" "b" e "c" deve sempre dare "1". Viene gestito automaticamente da PTStitcher e mostrato solo per ulilizzi avanzati di PanoTools quali la correzione dell'aberrazione cromatica per la quale si deve operare manualmente sui singoli canali RGB e riportare il valore di cui sopra ad uno per evitare il resize dell'immagine.

2) i parametri "d" ed "e" che risultano "0.000" di default perchè non sono stati neppure inseriti e che nello script sono chiamati per esteso

3) # Horizontal Shift: 0.000000 (p) Vertical Shift: 0.000000 (p)

e rappresentano lo scostamento del centro dell'immagine rispetto all'asse ottico.

In basso troviamo le coordinate dei Control point che abbiamo inserito con sotto

la lunga lista di "C i0" che rappresenta i valori ottimizzati ed automaticamente trasferiti nei parametri di output:

# Command for Panorama Creation:

o f2 r0 p0 y0 v179.804 a0.000000 b-0.096717 c0.000000 u10

Sulla destra dei punti di controllo inseriti da noi stessi è rappresentata la differenza in pixel fra la posizione 3D specificata da questi e quella ottimizzata da PanoTools.

E' bene che la media non superi mai 2 pixel. Se c'è qualche punto di controllo lontano 4 o 5 pixel dal suo valore ottimizzato toglierlo anteponendo un cancelletto alla riga o sostuitirlo.

Altri parametri di imput, come "t1" che si vede alla fine di alcune linee o "t2" o "t3" od, ancora, "o" servono per:

t1 - raddrizzare l'orizzonte costringendo l'ottimizzazione sull'asse orizzontale mentre si dispongono i punti di controllo generalmente lungo i profili verticali dei palazzi

t2 - come sopra ma sfruttando le linee orizzontali, sopratutto l'orizzonte stesso, quando visibile.

t3 - come sopra ma segnando linee anche oblique che si rette nel mondo reale.

o - obbliga il Morph to fit: la distorsione per realizzare il matching fra punti non altrimenti meglio correlabili.

PanoTools offre ancora molte altre opzioni ma, per ora, vediamo solo quali siano i formati di esportazione della linea "p" (cioè dell'imput) e gli algoritmi di interpolazione a disposizione nella linea "m". PanoTools, a differenza di alcuni blasonati software commerciali, permette infatti trasformazioni di qualità allo stato dell'arte.

Gli algoritmi di "m":

m i0 sta per poly3 ed è l'ottimo di default

m i1 spline 16

m i2 spline 32

m i3 sinc256 (quello che uso io:-)

m i4 spline 64

m i5 bilinear

m i6 nearest neighbour

m i7 sinc1024

i formati di export di "p" sono indicati dal parametro "n":

n"PICT"

n"PSD_mask"

n"PSD_nomask"

n"PAN" Smooth Movie

n"IVR" LivePicture

n"IVR_java" Player Java di LivePicture

n"VRML"

n"QTVR" attenzione, l'esportazione *diretta* in QTVR è solo cilindrica. Può essere seguito dal parametro "c" per il codec (c 0 sta per jpeg, c1 per Cinepak e c2 per Sorenson) da quello "q" per la compressione in una scala da 1 a 100 (ex q80). Da "p" per l'initial pan (o-360°) e "v" Field of view (0-360)

n"JPEG" Può essere fatto seguire da "q" e da "g" che imposta il progressive.

n"PSD" Photoshop senza livelli ma a 48 bit per canale

n"PNG" PNG che supporta 48 bit

n"TIFF" TIFF

n"3DMF" ah che nostalgia ...

Ohh. Adesso possiamo portare lo script nella cartella delle immagini, selezionarlo insieme a queste e trascinare tutto sull'icona di PTStitcher.

Non resta che aspettare (anche molto se su è scelto un algoritmo di interpolazione di alta qualità).

Oppure, così impariamo ancora meglio cosa stiamo facendo, fare uno script copiando solo le linee "p" ed "i" (le uniche che servono) ottimizzate da PTOptimizer più la specificazione di un algorismo di interpolazione diverso (migliore) di quello stabilito per dafault. Così:

p f2 w3472 h1736 v360 u10 n"PSD_mask"

o f2 r0 p0 y0 v179.804 a0.000000 b-0.096717 c0.000000 u10

o f2 r-0.968018 p0.0708954 y120.201 v179.804 a0.000000 b-0.096717 c0.000000 u10

o f2 r-0.285043 p0.00604071 y-119.856 v179.804 a0.000000 b-0.096717 c0.000000

m i3

Finito.

Sembra difficile ma non lo è; sopratutto una volta capiti i concetti esposti sapremo esattamente cosa stiamo facendo ed usare una interfaccia grafica sarà questione di trovare qua e là puldanti o/e caselle di selezione di cui conosciamo ormai bene il significato. Un gioco da ragazzi.

S possono trovare le GUI ai seguenti URL

http://www.ptgui.com/

http://www.tawbaware.com/ptasmblr.htm

http://www.nic.fi/~juhe/ptbcbgui/

http://www.kekus.com/

Gianni

Link to comment
Share on other sites

ciao ragazzi,

domanda da neofita nell'ambito de video digitale.

Registarto un programma da Tv su cassettta VHS:

come faccio per digitalizzarlo (.mpg) utilizzando iBook G3-900MHz

oppure PowerBook G3 400) ?

Cosa mi serve sul lato hard/software?

(os 9 o X)

GRAZIE

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share