Case study

Gaussian Splatting – rewolucja w odwzorowaniu 3D

Odpowiedzmy sobie na początku, czym jest fotogrametria?

Fotogrametria to technika uzyskiwania metrycznych i trójwymiarowych informacji o obiektach i scenach z obrazów 2D. Wykorzystuje ona geometrię i położenie obrazów wykonanych pod różnymi kątami i z różnych miejsc w przestrzeni do obliczania kształtu, położenia i orientacji obiektów w przestrzeni trójwymiarowej.

Gaussian Splatting co to jest i do czego służy?

To technika reprezentowania i renderowania trójwymiarowych (3D) scen wykorzystywana w takich dziedzinach jak fotogrametria, grafika komputerowa i rzeczywistość wirtualna. W przeciwieństwie do innych podejść, Gaussian Splatting opiera się na reprezentowaniu sceny jako zestawu punktów w przestrzeni, znanych jako „gaussiany”.

Te gaussiany są podobne do kropli lub rozprysków w przestrzeni 3D, a każdy z nich ma swoje własne unikalne parametry, takie jak położenie, rozmiar i kolor. Proces Gaussian Splatting polega na rzutowaniu tych gaussianów na płaszczyznę 2D z perspektywy kamery, a następnie renderowaniu ich w celu uzyskania ostatecznego odwzorowania obrazu.

Do czego więc służy metoda Gaussian Splatting? Technika ta ma kilka ważnych zastosowań:

Renderowanie w czasie rzeczywistym:

Umożliwia renderowanie złożonych scen w czasie rzeczywistym z dużą szybkością i jakością. Ma to kluczowe znaczenie dla aplikacji interaktywnych i rozrywkowych, takich jak gry wideo i wirtualne symulacje.

Fotogrametria i rekonstrukcja 3D:

W dziedzinie fotogrametrii, Gaussian Splatting jest wykorzystywany do reprezentowania i rekonstrukcji trójwymiarowych scen z obrazów 2D. Umożliwia to uzyskanie szczegółowych modeli 3D z obrazów w stosunkowy krótkim czasie.

Rzeczywistość wirtualna i rozszerzona (VR i AR):

W środowiskach rzeczywistości wirtualnej i rozszerzonej umożliwia renderowanie złożonych i dynamicznych scen w czasie rzeczywistym, zapewniając użytkownikom większe poczucie obecności i realizmu.

Jak działa Gaussian Splatting?

Gaussian Splatting działa poprzez proces, który przekształca reprezentację trójwymiarowej sceny w zestaw „gaussianów” lub plam/punktów gaussowskich w przestrzeni 3D.

Po lewej: Pomiar wysokości z chmury punktów. Po prawej: Pomiar wysokości z modelu Gaussian Splatting

  1. Reprezentacja sceny: Po pierwsze, konieczne jest uzyskanie reprezentacji trójwymiarowej sceny z danych fotogrametrycznych lub skanowania laserowego 3D.
  2. Przekształcenie w punkty Gaussa: Każdy punkt sceny jest przekształcany w plamkę gaussowską w przestrzeni 3D. Punkty te mają parametry takie jak położenie, rozmiar i kolor, reprezentujące charakterystykę oryginalnych punktów sceny.
  3. Projekcja na płaszczyznę 2D: Następnie te punkty Gaussa są rzutowane na płaszczyznę 2D z perspektywy wirtualnej kamery. Proces ten symuluje, jak plamki wyglądałyby z punktu widzenia kamery w scenie.
  4. Sortowanie i łączenie: Rzutowane punkty Gaussa są sortowane na podstawie ich głębokości w przestrzeni 3D. Następnie są one łączone w celu utworzenia ostatecznego obrazu, w którym punkty znajdujące się bliżej kamery mają pierwszeństwo przed tymi znajdującymi się dalej.
  5. Renderowanie: Ostateczny obraz jest renderowany przy użyciu rzutowanych punktów Gaussa. Polega to na połączeniu wartości kolorów punktów, które nakładają się na płaszczyźnie 2D, co skutkuje wizualną reprezentacją sceny z perspektywy kamery.

A więc, czy mamy kolejną rewolucję w metodzie odwzorowania trójwymiarowego? Metoda jest szybsza, lepiej odwzorowuje obraz rzeczywisty, jednocześnie zachowując dokładności rekonstrukcji. 

Metoda powoli zaczyna się pojawiać w wielu urządzeniach do mobilnego skanowania laserowego i fotografii, a producenci oprogramowania do modelowania 3D, implementują ten algorytm do swoich produktów.

Możliwości pomiarów 3D

Pomiary punktów, długości, wysokości, powierzchni i kątów w przestrzeni 3D są jak najbardziej możliwe w modelach uzyskanych w technologii Gaussian Splatting.

Producenci oprogramowania do rekonstrukcji modeli 3D oraz tworzenia chmur punktów 3D, już implementują nową funkcjonalność do swojego portfolio.

Od lewej do prawej: Chmura punktów, Mesh 3D, Gaussian splatting.

Sprawdź jak działa Gaussian Splatting w oprogramowaniu Pix4DCatch - mobilnego rozwiązania do skanowania 3D za pomocą telefonu/tableta.