Jump to content

Prawidłowe wstawienie obiektu w film


Ajgor
 Share

Recommended Posts

Witam.

 

Próbuję wstawić prosty obiekt w film. A konkretnie mam film fullHD (1920x1080), wrzucam go do któregoś z programów do wyznaczania ruchu kamery, następnie wygenerowany w ten sposób skrypt odpalam w Maxie, wstawiam obiekt (prosty napis 3D), i... kupa. Próbowałem MatchMoverem, SynthEyes i Voodootrackerem, i zawsze to samo. NIBY obiekt jest. Dopasowuję go do punktów wyznaczonych przez program. NIBY kamera się animuje prawidłowo. Ale po wyrenderowaniu końcowej animacji (na razie bez cieni, świateł itd - tylko na próbę) napis jednak się przesuwa po ekranie, wykonuje czasem dziwne ruchy itd. niby ruchy są niewielkie, ale jednak widoczne.

Obejrzałem ze sto tutoriali. We wszystkich widać, jak gość trackuje obraz, wstawia obiekt, kilka ruchów myszką, i gotowe. Próbowałem identycznie, i nic z tego. Zawsze obiekt przesuwa się nie tak, jak powinien.

Co robię źle?

Link to comment
Share on other sites

Mam dokładnie takie, jak trzeba - 25fps. Za każdym razem to jest pierwsze, co sprawdzam. Tu nie chodzi o opóźnienie obiektu. Po prostu obiekt się tak zachowuje, jak by się trząsł, a momentami się odsuwa gdzieś w bok, albo wyprzedza kamerę. Niby to są minimalne ruchy, ale jednak widoczne.

Próbowałem i automatic tracking, i manual. Efekt zawsze jest minimalnie błędny.

Link to comment
Share on other sites

Ważne jest ustawienie parametrów kamery w programie do trackowania, wielkość matrycy, użyty obiektyw i pare innych pierdółek.

Jeśli manualny tracking jest poprawny i widzisz, że jest dobrze gołym okiem i punkty trzymają się kupy to powinno być wszystko ok, pozostaje później również kwestia ustawienia poprawnych osi.

Link to comment
Share on other sites

Film był kręcony w bardzo słoneczny dzień z balkonu hotelu (w Turcji, więc na prawdę słoneczny). Kamera się powoli przesuwa w poziomie w lewo (to znaczy obraz w prawo). W pewnym momencie w polu widzenia pojawia się hotelowy basen, przejeżdża przed kamerą, i znika. No i wymyśliłem sobie, że na tym basenie umieszczę napis 3D "Wakacje w Turcji". (Drugi napis - podający dokładne miejsce i datę - ma być w kolejnym ujęciu - w pokoju hotelowym na łóżku :) Film kręcony kamerą HD w pełnej rozdziałce 1920x1080, 50i, jakość idealna. Przekonwertowałem film na sekwencję obrazków Targa.

Hmm.. Film w 50i, a ja ustawiałem 25fps. Może tu robię błąd?

Link to comment
Share on other sites

Hmm dziwne. Jak eksportowałem do sekwencji obrazów, to napis się poruszał. Jak wyeksportowałem do avi (1920x1080) bez kompresji, to napis niby sie nie porusza, ale za to cały film chodzi jak stroboskop. Do jakiego formatu najlepiej eksportować animację w fullHD z Maxa?

Aha.. Jak włączam w programie do matchmovingu, to niby jest OK.

Link to comment
Share on other sites

jesli to co napisal Rozpustelnik nie pomoze to proboj tak:

- export oryginalu jako klatki (25fps) np. tga i od tej pory do WSZYSTKIEGO uzywasz tych klatek

- tracking wyeksportowanych klatek, upewnij sie ze tracking jest zrobiony z poprawnym FPS (np. boujou standardowo ustawia 23.9fps i trzeba zmienic na 25fps)

- wstaw obiekt testowy i sprawdz czy wszystko OK.

- export do .ms

- import w max'ie i prawdz fps. wstaw/wlacz background (wyeksportowane flatki)

- nie polecam renderowania prosto z max'a obiektu 3d z widocznym tlem, mialem z tym problemy poniewaz z jakiegos powodu wyrenderowane tlo bylo przeskalowane i nie pasowalo do oryginalu. lepiej jest wyrenderowac sam obiekt z alpha z kamery ktora masz z trackera i poskladac w jakim programie do compositingu.

Link to comment
Share on other sites

Tak jak wyżej - problemem jest przeplot [interlace]. Wcale nie musisz konwertować do 25fps/progressive - zapoznaj się z zagadnieniem "deinterlacing" - możesz uzyskać materiał 50p, są na to sposoby - większość programów montażowych ma zaimplementowane narzędzia - posiadają je już nawet pojedyncze kodeki i odtwarzacze. Materiał trackowany powinien być już bez przeplotu.

Ogólnie - im więcej ruchu kamery tym lepiej [oczywiście bez masakrycznego MotionBlura] - jeśli kamera była na statywie, lub próbowałeś uzyskać taki efekt z ręki, powinieneś zaznaczyć taką informację w programie do trackowania, użyje on przystosowanych do tego obliczeń, podobnie z zoom'em.

 

Apaczos - cenię twoją wiedzę ale nie pisz że 50i = 25p :)

Link to comment
Share on other sites

Na razie w SynthEye zrobiłem tak, że po wczytaniu sekwencji obrazów (wyeksportowane były jako progressive), i zrobieniu autotrackingu ustawiłem koordynaty(Syntheye ma taką opcję, której wcześniej nie znałem - dziś ją znalazłem w jednym tutorialu), i wyeksportowałem do Maxa. I tu zauważyłem kolejną opcję, której wcześniej nie rozumiałem, dopiero Rozpustelnik zwrócił mi na nią uwagę, a mianowicie można zaznaczyć, czy animka ma sie rozpoczynać od klatki"0", czy od "1". Dodatkowo w Syntheye dodałem sobie pomocniczego sześciana, który idealnie wkomponowałem w obraz. Po zaimportowaniu tego do maxa okazało się, że ten sześcian też jest, i dokładnie pokazuje miejsce, gdzie ma być mój obiekt :) Wyrenderowałem na razie w mniejszej rozdziałce, i wygląda, że jest OK. Dziś niestety już nie będę miał czasu się tym pobawić (chyba, że w nocy). Ale na razie wygląda, że coś zaczyna działać :)

Dzięki wszystkiom za pomoc, i bardzo cenne uwagi.

Link to comment
Share on other sites

Render z maxa robisz w sekwencji klatek, NIGDY DO FILMU! pamietaj o tym ;)

 

Poza tym problem moze lezec w opcjach renderingu w maxie dlatego spróbuj to rpzerenderowac na podstawowych ustawieniach, nawet najmniejszych, bez realizmu itp, nawet niech beda podstawowe swiatła, ale do sekwencji klatek i sprawdź czy coś sie zmieniło, czy jest ok.

 

Jesli chodzi o 50i = 25p to teoretycznie jest to prawdą, ale całosć nabiera praktycznego sensu dopiero po przekonwertowaniu tego do 25p czyli usuwajac przeplot, jesli nie został usunięty to jest to nadal 50i.

 

Wszystkie informacje musisz ustawic w programie do trackowania, jesli zrobisz to automatem, to moze coś sie posypać.

Takie rzeczy nalezy uzupełnic w opcjach programu by wszystko później było ok.

 

Co do rozpoczynania sekwencji w prorgamach to roznie jest, programy do 3d jak i do kompozycji moga miec rozną klatkę startową (0-1) i musisz z tym uwazac. W opcjach programu jest mozliwosc zmiany klatki startowej więc staraj sie pracowac tak aby wszystko bylo jednakowo w kazdym programie albo ustal sobie system pracy, ze wszedzie, w kazdym prorgamie klatka startowa to 0 albo 1.

Link to comment
Share on other sites

50i w zadnym wypadku nie rowna sie 25p. Koniec kropka. 50i to 50 klatek na sek zapisanych w polowie rozdzielczosci pionowej. To ze potem te klatki sa "zakodowane" w pary i zapisane w 25 klatkach/s nie zmienia faktu ze to wciaz 50k/s. Jesli tracker traktuje material 50i jako 25p to prawie nigdy nie bedzie w stanie poprawnie sledzic powierzchni, a bez tego zawsze bedziesz mial zly solver. Blad bedzie tym wiekszy im wiekszy jest ruch w kadrze.

Masz dwie mozliwosci:

1. Usuwasz przeplot zanim wprowadzisz material do trackera wtedy na kazdym kolejnym etapie pracujesz w 25p. Do usuniecia nie mozesz wykorzystac w tym wypadku zadnych "yntelygentnych" algorytmow opartych na badaniu wektorow itp. bo moga wplywac na jakosc samego trackingu. Do dyspozycji zostaje Ci najbardziej prymitywny sposob czyli usuniecie jednego polobrazu i rozciagniecie drugiego.

2. Od poczatku do konca pracujesz w 50i. Ewentualnie PO kompozycji 3d z filmem usuwasz przeplot.Drugi sposob jest wedlug mnie duzo lepszy bo nie tracisz polowy rozdzielczosci z konwersji do 25p i zawsze mozesz potem ten material sprowadzic bez klopotu do progressiv jesli jest to wymagane. Wtedy mozesz juz uzyc do tego dowolnego algorytmu.

 

Kolejna sprawa o ktorej ktos Ci na poczatku pisal to ustawienie matrycy i ogniskowej kamery. Rowniez tego czy ogniskowa byla stala czy zmienna.Jesli po policzeniu solvera punkty kontrolne ktore na 100% wiesz ze powinny znajdywac sie na tej samej plazczyznie (bo przykladowo leza na scianie lub podlodze), "klada" sie w charakterystyczny sposob, to w 90% te parametry wprowadziles zle. Na pozostale 10% wplywa zazwyczaj lens distortion ktore, jesli material krecony byl na szerokokatnych obiektywach, tez powinienes usunac przed trackingiem.

 

PS. Pisano wczesniej o obiektach testowych i wedlug mnie jest to swietna rada, powinno sie z nich zawsze korzystac. Jesli obiekt testowy Ci "plywa" to nawet nie probuj exportowac solvera.

Edited by Alibaba
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

×
×
  • Create New...

Important Information

We are using cookies. Read about our Privacy Policy