Spisu treści:
- Krok 1: Robienie zdjęć
- Krok 2: Pierwsze kroki z oprogramowaniem do fotogrametrii
- Krok 3: Oblicz i uprość
- Krok 4: Kolor i tekstura
- Krok 5: Eksportowanie i SteamVR
- Krok 6: Tworzenie mapy SteamVR
- Krok 7: Dodawanie naszych obiektów do mapy
- Krok 8: Tworzenie etykiet obiektów
- Krok 9: Wniosek
Wideo: Wykorzystanie fotogrametrii do tworzenia modeli: 9 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:28
Kim jestem?
Jestem Samuel Conklin i jestem studentem drugiego roku w E. L. Liceum Meyersa. Eksperymentowałem z fotogrametrią przez ostatnie kilka miesięcy i mam nadzieję, że pomogę ci, jeśli zdecydujesz się odtworzyć ten produkt. Interesuje mnie, jak inni ludzie mogą korzystać z tej nowej i stale rozwijającej się technologii.
Czym jest rzeczywistość wirtualna i SteamVR?
Wirtualna Rzeczywistość to nowa forma artystycznej ekspresji i doświadczenia. To wciąż nowa granica technologii, ponieważ niezliczone firmy i ludzie pracują nad ulepszeniem tego medium. Wyrządzasz sobie wielką krzywdę, jeśli nigdy nie próbowałeś VR, ponieważ całkowicie obejmuje ona zmysł wzroku i dźwięku użytkownika. Jedną z głównych platform wirtualnej rzeczywistości jest SteamVR firmy Valve. SteamVR pozwala użytkownikom na swobodne udostępnianie środowisk i ustawianie elementów między sobą bez żadnych kosztów. Jest w większości open-source i pozwala na mnóstwo zestawów słuchawkowych. Należą do nich między innymi seria HTC Vive, Oculus Rifts, Oculus Quest, Valve Index, Windows Mixed Reality itp. SteamVR to platforma, której używamy do tworzenia naszego środowiska.
Co to jest fotogrametria i jak można z niej korzystać?
Fotogrametria to proces robienia zdjęć lub filmów i przekształcania obrazów w model 3D. Najbardziej znanym przykładem zastosowania tej technologii jest Google Earth. Google używa zdjęć satelitarnych i widoków ulic do rekonstrukcji krajobrazów i budynków. Patrząc na Google Earth, widać wyraźnie, że mieli niewiele obrazów do pracy, więc niektóre budynki będą wyglądały na zniekształcone. Przy prawidłowym użyciu fotogrametria jest niezwykle przekonującym sposobem tworzenia modeli 3D. Ten projekt wykorzystuje tę technologię do zachowania zabytków. Erozja i wystawienie na działanie żywiołów powoduje, że zabytki w końcu popadną w ruinę, a ludzie o nich zapomną. Dzięki fotogrametrii jesteśmy w stanie zachować wszystko cyfrowo, dzięki czemu przyszłe pokolenia będą mogły doświadczyć i docenić te struktury. Oznacza to również, że więcej ludzi na całym świecie może doświadczyć innych kultur bez ponoszenia kosztów lub ryzyka podróżowania.
Jakich materiałów potrzebuję?
W tym projekcie użyłem Reality Capture, SteamVR i Krita. Istnieją programy Autodesk, Agisoft i Zephyr, których można użyć zamiast Reality Capture, jeśli nie masz wymaganego procesora graficznego Nvidia do jego uruchomienia. Photoshop lub inne programy do edycji zdjęć mogą być używane zamiast Krity, ale ponieważ jest darmowy i publiczny, zdecydowałem się użyć go w tym projekcie. Potrzebny będzie również zestaw słuchawkowy Desktop VR, który można podłączyć bezpośrednio do komputera. Wreszcie potrzebny jest aparat wysokiej jakości. Aparat mobilny jest przyzwoity, ale użyłem Nikona D7000, ponieważ Reality Capture może automatycznie wykryć przysłonę aparatu, co prowadzi do modeli o wyższej jakości.
Krok 1: Robienie zdjęć
To najważniejsza część tego projektu, ponieważ musisz to zrobić za jednym zamachem. Jeśli tego nie zrobisz, będziesz musiał wrócić do lokacji i odzyskać wszystko.
Najpierw musisz znaleźć odpowiednią lokalizację i strukturę. Struktura powinna być duża i łatwa do zidentyfikowania. Oznacza to, że oprogramowanie fotogrametryczne będzie w stanie wykryć różnice między strukturą a tłem.
Zazwyczaj najlepszym sposobem jest robienie zdjęć w pochmurny dzień. Dzieje się tak dlatego, że słoneczny dzień ma możliwość prześwietlenia niektórych zdjęć i niedoświetlenia innych. Może również tworzyć niechciane cienie. Model z niewielką ilością cieni lub bez cieni ułatwi oświetlenie w sekcji rozwoju poziomów. Dodatkowo oprogramowanie wymaga, aby balans kolorów pozostał taki sam na każdym zdjęciu, ponieważ używa kolorów do obliczania rozmiaru obiektu. Robienie zdjęć w pochmurny dzień poprawi jednak jakość konstrukcji. Chmury na niebie będą działać jak naturalny dyfuzor aparatu. Dzięki temu światło będzie rozprowadzane bardziej równomiernie, co oznacza, że model stanie się precyzyjny podczas procesu renderowania.
Ostatnią radą jest zrobienie jak największej liczby zdjęć. Większość programów wybierze i wybierze, które zdjęcia będą używane w produkcie końcowym. Robiąc więcej zdjęć, wszystko będzie dokładniejsze i da programowi trochę oddechu. Do każdego modelu miałem około 150-300 zdjęć.
Krok 2: Pierwsze kroki z oprogramowaniem do fotogrametrii
Teraz zaimportujemy zdjęcia do oprogramowania. Pamiętaj, że Reality Capture wymaga karty graficznej Nvidia. Bez tego nie możesz ominąć sekcji Wyrównaj obrazy.
Jeśli masz folder ze wszystkimi obrazami, których chcesz użyć, wybierz opcję Folder w lewym górnym rogu. Spowoduje to przejście do Menedżera plików i możesz wybrać folder. Wejścia pozwolą Ci wybrać poszczególne zdjęcia za pomocą Menedżera plików.
Następnie rozpoczniemy proces budowania modelu. W górnej części ekranu, w obszarze Workflow, znajduje się sekcja Proces. Chcemy nacisnąć większy przycisk Start. Rozpocznie się wyrównywanie obrazów. Czwarte zdjęcie pokrótce pokazuje, co się dzieje podczas tego procesu. Rozpozna lewe oko jelenia i porówna odległość z innymi zdjęciami. Będzie kontynuował porównywanie różnych zdjęć, dopóki nie przejdzie wszystkich możliwych kombinacji. Ten krok jest zakończony, jeśli widzisz małe kropki przypominające strukturę.
Krok 3: Oblicz i uprość
Następnym krokiem jest obliczenie modelu. Aby to zrobić, klikamy na Calculate Model w sekcji Process. To bezpośrednio przełoży to, co znajdzie na zdjęciach, na formę 3D. Wyniki są przyzwoicie zbliżone do tego, jak chcemy, aby model wyglądał, ale istnieją trzy problemy z tą wersją modelu. Po pierwsze, w modelu są dziury, których nie ma w rzeczywistej strukturze. Po drugie, powierzchnia jest zbyt wyboista. Ponieważ program dokonuje aproksymacji swoich obliczeń, błędnie spowoduje, że niektóre gładkie powierzchnie będą nierówne. Po trzecie, jest za dużo trójkątów. Każdy model w Reality Capture jest tworzony z małych trójkątów. Każdy trójkąt reprezentuje małą powierzchnię modelu. Chcemy jak najmniej trójkątów, aby zoptymalizować model. Zbyt wiele trójkątów może powodować problemy z wydajnością.
Te problemy można rozwiązać za pomocą narzędzia Uprość. Wszystkie modele będą miały 3 000 000 trójkątów po etapie Oblicz model i możemy wybrać, czy liczba ta będzie wyższa lub niższa. Dla wszystkich modeli, takich jak te z tego projektu, obniżyłem liczbę trójkątów do 1 000 000. Wynik można znaleźć na drugim obrazie, gdzie wszystkie wyboiste powierzchnie są gładsze i jest mniej dziur. Dodatkowo, przy mniejszej liczbie trójkątów do renderowania, wydajność będzie lepsza, gdy wejdziemy w VR.
Krok 4: Kolor i tekstura
Teraz model będzie potrzebował koloru i tekstury, aby był jeszcze bardziej realistyczny. Te dwie części są podobne pod względem osiąganych celów, ale różnią się sposobem działania. Używając Color, który znajduje się w sekcji Process, program pokoloruje model. Narzędzie zrobi zdjęcia, których użyło do stworzenia modelu i zawija je wokół różnych powierzchni modelu. Z drugiej strony tekstura będzie kolorować w uproszczonych częściach modelu. Patrząc na pierwszy obraz, wyraźnie widać, jak program owinął obrazy wokół modelu, ale na drugim obrazie po procesie teksturowania ostre boki obrazów są teraz wygładzone.
Krok 5: Eksportowanie i SteamVR
W Reality Capture zamierzamy przenieść modele do SteamVR. W górnej części ekranu, w obszarze Eksport, wybierz Siatka, która znajduje się obok sekcji Proces. Powinieneś zobaczyć to wyskakujące okienko, które pozwala zmienić ustawienia i parametry modelu. Najlepiej zachować wszystkie ustawienia domyślne, z wyjątkiem zmiany formatu tekstury JPEG. Program wyeksportuje teraz plik w formacie OBJ, który jest plikiem siatki, oraz JPEG, który jest plikiem tekstury modelu. W celach informacyjnych plik JPEG powinien wyglądać jak drugi obraz w tym kroku.
Teraz musimy zaimportować nasze modele do SteamVR. Najpierw otwórz SteamVR, a następnie przejdź do Utwórz/zmodyfikuj środowisko, które znajduje się w zakładce Warsztat. Otworzy się teraz narzędzia warsztatowe SteamVR. Wybierz Utwórz pusty dodatek i kliknij Uruchom narzędzia.
Przeglądarka zasobów otworzy się teraz z różnymi materiałami i modelami już zawartymi. W lewym górnym rogu znajduje się ikona z symbolem młotka. Jest to wbudowany edytor SteamVR Hammer, który daje możliwość tworzenia map. Mapy to środowisko, w którym użytkownik VR będzie przebywał podczas rozgrywki.
Krok 6: Tworzenie mapy SteamVR
Po otwarciu edytora Hammer w SteamVR możemy teraz stworzyć sześcian. Chcemy stworzyć sześcian, aby zacząć budować środowisko. Program pozwala na zmianę rozmiaru kostki zanim zostanie ona zabezpieczona na miejscu. W tej chwili widoczne są tylko zewnętrzne powierzchnie sześcianu. Po naciśnięciu CTRL+F wszystkie powierzchnie zostaną odwrócone i zmienią sześcian w pomieszczenie. Dodatkowo będziesz musiał dodać obiekt o nazwie info_player_start, który poinformuje Hammera, gdzie ma spawnować użytkownika po załadowaniu programu.
Aby pokój był bardziej realistyczny, musimy również dodać tekstury. Możemy dodać niestandardowe obrazy za pomocą edytora materiałów. To jest okrągła ikona po prawej stronie przycisku Młotek w Przeglądarce zasobów. Wybranie Edytora materiałów przeniesie Cię do nowego okna, które pozwoli Ci zaimportować obraz, który ma zostać przekształcony w teksturę. Możesz użyć własnych obrazów lub uzyskać obrazy z witryn z teksturami, takich jak textures.com. Kliknij przycisk Plik pod Wybór koloru, aby wybrać obraz, którego chcesz użyć. Po wybraniu obrazu upewnij się, że go zapisałeś, naciskając ikonę dyskietki w lewym górnym rogu okna Edytor materiałów. Teraz zamknij Edytor materiałów i wróć do Przeglądarki zasobów. Tutaj wyszukaj plik tekstury, którego chcesz użyć, a następnie kliknij i przeciągnij go do edytora młotka. W tym oknie możesz zastosować swoją teksturę do różnych ścian sześcianu.
Musimy również dodać oświetlenie do pokoju. Aby to zrobić, umieszczamy light_omni lub light_spot na naszej mapie, które znajduje się w sekcji Entity po lewej stronie widoku mapy. light_omni będzie świecić we wszystkich kierunkach, podczas gdy light_spot świeci w jednym określonym kierunku. W tym projekcie użyłem co najmniej dwóch light_spotów dla każdego obiektu i jednego light_omni, aby oświetlić pomieszczenie.
Krok 7: Dodawanie naszych obiektów do mapy
Teraz nadszedł czas, aby zacząć przenosić nasze obiekty na naszą mapę. W Przeglądarce zasobów po prawej stronie ikony Edytor materiałów znajduje się Edytor modelu, który przypomina ikonę humanoidalną. Po otwarciu Edytora modelu otrzymasz opcję przeglądania lub tworzenia nowego VDML, który jest wersją pliku OBJ w edytorze Hammer. Wybierz opcję utworzenia nowego VDML, a będzie to wymagało utworzenia folderu. W tym folderze będzie przechowywany plik VDML. Upewnij się, że znajduje się w folderze Add On i naciśnij Dalej.
Spowoduje to przejście do ekranu z Twoim modelem, który ma białą teksturę. Aby dodać teksturę do tego modelu, wybierz Materiały z paska narzędzi po lewej stronie. Spowoduje to przejście do edytora materiałów i możesz wybrać plik JPEG z eksportu Reality Capture. Upewnij się, że zapisałeś teksturę i model, klikając ikonę dyskietki. Wróć do edytora Hammer.
W Hammer możesz przeciągnąć i upuścić model z Przeglądarki zasobów na mapę. Model najprawdopodobniej będzie mały i będziesz musiał zmienić jego rozmiar. Naciskając T na klawiaturze, możesz zmienić jego pozycję na mapie. Naciśnięcie E zmieni proporcje modelu, podczas gdy R obróci go.
Krok 8: Tworzenie etykiet obiektów
Etykiety obiektów widoczne obok każdego punktu orientacyjnego zapewniają kontekst i historię, aby poprawić wrażenia użytkownika. W przypadku moich etykiet obiektów po prostu zrobiłem zdjęcia tabliczek informacyjnych w każdym miejscu, aby łatwo zapisać ważne informacje, które chciałem później wykorzystać. Następnie użyłem Krita, darmowego programu do edycji zdjęć, aby utworzyć etykiety obiektów zawierające dodatkowe obrazy i tekst.
W przypadku strony Miner Park i Anchor nie było problemów z dodawaniem etykiet jako tekstur. Po prostu dodaj je do Przeglądarki zasobów za pomocą Edytora materiałów i dodaj obraz do bloku, który można utworzyć w Edytorze młota. Problemy pojawiły się, gdy stworzyłem deski na drugą stronę pokoju. Cały tekst i obrazy były odwrócone i nie było jasnego sposobu na odwrócenie tekstur w edytorze. Aby to naprawić, wróciłem do Krity i odwróciłem deski dla jelenia i niedźwiedzia i na szczęście rozwiązało to problem.
Ponadto dodałem różne obrazy Wilkes-Barre, ponieważ chciałem stworzyć pokój, który miałby klimat i atmosferę butikowego muzeum.
Krok 9: Wniosek
Podsumowując, zarówno wirtualna rzeczywistość, jak i fotogrametria mogą znacznie usprawnić niezliczone branże, w tym między innymi sport, nieruchomości i kryminalistykę. Dzisiaj użyłem fotogrametrii, aby zachować małe, ale ważne fragmenty lokalnej historii mojego rodzinnego miasta. VR i fotogrametria to wciąż eksperymentalne technologie, które czasami mogą stanowić dla ciebie wyzwanie. Pomimo pewnych niedociągnięć ilość innowacyjnych zastosowań obu procesów jest ekscytująca i nieograniczona. Dziękuję za przeczytanie o tym projekcie i mam nadzieję, że zainspirowało Cię to do spróbowania czegoś nowego z Wirtualną Rzeczywistością.
Link do pobrania projektu można znaleźć tutaj.
Zalecana:
Ponowne wykorzystanie radiatora komputera do stworzenia radiatora tranzystorowego: 7 kroków
Ponowne użycie radiatora komputera do stworzenia radiatora tranzystorowego: Jakiś czas temu kupiłem trochę Raspberry Pi 3 do zabawy. Ponieważ nie mają radiatora, byłem na rynku dla niektórych. Zrobiłem szybkie wyszukiwanie w Google i natknąłem się na ten Instructable (Raspberry Pi Heat Sink) - było to po odrzuceniu pomysłu
Fajne sposoby na ponowne wykorzystanie starych części komputerowych: 7 kroków (ze zdjęciami)
Fajne sposoby na ponowne wykorzystanie starych części komputera: W tej instrukcji krótko przedstawię kilka pomysłów, jak ponownie wykorzystać niektóre części starych komputerów, które wszyscy wyrzucają. Nie uwierzysz, ale te stare komputery mają wiele interesujących części w środku. nie da pełnego
Wykorzystanie obwodu do pomiaru napięcia bramki cyfrowej: 7 kroków
Korzystanie z obwodu do pomiaru napięcia bramki cyfrowej: Obwody cyfrowe zwykle wykorzystują zasilacze 5 V. Napięcia cyfrowe od 5 V do 2,7 V w serii TTL (rodzaj cyfrowego zintegrowanego układu scalonego) są uważane za wysokie i mają wartość 1. Napięcia cyfrowe formularz 0-0,5 są uważane za niskie i mają
Ponowne wykorzystanie starych ozdób choinkowych LED poprzez ich remiksowanie: 7 kroków
Ponowne wykorzystanie starych ozdób choinkowych LED przez ich remiksowanie: Kupiłem dość ohydną świąteczną dekorację w sklepie Funt (tj. sklepie za dolara) podczas wyprzedaży po sezonie trzy lata temu. To był rozczarowujący „NOEL”; znak, który został oświetlony przez niewystarczającą liczbę diod LED zasilanych bateryjnie
Używanie Blendera do tworzenia modeli Java3D: 3 kroki
Używanie Blendera do tworzenia modeli Java3D: Jeśli jesteś programistą Java, prawdopodobnie chciałeś kiedyś programować w 3D. Ale jak? Cóż, możesz użyć Java3D i powoli wpisać każdy punkt wielokąta 3D (próbowałem, zaufaj mi, to zły pomysł) lub możesz użyć Blendera (http://blender.org) i