wczytanie pliku avi, mpeg i rozkład na pojedyńcze klatki

0

Witam

Chciałbym się dowiedzieć czy jest jakaś biblioteka, która pomoże mi wczytać film powiedzmy np. formatu pl dv ewentualnie jakiegoś innego (takiego który byłby najprostszy) i zamienić go na pojedyńcze klatki filmu czyli uzyskać z tego obrazy? Naprowadźcie mnie w jaki sposób to wykonać. Następnie chodziłoby mi oto żeby utworzyć z tego filmu obraz stereoskopowy (jakieś konkretne algorytmy) bo tak naprawde miałbym tylko pojedyńcze klatki a nie pary węc musiałbym na każdym z obrazów dokonać przesunięcia(w jakis sposób, jakiś algorytm)? W końcowym efekcie miałoby to być zapisane z powrotem do pliku .avi, mpeg kodowanego tym samym kodekiem co na początku.
Pozdrawiam

0

Zapomniałem napisać czytałem o bibliotece aForge. NET nadawałaby się ona do tego?

0

Jeśli uda ci się dowolny film przerobić na stereoskopowy, to profesurę masz w kieszeni.
Tłumacząc na polskie: nie da się.

0

Da się. Czytałem kiedyś o takim algorytmie. Przyjmuje on, że obiekty na dole i szybciej poruszające się są bliżej, a reszta dalej. Jednak nie da to takiego samego efektu jak film nagrany w 3D.

PS. Jeżeli chodzi o pojedyncze klatki to dam linka do perełek: http://4programmers.net/Forum[...]a_pixeljak_sie_do_tego_dostac

0

Powtórzę: nie da się. Da się tylko przy pewnych ograniczeniach.
Odnośnie obiektów poruszających się szybciej itd. - co jeśli samochód na dalszym planie jedzie, a a samochód na bliższym stoi? Wg tej metody wyszłoby odwrotnie. Albo nic się na scenie nie porusza, kamera się nie rusza, a jedynie obraca wokół osi Z (oś "w przód"). Też klops. Algorytmy stereoskopowe są o wieeeele bardziej skomplikowane.

0

Weź pod uwagę to, że jeżeli samochód porusza się w dalszym planie to jest "wyżej" na obrazie. Oczywiście jeżeli nie ma ruchu to nie można z tego wyciągnąć informacji o trzecim wymiarze. Pozostaje jedynie ręczna obróbka. Czyli da się (choć jak już pisałem super efektu bym się nie spodziewał), ale nie zawsze.

0

Nie musi być "wyżej na obrazie". Bo to mogą być resoraki jeżdżące po szklanym stole, z kamerą umieszczoną pod stołem - i wówczas dalszy jest niżej ^^.

0

skoro człowiek jest w stanie z płaskiego obrazu mniej-więcej wyobrazić sobie głębię i określić co jest dalej, co bliżej i co się rusza niezależnie od ograniczeń, to teoretycznie odpowiednio zaawansowane algorytmy mogą się do tego zbliżyć.
argument o profesurze nadal aktualny.
nobla nie dadzą, bo z matematyki nie przyznają.

0

W NukeX (jeden z bardziej profesjonalnych programów do obróbki wideo) znajduje się plugin, który na podstawie ruchu kamery (dobry soft do śledzenia też jest w cenie) oraz obiektów potrafi wygenerować mapę głębi.

Jak napiszesz taki soft to profesury raczej nie dostaniesz, ale sprzedawać soft po 8 tysięcy dolarów sztuka, jak ten wyżej masz szansę ;)).

W każdym razie, nie jest to jeden z tych problemów, które rozwiązuje się poprzez ściągnięcie jednej, darmowej biblioteki z internetu i wywołania jednej metody.

0

Jeżeli chodzi o tworzenie modelu 3d na podstawie zdjęć, to mam w tym pewne doświadczenie, kilka fotek jest tutaj:
http://4programmers.net/Forum/Ci.NET/187596-chmura_punktow

@Azarien: "Ludzkie" algorytmy są o wiele bardziej skomplikowane. Po pierwsze - wykorzystujesz nabytą wiedzę, rozpoznajesz obiekty i dorabiasz sobie ich trójwymiarowy wygląd. Poza tym, masz dwoje ruchomych oczu - to bardzo ułatwia ocenianie odległości ;) Po trzecie - nawet jak zamkniesz jedno oko, odległość można ocenić, wykorzystując akomodację soczewki oka. Po czwarte - to, czy się poruszasz, oceniasz nie tylko na podstawie obrazu, ale również wiedzy ("wiem, że jadę pociągiem") i innych wbudowanych "mechanizmów", jak ucho wewnętrzne czy wiatr we włosach ^^.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0