Skanowanie 3D: Różnice pomiędzy wersjami
m (→Kino w domu - metoda światła strukturalnego) |
m (→Aniołki) |
||
Linia 130: | Linia 130: | ||
Pozostałe przedmioty należy albo pomalować na biało-matowo, albo chociaż | Pozostałe przedmioty należy albo pomalować na biało-matowo, albo chociaż | ||
równomiernie pokryć talkiem, kredą lub mąką. Można tez zaopatrzyć się w | równomiernie pokryć talkiem, kredą lub mąką. Można tez zaopatrzyć się w | ||
− | specjalne spraye kredowe. Nie da się ukryć, że jest to pewna | + | specjalne spraye kredowe. Nie da się ukryć, że jest to pewna uciążliwością. |
Pomijając kwestię brudu "w pracowni", to potem taki przedmiot trzeba wyczyścić | Pomijając kwestię brudu "w pracowni", to potem taki przedmiot trzeba wyczyścić | ||
lub umyć, a nie każdy przedmiot jest wodoodporny. | lub umyć, a nie każdy przedmiot jest wodoodporny. |
Wersja z 11:25, 16 sty 2013
TEST
Spis treści
Skanowanie 3D
Przetestowaliśmy ostatnio (12.2012) możliwość skanowania trójwymiarowego. Na rynku jest dostępnych wiele skanerów i rozwiązań tego typu. My, z uwagi na ograniczony budżet, wybraliśmy oprogramowanie David 3.5.1. Staraliśmy się, aby niniejszy artykuł nie był ani kryptoreklamą, ani recenzją - stąd brak linku do strony producenta. Zainteresowani mogą sobie wygooglać ;)
Na podstawie dłuższej "zabawy" tym systemem staraliśmy się zebrać pewne doświadczenia i refleksje dotyczące skanowania 3D, które najprawdopodobniej dają się uogólnić na inne systemy skanowania niż posiadany przez nas. Należy zauważyć, że oryginalna instrukcja obsługi zawierają wystarczająco dużo szczegółów, aby zacząć zabawę. Również forum internetowe na stronie producenta jest cennym źródłem wiedzy. Mamy nadzieję, że niniejszy artykuł skłoni czytelników do własnych przemyśleń i zapobieże poczynieniu przez czytelników np. chybionych inwestycji.
Czym skanować?
System tego typu składa się z następujących elementów:
- komputera z odpowiednim oprogramowaniem,
- kamery,
- lasera liniowego lub projektora (metoda światła strukturalnego),
- narożnika kalibracyjnego,
- skanowanego przedmiotu.
Mózg operacji
Powiedzmy sobie wprost. Czym bardziej dokładne skanowanie, tym komputer powinien być lepszy. Podstawowa akcelearcja grafiki 3D jest raczej obowiązkowa. My używaliśmy dość starego komputera (chipset i815, procesor ok. 2GHz, 1GB pamięci) i przy bardziej skomplikowanych przedmiotach odczuwało się poważny dyskomfort - jak np. odświeżanie ekranu z częstotliwością poniżej 5fps przy obracaniu skanów na ekranie. Także obróbka danych, jak np. dopasowanie do siebie wielu skanów z różnych stron tego samego przedmiotu, utworzenia z nich jednego modelu bryłowego itp. zaczyna zajmować dużo czasu (nagle z parunastu sekund robi się parę minut). Ale w wypadku skanowania drobnych przedmiotów o niedużej rozdzielczości był jak najbardziej wystarczający.
Klaps!
Użyte oprogramowanie wymaga użycia kamery internetowej. Tzn. urządzenia, które komputer zobaczy jako kamerę internetową. Wg producenta działają też przemysłowe kamery ze sterownikami DirectShow. Jednak nie za bardzo może być to najtańsza kamera internetowa. Nawet nie chodzi o rozdzielczość. Strategicznie ważnymi parametrami będą: ostrość i możliwość jej ustawiania, głębia ostrości, poziom szumów i odkształcenia geometryczne obrazu... Co do rozdzielczości kamery to 640x480 lub 800x600 jest absolutnie wystarczające. Należy także pamiętać o kompresji obrazu przesyłanego z kamery do komputera. Użyta kamera nie może kompresować ani interpolować obrazu. Artefakty powstające w procesie kompresji i interpolacji, nawet niezauważalne przy normalnym użyciu kamery, powodują znaczne zakłócenia skanowanych powierzchni 3D.
My używaliśmy kamery internetowej wspominanej przez producenta oprogramowania na jego stronie internetowej - jest to jeden z najdroższych modeli "L", a i tak w kontekście skanowania 3D jest to naszym zdaniem absolutne minimum. Wspomnimy tylko, że ceny przemysłowych kamer o odpowiednich parametrach kształtują się na poziomie >700eur. Nasza kamera ma sensor o rozdzielczości sprzętowej 1600x1200px i chyba najlepsze rezultaty dawała w trybie 800x600px 15fps.
Posiadane przez nas oprogramowanie wg opisów z forum producenta może współpracować też z aparatami fotograficznymi typu Canon EOS. Nie testowaliśmy tej możliwości. Zapewne użycie takiego aparatu usuwa większość wad zwykłych kamer internetowych. Jednak obecnie nie ma kompletnej listy wspieranych aparatów. Tzn. zakłada się, że z nowszymi modelami raczej działa, ze starszymi raczej nie.
Gwiezdne wojny
Najstarszą metodą skanowania jest użycie lasera liniowego. Testowaliśmy to. Nasze spostrzeżenia:
- Laser nie musi być mocny. Skanując w półmroku lub ciemności można użyc dość słabych laserów.
- Niezależnie od zastosowanych środków BHP (specjalne okulary ochronne) po paru godzinach zabawy i tak dochodzi do podrażnienia wzroku.
- Dokładność skanowania zależy od ostrości wiązki - musi być jak najwęższą.
- Tańsze lasery mają ustawianą ostrość wiązki, ale mają też problem z jej jakością - tzn. może się nie udać ustawienie ostrości na całej długości linii.
- Średnie cenowo lasery nie mają ustawianej ostrości.
- Droższe lasery z lepszą optyką są drogie.
- Trudno jest ustawić ostrość - bo trudno wpatrywać się w rzutowaną laserową linię przez lupę (kategorycznie odradzamy!)... może istnieją do tego celu specjalne przyrządy lub możną je zrobić - nie wnikaliśmy w to zagadnienie.
- Aby otrzymać naprawdę dobre rezultaty, ruch lasera (tzn. linii, którą rzutuje) powinien być zmechanizowany. Dzięki temu można też zrezygnować z ciągłego użycia powierzchni kalibracyjnych (więcej o nich w dalszej części artykułu).
Podsumowując, odradzamy użycie lasera. Wydaje się, że skanowanie przy użyciu lasera może być prostsze i dawać lepsze rezultaty w wypadku dużych przedmiotów (meble, samochody itp.). Oczywiście znajdzie się dużo osób, które przy użyciu lasera osiągają dobre rezultaty także w skali mikro, ale wymaga to odpowiedniego przygotowania i sporo doświadczenia.
Kino w domu - metoda światła strukturalnego
Szczęśliwie do skanowania 3D nie trzeba używać lasera. Istnieje też technika skanowania przy użyciu projektora lcd/dlp. Zaletą metody jest niewątpliwie to, że nie używa się światła laserowego. Wadą, że używa się projektora. O przydatności projektora (jakości uzyskiwanych skanów powierzchni 3D), naszym zdaniem decyduje:
- Ostrość obrazu i głębia owej ostrości...
- Minimalna odległość projektora od ekranu (czyli możliwość ustawienia ostrości). W naszym wypadku, do skanowania drobnych detali, użyliśmy samodzielnie wykonanej protezy z soczewką nasadzaną na projektor, dzięki czemu zmniejszyliśmy minimalną odległość od projektora do ekranu z 60 do ok. 30cm,
- Piksele - chodzi o to, czy i na ile na ostrym obrazie można wyróżnić poszczególne piksele obrazu. Tzn. czy są wyraźnie oddzielone od siebie
ciemnymi liniami. Jeżeli wyraźnie są, może to powodować cykliczne zakłócenia na skanowanych powierzchniach 3D.
- Szumy i inne zakłócenia - tzn. ma być ich jak najmniej.
Używaliśmy do testów projektora DLP formy B* w średniej cenie. Możemy powiedzieć tylko, że szumi, widać mu piksele i generuje inne zakłócenia uwidaczniające się na małym ekranie (na dużym ich nie widać!). Ale mimo to ten projektor daje całkiem zadowalające rezultaty. Producent oprogramowania ma swój całkiem niedrogi, inny typ projektora, który poleca na swojej stronie internetowej.
Należy pamiętać, że w wypadku użycia projektora, jego światło jest na tyle słabe, że zewnętrzne źródła światła wpływają na jakość skanowania. Tzn. Pomieszczenie powinno być zaciemnione i/lub warunki oświetlenia powinny być stałe, a światło rozproszone. Oświetlenie nie może się zmieniać w dowolny sposób, na różnych obszarach skanowanego przedmiotu (chodzi np. o pojawiające się i znikające cienie, odblaski itp.).
Jakość skanu można doraźnie polepszyć manipulując jasnością projektora - o dziwo, wydaje się, że takie globalne, równomierne zmiany intensywności oświetlenia nie wpływają na kalibrację systemu.
Spotkajmy się na rogu
Narożnik kalibracyjny - jest to przedmiot służący do kalibracji naszego systemu skanującego. Dokładniej, jest to narożnik utworzony z dwóch płaskich powierzchni ustawionych pod kątem 90 stopni. Na jego skrzydłach są naniesione specjalne wzory, dzięki którym oprogramowanie skanujący może się zorientować w przestrzeni. Umożliwia to również eliminację części zniekształceń optycznych powstających w obiektywach kamery i projektora. Strategicznie ważne jest:
- Powierzchnie muszą być płaskie. Jeżeli do powierzchni z np. MDF'u przyklejamy wydrukowane na papierze wzory kalibracyjne, bezwzględnie muszą one przylegać na całej powierzchni (klej w spray'u dobrze się sprawdza) i być ustawione równo.
- Powierzchnie muszą być ustawione dokładnie pod kątem 90 stopni. Zazwyczaj ustawia się je częścią wklęsłą do projektora/kamery, ale nic nie stoi na przeszkodzie, aby zrobić to odwrotnie.
- Rozmiar powierzchni powinien być dobrany do rozmiaru skanowanego przedmiotu, rozmiaru obrazu rzutowanego przez projektor i kątowi widzenia kamery.
- W wypadku użycia projektora lub zmechanizowanego lasera, narożnik kalibracyjny jest potrzebny tylko w trakcie kalibracji. W wypadku użycia lasera trzymanego w ręku, narożnik musi być cały czas widoczny w kadrze.
Aniołki
Skanowane przedmioty mają swoje ograniczenia. A dokładniej, aby otrzymać zadowalające rezultaty, skanowany przedmiot powinien mieć przygotowaną powierzchnię.
- Raczej nie uda się zeskanować przedmiotu czarnego lub błyszczącego o ile nic się z nim nie zrobi.
- W celu otrzymania dobrej jakościowo zeskanowanej powierzchni, przedmiot powinien być najlepiej biały i matowy.
Cóż, powoduje to, że idealnymi przedmiotami do testów są gipsowe aniołki... Pozostałe przedmioty należy albo pomalować na biało-matowo, albo chociaż równomiernie pokryć talkiem, kredą lub mąką. Można tez zaopatrzyć się w specjalne spraye kredowe. Nie da się ukryć, że jest to pewna uciążliwością. Pomijając kwestię brudu "w pracowni", to potem taki przedmiot trzeba wyczyścić lub umyć, a nie każdy przedmiot jest wodoodporny. Oczywiście można skanować przedmioty w stanie naturalnym (w wypadku skanowania z teksturą jest to wręcz wymagane), ale rezultaty będą lepsze lub gorsze zależnie od ich jasności i matowości(?) powierzchni.
Trzeba pamiętać, że w wypadku niektórych przedmiotów, przygotowanie ich do
skanowania będzie decydującym kosztem całej operacji - np. w wypadku
skanowania "prawdziwych" samochodów, jak wynika z opisów z forum producenta
oprogramowania, trzeba poświęcić dwa dni na przygotowanie, dzień na skanowanie
i kolejny dzień na mycie... a wszystko razem musi się odbywać w pomieszczeniu
zamkniętym, sporo większym od samochodu oraz o ustabilizowanej temperaturze.
Skanowanie
Mając złożony cały system możemy przystąpić do skanowania. Generalnie sekwencja czynności jest dość dobrze opisana w instrukcji oprogramowania, więc tą część potraktujemy skrótowo.
Kalibracje
Po wybraniu kamery i metody skanowania (laser lub światło strukturalne), kalibrujemy system. Najpierw kamerę, w wypadku użycia projektora w drugim kroku projektor. Przed tym należy pamiętać o ustawieniu ostrości zarówno projektora, jak i kamery. Te parametry mają wpływ na kalibrację. O dziwo jasność projektora i wirtualny czas otwarcia migawki kamery nie mają wpływu na kalibrację i możemy tymi parametrami później bezkarnie "kręcić", nie musząc ponownie kalibrować systemu (w wypadku czasu otwarcia migawki należy pamiętać, aby nie wpaść w zakres interferencji ze źródłami światła i kompresji obrazu przesyłanego z kamery do komputera). Potem możemy skanować.
Gdzie mój model?
Niestety. Prawie zawsze zeskanowanie przedmiotu będzie wymagać więcej niż jednego skanu. Tzn. Wykonuje się wiele skanów, obracając przedmiot po każdym skanie, dbając o to, aby kolejne skany wzajemnie się uzupełniały.
Nawet w wypadku przedmiotów o charakterze "płaskorzeźby", powinno się wykonać więcej
niż jeden skan. Usunie to potencjalne "dziury" ze skanów i generalnie poprawi
ich jakość.
Czy to koniec?
Nie. Wiele skanów tego samego przedmiotu trzeba połączyć w jeden model. Ponieważ przedmiot był obracany, poszczególne skany trzeba ze sobą spasować. Posiadane przez nas oprogramowanie radzi sobie z tym całkiem nieźle z automatu. Jednak gdy czasem wystąpią problemy z łączeniem czy też sklejaniem skanów, to niestety do ręcznego pasowania poszczególnych skanów ze sobą są słabe.
Oprogramowanie także próbuje dostosowywać jakość tworzonego ostatecznie modelu zależnie od zasobów komputera na którym to się odbywa. Czasem samoczynnie zmniejsza rozdzielczość modelu, a czasem odmawia jego stworzenia, dopóki ręcznie się nie zmniejszy oczekiwań odnośnie wyników pracy. Niestety nie bardzo da się w ten proces ingerować.
Na szczęście istnieją całkiem sprawne darmowe programy, które bardzo dobrze
radzą sobie z obróbką skanów i rekonstrukcją powierzchni, aczkolwiek są
skomplikowane w użyciu i wymagają już pewnej wiedzy i wprawy (jak np.
Meshlab).
Podsumowanie
Metoda skanowania 3D w wielu wypadkach wydaje się bardzo obiecująca. Przy odrobinie wprawy można uzyskiwać bardzo dobre rezultaty. Nawet jeżeli skanowanie i utworzenie modelu jakiegoś przedmiotu zajmie parę godzin, to w wypadku odtwarzania istniejących detali, może to być szybsze i prostrze niż jego zamodelowanie od podstaw w programach typu CAD. Dotyczy to przede wszystkim przedmiotów zawierających wiele krzywizn. Metoda jest w szczególności przydatna gdy odtworzenia wymaga przedmiot już niedostępny w handlu.
Metoda ma też swoje wady. Otrzymane modele 3D są powłokami i nie są parametryczne, co utrudnia późniejszą cyfrową obróbkę i ich ew. modyfikacje. No i oczywiście ładne opracowanie skomplikowanego modelu może zabrać bardzo wiele godzin pracy.
Stosując podobne metody trzeba też sobie zdawać sprawę z zagadnień związanych z prawami autorskimi...
W wypadku zainteresowania czytelników technologiami "szybkiego prototypowania" będziemy kontynuować tą tematykę.
dr inż. Szymon Dowkontt