PDA

Visualizza Versione Completa : flickering: come risolverlo?



gebazzz
17-10-05, 01:08
ciao a tutti.
ho fatto un render di un filmato, ma ho vistosi problemi di flickering. c'è un modo x eliminarli in post?

ho anche incominciato a rirenderizzare una parte della scena, con livelli di AA più alti.. ma il problema si ripropone alla grande. se non esiste un modo per risolvere in post, cosa mi consigliate di fare? :noidea:

vash
love&peace

Tempesta
17-10-05, 22:33
detto così è difficile darti una risposta.
posta un'immagine e potremo esserti più di aiuto.

i suggerimenti base sono :
- disabilita adaptive sampling, l'antialias lavora meglio e usi meno passate, inoltre abilita MB, magari a bassisimo valore se non vuoi il mosso, questo abilita un campionamento ulteriore che migliora le passate di illuminazione e campionamento delle texture.

-prova a disabilitare il blur e mip sulle texture a dettaglio molto fine, alle volte possono dare strani effetti moires

- se usi field rendering è corretto vedere un certo flicker su schermo computer, ma non in uscita video

- se hai dettagli di texture procedurali molto fini, prova a bakerizzarle e applicarle come texture mappa.
per il resto fornisci più info.
ciao

gebazzz
17-10-05, 22:50
purtroppo una sola immagine non rende, visto che il difetto si nota in movimento..
ho già attivato un mb al 20%, intuendo che avrebbe aiutato. il rendering è fatto con fprime, quindi niente adaptive sampling. il problema si nota su dei particolari geometrici.. in pratica, immaginate una colonna a base quadrata, solo che i bordi sono smussati e scalettati più volte.. quindi, lunghi dettagli verticali che appena la camera ruota un po' si fanno notare. a dir la verità non sempre, e solo su certe distanze. cmq, nel frattempo sto continuando a raffinare con fprime, e tra l'altro ho cambiato il settaggio di qualità del raffinamento, mettendo la qualità delle area lights a bassissimo livello (0.050 credo) per dare la massima precedenza all'antialiasing (ormai sono a raffinamento 100 del renderer, quindi delle area lights non mi frega più molto..)

cmq, la domanda era più che altro se c'è un procedimento in post-processing che possa aiutare a risolvere il problema, ecco perchè postato in questa sezione.

vash
love&peace

Tempesta
17-10-05, 23:44
il fatto che usi fprime cambia tutto, perchè le impostazione e l'engine di lavoro è completamente diverso, l'engine di fprime è particolarmente sensibile ai dettagli ad alta frequenza.
attento ad un dettaglio, più abbassi il valore di campionamento della luce più abbassi la qualità, con meno sampling, devi alzarlo per avere più accuratezza nel render, e in particolare per ammorbidire il tutto.
una possibilità è in post usare un filtro che ammorbidisca tutto con un leggero blur, uno ,3 pixel per esempio, oppure meglio sarebbe usare un plugin per il motion blur in post tipo quello della twixtor. costicchia ma ne vale la pena per la qualità.
l'immagine era stata chiesta perchè può dare l'idea di cosa può causare il flickering.

loriswave
19-10-05, 10:08
qualcuno ha bisogno?
mandatemi anche in privato un help, se non no è detto che lo veda.

Quello che puoi fare in post è molto, dipende dal problema, inizierei con un tentaivo di questo tipo:

Renderizza il filmato con il doppio dei frame, perciò come se fosse a 50 fps invece di 25 fps. Dopo di che in un programma di compositing devi schiacciare l'immagine a metà della risoluzione verticale, perciò passare da 576 a 288. dopo di che applica un filtro di interlace, questi non fa altro che prendere il primo rigo dell'immagine A e il secondo rigo dell'immagine B il secondo dell'immagine A e il secondo dell'immagine B ecc e va a creare una nuova immagine. dimezzando cosi la lunghezza e ritornando a 25 fps. quello che sucede è che così ahi un immagine in fild, perciò non stroba, ma con talmente tanta informazione da evitare il flikering. fai un test e se non si risolve proviamo qualcosa altro.

mipime durevole
19-10-05, 11:38
realizzando un'animazione per l'allora Imagine e montata su una VLAB Motion Amiga avevo problemi di buffer-underflow: cioè la scheda non riusciva a sostenere il frame rate, per cui dovetti diminuire il peso in Kb di ciascun fotogrammi, tra le cosi che provai fu un leggerissimo BLUR con un programma di fotoritocco. L'effetto fu duplice: non più problemi di playback e un flickering fastidiosissimo su un pavimento con righe bianche e sottilissime vie di fuga sparì, e l'effetto fu tanto più evidente sui fotogrammi in fermo immagine...
Con un programma votato al batch processing come image-ready lo puoi applicare in 2 balletti su tutti i frames della tua animazione. Magari fatti prima una copia dei frames originali...
Se ti può aiutare....
ciao

Mip.

vise672000
19-10-05, 13:08
Ciao! talvolta ho anch'io problemi di flikering...ho provato ad utilizzare il plugin della vision (re-interlace+motion blur) in after effects e ho risolto.
Non capisco la procedura di resizing...

loriswave
20-10-05, 08:49
buongiorno,
Avete mai visto un presentatore con la giacca a righe sottili, o quei tessuti a quadratini, o anche dei gessati importanti?
Noo?
In realtà il flikering su linee sottili non è un problema di 3D, ma bensì un problema legato al segnale televisivo. Il problema descritto da vashts c'è anche in alcune riprese video specialmente se si usa un digital betacam. La troppa definizione e la mancanza di profondità di campo fanno saltar fuori i problemi.
Una soluzione potrebbe essere perciò applicare una leggera profondita di campo in post processing.

Se il flikering è dovuto invece a superfici con texturing molto pixxelato, a parte settare la superfice con meno definizione si può pensare di blurare solo quella.
Immaginiamo una lunga zoomata su un campo di erba, da vicino ci serve definizione, da lontano tutti questi particolari flikkerano, alora da lontano applicheremo un blur che mano a mano che ci avviciniamo diminuisce, se si vuole isolare un oggetto, tipo una bicicletta che è nel campo, faremo in modo esportare id delle superfici e usarlo come masckera per l'effetto di blur.
Cos'è l'id delle superfici?
Oltre all'immagine LW può esportare altre informazioni, il più comune è l'alpha channel, poi esiste lo z-buffer, ed esiste l'id delle superfici, che altro non è che un imagine ad un canale colore con 256 colori che per ogni superfice asegna uno di questi. Con un programma di post si può indicare di assegnare un effetto ad un solo di questicolori e perciò ad una sola superfice.

Mi raccomando, non esagerare mai con blur e cose simili, eliminano dei problemi, ma se si esagera diminuiscono la belezza di un immagine e del vostro certosino lavoro, bisogna trovareil giusto compromesso anche tenendo conto dell'output finale. Se la vostra immagine finirà su un vhs ricordate che sarà già lui a sfuocare e impapocchiare un po l'immagine, se finiscono su un DVD si creeranno altri artefatti, se finiscono su un digital betacam o non compresse in qualche altro formato non subiranno ulteriori perdite e perciò saranno fedeli a quello che vedete.
Un ultimo consiglio: Se la vosrte animazioni dovessero essere viste solo su televisori, ricordate che il pal è interlacciato, non ha 25 fps ma bensi 50 field al secondo, al contrario su un monitor di computer anche un DVD è visto a 25 fps perciò senza field. Indi per cui se prevedete l'animazione chepossa essere vista su entrambi i formati io preferisco avere un pò di strobo ma senza field.

Ovviamente per ulteriori info e domande, LWITA.com

Tempesta
20-10-05, 09:34
ciao loriswave,
l'argomento è corretto, però il flickering di cui parli dovrebbe essere visibile solo nella visione a monitor tv, interlacciato e non da monitor computer, progressivo, il problema sul 3d nasce perchè il campionamento dell'antialias non è abbastanza potente da ammorbidire le linee e quindi da un frame all'altro si spostano, scompaiono etc. mentre nella ripresa video il flicker è dato dal fatto che una linea molto sottile viene registrata (o trasmessa) su un solo field alla volta, quindi appare per un cinquantesimo di secondo e poi scompare, per poi riapparire un cinquantesimo di secondo dopo, perchè rimane registrata solo su un field, non è abbastanza grande da rimanere registrata sui due field.
quando hai problemi di registrazione delle giacche a linee sottili, etc, l'effetto che nasce si chiama moires, che è un problema dato dalla vicinanza di tante linee riprodotte con un mezzo che non ha la necessaria risoluzione per riprodurle, questo problema non è televisivo, è visivo.
infatti anche che fa incisioni, chi realizza i disegni per francobolli, banconote, stoffe e stampe in generale deve stare attento alla creazione di disegni con linee e dettagli vicini, perchè possono essere causa di moires.

in generale il problema è : troppi dettagli, troppo vicini, riprodotti da uno strumento (il video in questo caso) = disturbi => flickering moires etc

in teoria l'antialias dovrebbe essere abbastanza potente da ammorbidire le linee eccessivamante vicine e forti per evitare tale problema, ma solo ad alti valori di campionamento (9 passate e più spesso) senza adaptive sampling, che spesso è la causa del flickering.

altri motori di rendering come renderman hanno filtri che lavorano le texture prima della loro applicazione e poi in fase finale ricontrollano l'immagine, in lightwave la cosa più semplice è dare un occhio bene alla scena e applicare l'antialias senza adaptive sampling, perchè nei casi con linee sottili, dettagli fini di texture (bitmap o procedural) può essere causa di flicker e altri problemi.
ciao a tutti

p.s. per la correzione in post io ho preferito investire sul twixtor motion blur, che legge il flicker come movimento da blurrare e aggiunge blur localizzato solo su quello, e ammorbidisce solo le parti corrette da ammorbidire.

Fretwizard
20-10-05, 23:04
in pratica, immaginate una colonna a base quadrata, solo che i bordi sono smussati e scalettati più volte.. quindi, lunghi dettagli verticali che appena la camera ruota un po' si fanno notare.

Stai animando il Balrog in Moria!!!! T'ho beccato!!!!:evil: