Skanowanie 3D

Alicevision meshroom

Jak zacząć skanowanie 3D: Przewodnik dla początkujących

Skanowanie 3D to fascynujący proces, który pozwala na tworzenie trójwymiarowych modeli z rzeczywistych obiektów. W tym artykule przedstawimy krok po kroku, jak rozpocząć swoją przygodę z Meshroom, popularnym narzędziem do fotogrametrii. Meshroom jest oparty na technologii AliceVision, która pozwala na przekształcenie serii zdjęć w realistyczne modele 3D.

https://alicevision.org/#meshroom

Przygotowanie obiektu do skanowania:

Aby uzyskać jak najlepsze wyniki podczas skanowania 3D, należy zwrócić uwagę na kilka kluczowych aspektów:

1. Sprzęt fotograficzny: Można używać zarówno smartfonów, jak i aparatów cyfrowych. Aparaty cyfrowe oferują możliwość ustawienia stałych parametrów, co jest korzystne dla uzyskania zdjęć o podobnej jasności i kontraście.

2. Stabilność obiektu: Nie można przemieszczać obiektu podczas robienia zdjęć. Można jednak robić zbliżenia i zdjęcia detali.

3. Unikanie odbić światła: Obiekty, które mocno odbijają światło, mogą sprawić trudności. Można pokryć je mąką lub pudrem, aby zredukować refleksy.

4. Oświetlenie: Obiekt musi być równomiernie oświetlony. Należy unikać ostrych cieni, które mogą zakłócić rozpoznawanie kształtów.

5. Jakość zdjęć: Zdjęcia muszą być ostre, a obiekt powinien zajmować większą część kadru.


Mashroom instrukcja

  1.  Format zdjęć: Najlepiej, aby zdjęcia były w formacie JPG. W razie potrzeby można skorzystać z konwerterów online:

    Image Online-Convert

    HEIC to JPG

    Organizacja zdjęć: Zdjęcia powinny znajdować się w jednym folderze na komputerze, co przyspiesza pracę programu.

  2. Sprawdzenie metadanych: Program automatycznie odczytuje informacje o zdjęciach. Jeżeli coś jest nie tak, można ręcznie edytować dane, dodając informacje o obiektywach i aparatach zgodnie z bazą danych Alice Vision.

  3. Prostokąty na dole to nody czyli takie małe programy wewnątrz dużego programu. Czy musisz wiedzieć jak działają? Nie ale pewnie i tak z czasem będziesz chciał_a poznać detale niektórych programów, żeby zwiększyć efektywność swojej pracy oraz polepszyć jakość skanów. 

  4. Na tym etapie wystarczy że zapoznasz się z nazwami i będziesz wiedzieć co mniej więcej robią poszczególne nody. https://meshroom-manual.readthedocs.io/en/latest/node-reference/nodes/CameraInit.html

    1.  https://alicevision.org/#photogrammetry/sfm

    2. CameraInit - tworzy bazę z zaimportowanymi plikami i sprawdza jaki obiektyw był użyty oraz jaka kamera dzieli na grupy

    3. FutureExtraction - Cecha Wydobycie(wydobywa charakterystyczne punkty czyli styki kolorów/cienie itd.

    4. ImageMaching-odnajduje podobne punkty w różnych zdjęciach i grupuje zdjęcia parami

    5. FeatureMatching - dopasowuje podobne punkty w sparowanych zdjęciach

    6. Structure form motion - tworzy chmure punktów ze sparowanych zdjeć

    7. DEPTH MAPS ESTIMATION - tworzy mapę głębokości czyli ustawia piksele które są bliższe i dalej i ustawia je w przestrzeni

    8. meshing- tworzy płaszczyzny na bazie mapy głębokości i chmury punktów

  5. kusi Ciebie pewnie żeby na początku kliknąć PIĘKNY ZIELONY PRZYCISK START… ale nie stop nie przyciskaj go bo możesz stracić sporo czasu jak okaże się że powstał jakiś problem przy doborach w pary plików albo brakuje tobie jakiegoś fragmentu modelu. Mozesz zawsze dorobić kilka zdjec i program nam przeliczy ten obszar jeszcze raz. 

  6. Do zaoszczędzenia czasu najlepiej zacząć przeliczanie modelu od stworzenie chmury punktów czyli z klikamy prawy na StructureFromMotion, wybieramy Compute i program nam zaczyna liczyć.

  7. Jeżeli już okaze sie ze wszystko mamy ok możemy kliknąć prawym na texturing puścić obliczanie(musisz pamiętać, że przeliczanie potrafi trwać nawet kilka godzin)

  8. przed eksportem można pomyśleć nad zmienszeniem ilości detali(polygonów/płaszczyzn przy pomocy noda, który się nazywa MeshDecimate.

  9. później wystarczy zaimportować plik do programu do edycji modeli 3d i naprawić i poprawić wszystkie niedoróbki ale to już inna historia 

    1. Meshmixer http://www.meshmixer.com/

    2. sculptris https://pixologic.com/sculptris/

    3. webinar sculptris https://www.facebook.com/Stow.Robisz.to/videos/640316089846826/

    4. Blender - https://www.blender.org
      1. https://github.com/tibicen/meshroom2blender
  10. inne wykorzystanie :

    1. https://onlineconvertfree.com/convert-format/mov-to-jpg/

    2. np. w geologi do tworzenia modeli terenów przy pomocy dronów. Zamieniamy wideo na jpg i przeliczamy do modelu 3d

    3. edycji wideo https://www.youtube.com/watch?v=eiEaHLNJJ94 dodawanie obiektów 3d do wideo



ciekawe tutoriale :

https://www.youtube.com/watch?v=R0PDCp0QF1o

https://www.youtube.com/watch?v=eiEaHLNJJ94

https://sketchfab.com/blogs/community/tutorial-meshroom-for-beginners/

Artec LEO

Poradniki oraz nagrania ze szkoleń z obsługi skanera jak i programu do edycji skanów

Artec LEO

LEO - instrukcja krok po kroku

Instrukcja producenta. Polecam się zapoznać przed przeczytaniem tego tutoriala:

http://docs.artec-group.com/leo/setup.html


Jak skanować krok po kroku

Odpalanie maszyny

Wcisnąć guzik po lewej stronie  maszyny. Opala się długo (ok 03 s - 1 min) 

Podstawowe ustawienia systemowe

Domyślne ustawienia są ok. Jeśli coś nie działa,  to rozwiązania są w zakładce Problemy. Na tym etapie nie warto wchodzić  w ustawienia


Tworzenie projektu

Klikamy Nowy projekt na dole ekranu


Ustawienia skanowania

Najważniejsze ustawienia:

Twój pierwszy skan

Ważne tipy:

  1. Nie przestawiaj obiektu, bo skaner może się zgubić. Omówi to w następnym punkcie.

  2. Jak skanujesz człowieka, to zacznij od twarzy. Trudno usiedzieć w bezruchu, a co dopiero utrzymać mięśnie twarzy nieruchomo. Skanujemy przy zamkniętych oczach, bo lampa jest naprawdę mocna.


Masz już wybrany obiekt? Super, teraz trzeba na niego skierować skaner i poczekać na komunikat: gotowy do skanowania. Na ekranie powinna się pojawić część skanowanego obiektu.

Naciskamy czerwony spust pod palcem.


Skanujemy cały obiekt starając się trzymać skaner prostopadle do skanowanych płaszczyzn.

Pamiętaj, aby Twój nadgarstek nie był zablokowany. Często się zdarza, że skanujący pomija np. podbródek, albo czubek głowy. Zeskanuj ze wszystkich stron i nie bój się obracać urządzenia.


Na koniec naciśnij znów czerwony spust.

Pojawi się model na ekranie i zobaczysz, gdzie są dziury/niedociągnięcia.

Zawsze możesz zeskanować drugi raz naciskając po prostu spust

Chcesz obrócić model i zeskanować od go spodu? Poczekaj!

Jeśli chcesz ruszyć model, to musisz zrobić drugi skan, który później połączysz w programie.

W prawym górnym rogu naciśnij przycisk “Projekt”, by wrócić do projektu. 

Naciśnij na dole “nowy skan”

Kontynuuj, jak w poprzednim punkcie.


Pamiętaj, aby dwa skany miały kilka części wspólne, aby program ustawił je za nas :)

Jak zgrać projekt na komputer




Potrzebna jest karta microSD, najlepiej 64 GB, albo więcej.

Włóż kart w slot na spodzie urządzenia

Zgraj wybrane projekty na kartę (zdjęcia wyżej)


Włóż kartę do komputera i zgraj na niego pliki .leo.

Nie pracuj na plikach na karcie, bo będzie okropnie wolno


Otwórz program Artec Studio

Plik>nowy projekt

Plik>Importuj>plik Leo

Znajdź plik


Na ekranie powinny się pojawić zrobione skany. Jeśli coś nie działa, poniżej jest zakładka Problemy.


Workflow w Artec Studio

Jak to zrobić, najlepiej opowiada ten film od 13:39 https://youtu.be/LrYfHm2R6Sw?si=bT12MJWfU7l4Y0wd&t=819

On co prawda nie zgrywa pliku przez SD, tylko skanuje skanerem podłączonym przez LAN do komputera. Reszta wygląda tak samo.


Jak to zrobić najszybciej?

  1. Włączamy autopilot

  2. Wciskamy select all i next  (chyba że mamy skan, który kompletnie nie wyszedł, to po prawej odznaczamy nieudany skan)

  3. Przy EDIT zaznaczamy lasso i trzymając ctrl lewym przyciskiem myszy latając śmieci. Naciskając delete usuwamy je.

  4. Naciskamy next.


17GB skanu przetwarzało mi autopilotem około 3 minuty, a cała procedura zajęła ok 10.



Eksport

  1. file>export>meshes

  2. wybieramy .stl (bez tekstur), albo .obj (z tekturami)


Upraszczanie mesha

Plik na oculusy nie może być zbyt duży. Z 17GB zrobiło mi 73 MB, ale przy większych modelach może być problem z wydajnością. Jeśli oculusy nie pociągną takich rozmiarów, to trzeba uprościć mesha w Blenderze. Tutorial jak to zrobić będzie w osobnym pliku.




Problemy

Jakie pojawiły się problemy:

  1. skaner widzi obiekt, ale nie tworzy “modelu” (tak naprawdę chmury punktów)

  2. skaner nie łapie ciemnych i jasnych obiektów

  3. skaner się gubi

  4. Skaner nie używa lampy błyskowej

  5. program nie chce odczytać pliku chmury punktów .leo



Skaner widzi obiekt, ale nie tworzy “modelu” (tak naprawdę chmury punktów)

Jest jedno ustawienie, które potrafi wszystko zepsuć i jeszcze nie wiem po co jest. W Leo to jest Ustawienia>Skaner>Skanowanie>Zbieranie danych bez rejestracji. Jeśli jest włączone, to nie tworzy chmury punktów, czyli nie skanuje.

Jeśli to nie pomoże, to trzeba wyłączyć ustawienie o 1 niżej, czyli Zapisz teksturę podstawową.


Skaner nie łapie ciemnych i jasnych obiektów

Leo jest świetnym skanerem, ale jednak skanerem. Skanery wysyłają wiązkę światła i liczą czas do powrotu sygnału. mnożą razy prędkość światła w powietrzu i cyk: mamy skan. Upraszczając oczywiście. Dla ciekawskich: wpisz w Google fotogrametria.


Problem się pojawia przy czarnych, białych i mocno połyskujących. Wtedy skaner musi się mocno napracować, żeby ustalić położenie punktu. Najłatwiejszym rozwiązaniem jest znalezienie na warsztatach innego obiektu do skanowania.


Jeśli już musimy coś zeskanować, to świetnie sprawdza się talk do stóp w sprayu, albo podobne. Trzeba zmatowić powierzchnię i najlepiej gdyby to się łatwo zmywało. Nie polecam na warsztatach. 

Skaner się gubi, albo “ucieka”

Skaner nie jest wszechwiedzący i nie zna dokładnie swojego położenia. Ma co prawda akcelerometr i żyroskop, ale nie ustali z ich pomocą absolutnej pozycji. 


Skaner zbiera kolejne punkty gdy wie gdzie jest. A wie gdzie jest, gdy widzi coś co już wcześniej widział. Dlatego warto zacząć skanowanie od charakterystycznego i łatwego do zeskanowania elementu. 

Gdy skanujemy nowy obszar, to skaner musi widzieć część starego obszaru. A gdy już się zgubi i nie wiadomo co i jak, to zawsze możemy wrócić do charakterystycznego elementu z początku.


A gdy jest naprawdę źle? Gdy skan na ekranie zaczyna uciekać i tworzy się kilometrowy model?

Skaner nie lubi powtarzających się o stały odstęp elementów i powierzchni płaskich (i jak pisałem wcześniej: czarnych, białych i połyskujących elementów). To zgadnijcie z czego składa się paka busa.


Skąd w takiej sytuacji skaner ma wiedzieć gdzie jest? Czy ten słupek to poprzedni słupek, czy nowy słupek? Czy ta płaska powierzchnia to ta sama, czy nowy kawałek? 


Musimy skanerowi pomóc wiedzieć gdzie jest. I tu do akcji wkraczają odblaskowe naklejki/znaczniki/markery. Jak zwał tak zwał. Są w skrzyni z chińskim skanerem Scantech.

Rozklejamy konstelację odblasków tak, aby w skanowanym obszarze były minimum 4 naklejki. Ma to wyglądać bardziej jak gwiazdozbiory, niż od linijki. Czyli na oko :)


Ustawiamy na skanerze opcję “markers”, czy “zanczniki” i skanujemy znaczniki. Później akceptujemy zbiór znaczników i skanujemy. Nieważne gdzie zaczniemy. Nie ważne gdzie będziemy kontynuować. Skaner widzi konstelację znanych punktów i dookoła odczytuje geometrię. 




Skaner nie używa lampy błyskowej

Zwykle chcemy zeskanować coś oświetlonego równo i wtedy używamy lampy błyskowej. Czasem chcemy ustawić oświetlenie sami i zeskanować tak jak jest. Wtedy używamy lamp filmowych. Coś takiego robi się przy skanowaniu modeli do gier.


Zwykle na  zajęciach jednak chcemy używać wbudowanej lampy, żeby się nie bawić w ustawianie dużych i mocnych lamp. Co jeśli ona nie chce świecić podczas skanowania?


Wchodzimy w ustawienia>skaner>skanowanie>Użyj lampy błyskowej.

Ustawiamy tak jak potrzebujemy.



 

Artec LEO

Film ze szkolenia dla Edu