ab.log's Journal
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 2 most recent journal entries recorded in ab.log's LiveJournal:

    Sunday, April 1st, 2012
    6:25 am
    Tracking un 2D grafika video materiālā

    Intro

    Nule esmu iesaistījies jaunas filmu studijas tapšanā, par kuru plašāka informācija vēl sekos. Mana loma šajā kontekstā – grafikas animācija (motion design) un vizuālie efekti (VFX) jeb viss, kas saistīts ar video pēcapstrādi a.k.a post-production.

    Kāmēr entuziasms vēl kūsā, vēlos iestartēt rakstu sēriju par video post-production aizkulisēm. Brīdinu – materiāls diezgan tehnisks, bet, sak’, varbūt kādam interesē kā mūsdienās top kustīgā bilde.

    Vispirms jaunās studijas gadžetu atpakošanas jeb “kastinga” video tīzeris, par kurā izmantoto tehniku arī būs runa šajā rakstā:

    Ieliec šo grafik’ iekš to video

    Bieži vien video materiālā, kurā ir kustīga kamera un/vai objekti, rodas nepieciešamība ievietot papildus grafiku tādā veidā, lai izskatītos, ka šī grafika tur ir bijusi jau filmēšanas laikā, protams, pieverot acis uz faktu, ka iespējams radīt arī materiālu, kas neatbilst jebkādiem fizikas vai veselā saprāta likumiem. Kā piemērus var minēt tekstu vai grafiska materiāla saderināšanu ar ēkām-mašīnām-cilvēkiem-objektiem, ekrānu un āra reklāmu stendu satura aizvietošanu ar citu utml. izdarības, lai: 1) radītu kaut ko, kas reālā pasaulē būtu pārāk sarežģīti vai dārgi un 2) paturētu iespēju veikt saturiskas un grafiskas izmaiņas pēc filmēšanas fakta.

    Lai rezultāts būtu gana ticams, ir jāpiestrādā pie divām lietām – grafikas sekošanai kameras vai objektu kustībai un digitālās grafikas vizuālajam reālismam. Vispirms par pirmo.

    Sekošana jeb tracking

    Tracking ir viens no stūrakmeņiem teju jebkurā video un kino materiālā, kas mūsdienās nokļūst līdz skatītājiem un ne tikai – arī tavs Kinect un kāda mazliet advancētāka video novērošanas sistēma ar to nodarbojas. Mērķis – identificēt, kur telpā attiecībā pret kameru atrodas objekts, ko šis dara un tad šim objektam kaut ko piesaistīt. Tracking tiek izmantots arī attēla stabilizācijai.

    Pastāv daudz un dažāda veida trackingi, bet šoreiz runa būs tikai par punkta un plakņu sekošanu.

    Punkta sekotājs jeb point tracker darbojas pēc principa, ka attēlā tiek norādīts mazs punkts, kura kustībai ir jāseko. Šim punktam ir jābūt skaidri saskatāmam un atšķiramam no apkārtējās vides – vislabāk strādā asi, kontrastaini stūri, melns akmenis baltā pludmalē utml.

    Ar vienu punktu ir iespējams izsekot tikai objekta kustībai X un Y koordinātēs t.i. horizontāli un vertikāli pa uzfilmēto attēlu. Ja nepieciešams zināt arī objekta rotāciju, tad būs jāizseko jau divi punkti, kas atrodas uz šī paša objekta. Ar parasto point tracker gan nav iespējams uzzināt objekta atrašanos 3D telpā, tāpēc dizaineris piedzen ieliktās grafikas izmēru un perspektīvi uz aci, tādejādi radot ilūziju par grafikas piederību dotajam kadram.

    Kameras vai objekta ātras kustības rezultātā rodas neasums – motion blur un nefokuss, kas sajauc prātu trekerim un tas mēdz pazaudēt sekojamo punktu. Šajos gadījumos ir vai nu jālabo rezultāti ar roku vai arī jāizvēlas citi punkti. Savukārt filmēšanas procesā, ja ir zināms, ka pēc tam notiks trackings, jāizvēlas ātrāks slēdža ātrums (shutter speed) un lielāks asuma dziļums (depth of field).

    Jāņem vērā, ka trekera rezultātam jābūt nevainojamam un nobīde pat par vienu pikseli var graut priekštatu, jo grafika attiecībā pret sekojamo objektu “peldēs” nevis būs kā pielīmēta. Arīdzan sekojamajam punktam ir jāatrodas attēlā visu sekošanas laiku, tas nedrīkst iziet no kadra vai tikt aizsegts ar kādu citu objektu.

    Point tracker ir veiksmīgi izmantojams attēlos, kuros ievietojamai grafikai nav svarīgi ievērot ģeometrisku precizitāti un pilnīgi pietiek ar pozīcijas informāciju 2D telpā, piemēram kā šajā Kima Holma veidotajā dubstep izpildītāja Matta video klipā:

    Otrs sekošanas veids ir plaknes sekošana jeb planar tracking, kura pionieri ir Imagineer systems ar savu mocha. mocha AE nāk kopā ar jebkuru After Effects instalāciju. Šajā versijā gan iztrūkst dažas funkcijas, kas atrodamas Pro versijā, tomēr ar to pilnīgi pietiek, lai izbaudītu planar tracking labumus.

    Iekš Mocha, atšķirībā no punktiem, trekeris analizē lietotāja definētu divdimensionālu plakni, piemēram, galda virsmu, sienu, kasti, atsevišķos gadījumos arī cilvēka seju vai citu “neplakanu” objektu, kas no noteikta attāluma pazaudē perspektīves kropļojumus un principā top par plakni. Analīzes pamatā ir dotās plaknes tekstūra, kuras kustībai no kadra uz kadru tiek sekots līdzi. Svarīgi, lai virsmas tekstūra būtu skaidri izšķirama, bet, ja, piemēram, tiek trekota perfekti gluda virsma, trekera laukumā jāiekļauj šīs virmas kantes un/vai uz tās jānovieto kādi palīgobjekti – vai nu tematiski atribūti (pildspalva, post-it lapiņas…) vai arī tā saucamie tracking markers, kas ir dažā izmēra un formas uzlīmes, kas palīdz trekerim orientēties. Šīs uzlīmes gan pēcapstrādē būs jānoņem, tāpēc jāpārliecinās, vai tas būs pa spēkam. Markeriem liela nozīme ir 3D objektu un kameras trackingā jeb matchmoving procesā, kas ir ārpus šī raksta konteksta, turklāt planar tracking tomēr 90% gadījumā labi tiek galā ar jebkurām virsmām, pat tādām, kas tekstūru pazaudē liela neasuma dēļ, piemēram, mūsu tīzera kadrā ar lielo balto kasti, kur sekojamais objekts vienu brīdi ir pavisam izplūdis. Pirmkārt, šajā piemērā trackošanu veicu atmuguriski – no asā kadra uz neaso, tādejādi dodot trekerim daudz vairāk informācijas par objektu. Otrkārt, trekera meklēšanas laukumā iekļāvu arī kastes malas, kuras pat izplūdušā formā tomēr deva pietiekamu ģeometrisko informāciju.

    Planar tracking rezultāts ir informācija par plaknes pozīciju telpā, rotāciju, izmēru un perspektīves izmaiņām. Tātad krietni vairāk nekā mums dotu point tracker. Tālāk, balstoties uz šo informāciju, uz izsekotās plaknes var novietot izvēlēto grafiku.

    Liels plus planar tracking ir fakts, ka 2/3 visas sekojamās plaknes filmēšanas laikā var atstāt attēla robežas un atkal tajās atgriezties, saglabājot normālu rezultātu. Studijas tīzerī dažos kadros plakne pavisam ieziet no kadra, bet tas nav traucējis trekerim izpīpēt pareizu kustību un perspektīvi līdz pat pēdējam brīdim.

    Planar tracking var izmantot arī objektu izņemšanai no attēla un rotoskopēšanai jeb maskēšanai ar kustīgām maskām, bet par to kādu citu reizi.

    Digitālās grafikas reālisms

    Jebkāda grafika, kas tiek radīta digitāli, sākotnēji ir “nevainīga”, taču reālajā pasaulē nekas nekad nav perfekti ass, taisns, tīrs un viendabīgs. Tāpēc grafiku ir nepieciešams mazliet “sabojāt”. Lūk dažas lietas, kas tika darītas arī tīzerī.

    Asums

    Video nekad nav tik ass kā nazis, pat viskrutākajā 4k izšķirtspējas attēlā asākā detaļa tomēr būs mazliet izplūdusi, turklāt, ja filmēts ir ar supergaišiem stikliem, trāpīt asumā ir vēl grūtāk. Tāpēc jebkura grafika ir arīdzan jāizpludina, lai arī sākotnēji tas varētu likties kā destruktīva darbība. Arīdzan, ja filmētais objekts nav bijis perfekti paralēls kamerai, visticamāk asuma dziļums būs atšķirīgs dažādos tā punktos.

    Iesaku ierastā gausian vai fast blur vietā lietot camera lens blur efektu, kas dot lielāku kontroli pār izplūdumu un rezultāts ir realistiskāks. Neskaitot opciju regulēt bokeh parametrus, ir iespēja arī izmantot tā saucamo depth map – melnbalts attēls, kurā baltā krāsa nozīmē 100% blur un melnā 0%. Veidojot šo attēlu kā pāreju no baltā uz melno, tiek panākts mainīgs izplūdums un animējot vienu parametru var simulēt to pašu efektu, ko operators radījis filmējot, regulējit asumu, proti mainīgu asumu 3D telpā.

    Protams, ir jāatceras arī par motion blur – tas jāieslēdz pilnīgi visai grafikai, kas atrodas jebkādā kustībā. Daži After Effects efekti nedarbojas ar iebūvēto motion blur, jo tehniski ģenerē attēlu, kas nekur nekustas, tāpēc šiem efektiem ir nepieciešams virtuālais motion blur, kas analizē pikseļu kustības vektorus attēlā, lai radītu to pašu efektu. Jāpiezīmē gan, ka šis ir ļoti resursrijīgs pasākums un ir ieslēdzams tikai galējā rendera laikā un arī tikai uz objektiem, kuriem tas nepieciešam nevis uz visu kompozīciju.

    Tekstūra

    Jebkuram reālam materiālam ir tekstūra. Pavērojot iepakojuma kastu apdrukas, var redzēt, ka, neskatoties uz tintes biezumu, uzrakstiem un grafikai sauri spīd kartona tekstūra. Šo pašu efektu ir jāatkārto digitālā vidē. Dažkārt pietiek ar blending mode nomaiņu, tomēr realistiskākus rezultātus dod oriģinālās tekstūras samplēšana un tam sekojoša krāsošana. After Effects šādam nolūkam parocīgs ir Texturize effeks. Arīdzan nedaudz Noise nenāks par sliktu, it sevišķi, ja filmēts ir ar lielu ISO. Brīžiem tekstūra var būt tik minimāla, ka to var pamanīt tikai vairākkārtēji palielinot attēlu, tomēr tieši no šādiem minimāliem uzlabojumiem rodas tā reālisma sajūta.

    Gaismēnas

    Dabā gaisma pēc noklusējuma ir visur, izņemot digitālo vidi, kurā tā ir jārada elektroniskās skaitļojamās mašīnas operatoram. Gaismai ir virziens, krāsa, jauda, mīkstums un visus šos parametrus ir jāpārkopē uz grafiku. Un pat nav jārada īstas gaismu un ēnu simulācijas, kas no sevis prasa darbu jau sarežģītākā 3D vidē, bieži vien var izlīdzēties 2D krāsu gradient (no gaišāka uz tumšāku) un parasto drop-shadow, kas uz aci ir pieregulēts īstajām ēnām, kas redzamas filmētajā attēlā. Jāatcerās, ka kustībā gaismēnas var nākties animēt, tā paša reālisma vārdā.

    Deformācija

    Virsmām parasti ir dažādi nelīdzenumi – locījuma vietas, saņurcījumi, saviļņojumi utml. ģeometriski un trīsdimensionāli kropļojumi. Grafikai, kas atrodas uz šādām virsmām, tas ir jāievēro un jādeformējas līdzi. Pat, ja virsma ir relatīvi gluda, grafikas tīša deformācija nenāks par ļaunu digitālās grafikas pēdu slēpšanai. Var paspēlēties ar dažādiem Displace efektiem.

    Citi triki

    Šīs bija tikai dažas, bet toties pamata lietas, kas jāveic ar jebkuru digitālo grafiku, ja vēlamies to maksimāli padarīt reālistisku. Bet ir arī citi triki, kuriem nav tieša sakara ar grafikas materiālistiskajām īpašībām, bet gan ar skatītāja uzmanības novēršanu no fakta, ka viņš tiek mānīts.

    Lieta, kas vienmēr strādā, ir grafikas aizsegšana ar kādu no reālās vides objektiem jeb tās novietošana aiz šķēršļiem. Viss triks ir aizsegto vietu maskēšanā, masku animācijā un mīkstināšanā gadījumos, kad aizsedzošais objekts nav fokusā jeb ir izplūdis.

    Otrs bieži izplatīts VFX paņēmiens ir ļoti īsi kadri, kas ātri pāriet no viena otrā, tādejādi neļaujot skatītājam pārāk ilgi pētīt vienu kadru un “pamatīt fotošopu”. Pirms interneta video šī bija īpaši populāra metode, bet mūsdienās, kad jebkuru video var iepauzēt, tas jāņem vērā un nevajadzētu pārspīlēt ar šmaukšanos.

    Resursi

    • Hollywood Camerawork – kaudze HD kvalitātes paraugmateriāliem, ar kuriem trennēties dažādos tracking scenārijos. Sāc ar automašīnas nummura zīmes nomaiņu, kas būs labs crash course iekš planar tracking.
    • Mocha pamācības – vienuviet apkopotas Mocha lietošanas pamācības, lai nav jārokas pa YouTube bardaku.
    • Video Copilot – kvalitatīvas Andrew Cramer pamācības ar tracking elementiem.
    • MochaImport+ – parocīgs After Effects spraudnis darbam ar Mocha.
    Wednesday, April 4th, 2012
    2:31 pm
    Video failu sagatavošana TV3 un LTV raidlaikam

    TV3 epopeja

    Jau ilgu laiku starp mediju aģentūrām un studijām ceļo excelis ar specifikācijām video formātiem, kādos jānodod video faili translācijai TV. [Labots:] Izrādās dotais excelis ir veca specifikāciju versija, kas aizsēdējusies mediju aģentūru gaiteņos un tajā MTG Group (TV3 / 3+ / TV6 / RTR/ CTC) prasība ir iesniegt video failus DV formātā AVI konteinerī, kas ir 1992. gadā Microsoft izgudrots pasākums.

    Necepoties par to, ka tas ir aizvēsturisks formāts un failu izmēri ir milzīgi attiecībā pret kvalitāti, uz Mac darbstacijām šādu failu iegūt var tikai ar vairākiem starpsoļiem, bet mēs gribam visu smuki eksportēt vienā piegājienā caur Adobe Media Encoder, augšupielādēt uz TV serveriem un iet dzert aliņu.

    Tā nu šī specifikācija klejo no exceļa uz exceli, bet Reinis izraka oficiālu (un kā izrādās atkārtotu) paziņojumu no TV3 (un attiecīgi pārējiem grupas kanāliem), ka tiek pieņemti arī Quicktime faili MPEG IMX kompresijā:

    All commercials are to be delivered as Standard definition 720×576 interlaced video in full frame. Commercial content and programmes is to be delivered in electronic files in the following format (upper field first QT Self-Contained IMX30 (SC), .mov) with 16 (24) bit discreet audio at 48kHz.

    Līdz šim gan tie tāpatās tika pieņemti, bet tā kā specifikācijā visur spīdēja vecais labais AVI, godīgi producenti lūdza ievērot šo prasību. Tagad varam uzelpot, atkorķēt aliņu… bet vispirms sagatavot savu Quicktime darbam ar MPEG IMX.

    P.S. LTV arīdzan akceptē failus šādā formātā, līdz ar to atkrīt viena lieka konvertācija.

    Quicktime ar MPEG IMX

    Pēc noklusējuma MPEG IMX komponente nāk komplektā Final Cut Pro instalācijai, bet tā kā arvien vairāk studijas pāriet uz Adobe Premiere (paldies, Apple, you fucked up), tad var gadīties, ka 23.00 deadlaina vakarā konstatējam, ka mūsu Quicktime eksporta opcijās iztrūkst šīs komponentes. Neraudam, bet daram šādi:

    Ejam uz http://support.apple.com/kb/DL1396 un bezmaksas lejupielādējam Apple Pro aplikāciju kodeku paku. Tāpat vien to uzstādīt neizdosies, jo tās priekšnosacījums ir FCP instalācija. Bet, fear not, lejupielādējam sīklietotni UNPKG.app, ar kuru var uzšķērst doto .pkg failu un iekšā atrast bariņu noderīgu Quicktime komponenšu.

    Pārvieto “IMXCodec.component” uz /Library/Quicktime/ un voilà – tagad iekš Adobe Media Encoder (vai arī citas eksportaplikācijas, kas izmanto sistēmas kodekus) sarakstā pie Quicktime parādīsies “MPEG IMX 625/50 (30 Mb/s)” opcija, kas ir tieši tas, kas mums ir vajadzīgs. Pie reizes var paķert “AppleProResCodec.component”, jo ProRes’iņš ir pierādījies kā OK formāts, kuru izmantot vizuālā materiāla apmaiņai studijas iekšienē (no After Effekts eksportēju tieši ProRes failus, kas tālāk iet montāžā).

ab.log   About Sviesta Ciba