Jeśli nie widziałeś palących czaszek, renderujących badań Kevina Karscha, Obejrzyj to, poczekamy… Teraz, gdy twój mózg jest zwęglony i kruszy się jak spalony popcorn, możesz dobrze zrozumieć, dlaczego po obejrzeniu tego filmu było uzyskać informacje od samego Kevina. Więc… złożyliśmy go na ślepo, obróciliśmy, odurzyliśmy, zapakowaliśmy do kontenera wysyłkowego i wysłaliśmy do siedziby SolidSmack na przesłuchanie (nieprawda). Podczas gdy modelowanie oparte na obrazach nie jest niczym niezwykłym, Kevin i zespół opracowują nowe sposoby wstawiania obiektów 3D do scen 2D, a jak wyjaśnia Kevin, obrazy to dopiero początek.

Tworzenie Sceny

Kevina Karscha jest obecnie doktorantem na Uniwersytecie Illinois i zaprezentuje swoje badania w grudniu o godz SIGGRAPH AZJA 2011. Jak wynika z abstraktu, tak jest „Metoda realistycznego wstawiania syntetycznych obiektów do istniejących fotografii bez konieczności dostępu do sceny lub jakichkolwiek dodatkowych pomiarów sceny”. Podczas gdy niektórzy postawiliby to na prostą edycję zdjęć, technologia i możliwości wykraczają daleko poza to.

SolidSmack: Jakie masz doświadczenie i jak zacząłeś pisać oprogramowanie graficzne?

Kevin Karsch: Myślę, że swój pierwszy program graficzny napisałem na kursie w szkole średniej; był to żenująco prosty wariant Ponga :). Ten kurs właściwie doprowadził mnie do studiowania informatyki i tworzenia gier wideo na studiach licencjackich na Uniwersytecie Missouri, gdzie po raz pierwszy zacząłem prowadzić badania w dziedzinie grafiki i wizji komputerowej (tj. wydobywać wiedzę na wysokim poziomie ze zdjęć i / lub filmów) badania. Obecnie jestem doktorantem na Uniwersytecie Illinois i pracuję z prof. Davidem Forsythem i prof. Derekiem Hoiem, a moje badania skupiają się na połączeniu grafiki i wizji.

SS: Co najpierw zainteresowało Cię w możliwości renderowania obiektów bezpośrednio na fotografiach 2d?

KK: Koncepcja możliwości interakcji z obrazem w taki sam sposób, w jaki wchodzisz w interakcję z fizyczną sceną, była dla nas bardzo ekscytująca. Jeśli jest to możliwe, pojawia się wiele zastosowań; nie tylko wstawianie obiektów, ale także usuwanie istniejących obiektów, modyfikowanie właściwości materiałów, dostosowywanie świateł i tak dalej. Postanowiliśmy najpierw zaatakować problem wstawiania.

Ludzie są całkiem dobrzy w określaniu fizycznego makijażu sceny, po prostu patrząc na zdjęcie, ale przeprowadzanie tych edycji może być niezwykle trudne i żmudne przy użyciu obecnych narzędzi. Naszym celem było umożliwienie użytkownikom robienia tego szybko i intuicyjnie, co udało nam się osiągnąć, łącząc wiele najnowocześniejszych algorytmów badawczych (niektóre nasze własne, a niektóre istniejące).

SS: Czy możesz wyjaśnić niektóre technologie stojące za tym procesem w kategoriach laika?

KK: Aby wstawić model 3D do obrazu, potrzebujemy trójwymiarowej reprezentacji sceny, w tym geometrii, świateł, właściwości materiału i parametrów kamery (ogniskowa, pozycja kamery itp.). Użytkownik zapewnia pewną wiedzę na wysokim poziomie, taką jak granice sceny i położenie źródeł światła, zaznaczając je na obrazie. Dzięki tym informacjom możemy następnie automatycznie obliczyć przybliżony model sceny. Geometria i parametry kamery są obliczane przy użyciu techniki uzyskiwania struktury 3D z punktów 3D na obrazie; jest to powszechnie określane jako metrologia pojedynczego widoku (zob Artykuł IJCV autorstwa Criminsi i in.). Wykorzystując geometrię i kamerę wybieramy (poprzez optymalizację numeryczną) najlepsze parametry materiału i pozycje źródeł światła, tak aby wyrenderowany obraz naszej zrekonstruowanej sceny 3D jak najlepiej pasował do oryginalnego obrazu. Istnieją również pewne szczegóły dotyczące radzenia sobie z promieniami światła i zasłaniającymi granicami obiektów, a my jesteśmy w stanie oszacować modele również dla nich po niewielkiej ilości znaczników użytkownika.

SS: A artykuł na temat modelowania opartego na obrazach a edycja zdjęć została opublikowana w 2001 roku i również wykorzystuje ideę pojedynczego zdjęcia jako danych wejściowych. Czym różnią się Twoje badania i kiedy aplikacja zostanie zastosowana bezpośrednio w oprogramowaniu do renderowania 3D?

KK: Artykuł, o którym mowa, oferuje świetny zestaw narzędzi do uzyskiwania stosunkowo dokładnych modeli geometrii z niektórych adnotacji użytkownika, a także pokazuje, jak określić właściwości materiału, takie jak współczynnik odbicia, za pomocą geometrii. Nasz artykuł faktycznie wykorzystuje bardzo podobną technikę do oszacowania właściwości materiału, ale wymagamy znacznie mniej szczegółowego modelu geometrii, a zatem potrzebujemy znacznie mniej adnotacji. Podstawowa różnica polega na tym, że szacujemy również parametry kamery i informacje o oświetleniu, co jest kluczowe przy wstawianiu obiektów syntetycznych. Odkryliśmy, że proste modele geometrii są wystarczające dla większości wstawek, ponieważ wady pojawiają się tylko wtedy, gdy wstawiane obiekty wchodzą w interakcję z geometrią, która została nieprawidłowo wymodelowana (a w literaturze psychofizycznej wspomniano, że ludzie nie są zbyt dobrzy w wychwytywaniu tych niekonsekwencje). Jednak zestaw narzędzi przedstawiony w tym artykule wspaniale uzupełniłby naszą technikę, gdyby potrzebna była dokładniejsza geometria, być może do symulacji fizycznych.

Chcielibyśmy jak najszybciej włączyć tę technologię do oprogramowania do modelowania i renderowania 3D. Współpracujemy z naszą uczelnią, aby tak się stało.

SS: W bitwie między procesorem a procesorem GPU złożone globalne algorytmy oświetlenia stają się jeszcze bardziej złożone, gdy doda się oszacowanie oświetlenia i obiektów fizycznych. Czy wraz z postępem technologii renderowania sprzęt będzie bardziej rozwijał się w kierunku przetwarzania wielowątkowego lub procesora graficznego?

KK: Dla mnie, z perspektywy badawczej, to naprawdę zależy od tego, jak stroma jest krzywa uczenia się równoległości na nadchodzących procesorach i kartach graficznych. W tej chwili wydaje się, że procesory wygrywają tę bitwę i uważam, że właśnie dlatego większość dzisiejszego oprogramowania do renderowania jest pisana dla procesorów. Biorąc pod uwagę ten trend, wydaje się, że przetwarzanie wielowątkowe będzie dominować w ciągu najbliższych kilku lat. Może się to jednak zmienić, jeśli pisanie kodu i debugowanie na procesorach graficznych będzie można wykonywać z taką samą prostotą, jak na procesorach. Trzecim rozwiązaniem, które może się również pojawić, jest wyspecjalizowany sprzęt (pewna mieszanka tego, co istnieje obecnie), który jest zbudowany specjalnie do renderowania.

SS: Kolejnym oczywistym krokiem jest automatyczne wyodrębnienie i renderowanie geometrii 2D w środowisku ray tracingu w czasie rzeczywistym. Czy widzisz, że tak się dzieje i jakie wyzwania należy rozwiązać, aby to zrobić?

KK: Zgadzam się; miałoby to ogromne konsekwencje dla rozszerzonej rzeczywistości i wielu innych zastosowań! Wyobrażam sobie, że stanie się to rzeczywistością za kilka lat, ale wiele technologii musi się rozwijać i łączyć. Myślę, że teraz, gdy kamery głębinowe są powszechnie dostępne (np. Kinect Microsoftu), to tylko kwestia czasu, zanim będzie możliwe automatyczne wnioskowanie o źródłach światła i materiałach, a wtedy głębia/geometria wyjdzie za darmo z Kinecta. Największym wyzwaniem może być stworzenie systemu w czasie rzeczywistym, co prawdopodobnie wymagałoby poprawy wydajności na etapach szacowania i renderowania, a także prawdopodobnie szybszego sprzętu.

SS: Rozwijając jakąkolwiek podstawową technologię, taką jak ta, na pewno odkryjesz rzeczy, których się po drodze nie spodziewałeś. Istnieje kilka naprawdę jasno zdefiniowanych przypadków użycia tej technologii, jak przedstawiono w Twoim filmie, ale czy są jakieś mniej oczywiste zastosowania, na które natknąłeś się po drodze? Jakieś wyniki, których się nie spodziewałeś, ale okazały się przydatne?

KK: Ciekawym zastosowaniem, o którym słyszeliśmy, jest wykorzystanie tej technologii do wstawiania obiektów do historycznych zdjęć w celach edukacyjnych. Odkryliśmy również, że może to być przydatne do szybkiego tworzenia tła do reklam i potencjalnie pozwolić niskobudżetowym filmom konkurować z firmami zajmującymi się efektami wysokiej klasy. Otrzymaliśmy również wiele pytań dotyczących naszej techniki tworzenia filmów (a nie nieruchomych obrazów), która wydaje się mieć zastosowanie między innymi w nieruchomościach, projektach architektonicznych i remontach domów.

Obecnie przygotowujemy wideo z weryfikacją koncepcji, pokazujące proste rozszerzenie naszej techniki, które umożliwia dokładne wstawianie obiektów do filmów bez dodatkowego wkładu ze strony użytkownika, więc być może uda nam się zobaczyć te aplikacje wcześniej niż zrozumieliśmy. Mamy wiele pomysłów na przyszłe badania i mamy nadzieję, że ta praca zachęci inne grupy do odkrywania nowych pomysłów również na ten temat!

-

Ogromne podziękowania dla Kevina za omówienie z nami jego badań. Jeśli chcesz dowiedzieć się więcej, możesz odwiedzić strona projektu z abstraktem i publikacją, która zawiera bardziej szczegółowe informacje na temat wstawiania obiektów do scen i sposobu, w jaki to się robi.

Autor

Josh jest założycielem i redaktorem w SolidSmack.com, założycielem w Aimsift Inc. i współzałożycielem EvD Media. Zajmuje się inżynierią, projektowaniem, wizualizacją, technologią, dzięki której to się dzieje, oraz treściami rozwijanymi wokół nich. Jest certyfikowanym profesjonalistą SolidWorks i wyróżnia się nieporadnymi upadkami.