Poradniki
Poradniki · 13 min czytania · 13 marca 2026

Jak nauczyć AI rozumieć głębię obrazu? Przewodnik po Depth Anything V2

Grafika ilustrująca: Jak nauczyć AI rozumieć głębię obrazu? Przewodnik po Depth Anything V2

Źródło: Link

W skrócie:
  • Monocular depth estimation to technologia, która pozwala AI określić odległość obiektów na podstawie jednego zdjęcia
  • Depth Anything V2 to jeden z najlepszych modeli do szacowania głębi – dostępny za darmo i gotowy do fine-tuningu
  • Fine-tuning pozwala dostosować model do specyficznych zastosowań (roboty, AR, autonomiczne pojazdy)
  • Nie musisz być programistą, żeby zrozumieć podstawy – to wiedza przydatna w wielu branżach

Komputer patrzy na zdjęcie i widzi tylko piksele. Nie ma pojęcia, że drzewo jest bliżej niż góra w tle. Nie rozumie, że samochód jest 5 metrów od kamery, a budynek 50.

Dla AI każdy obraz to płaska mozaika kolorów. Dopóki nie nauczysz go rozumieć głębię.

Monocular depth estimation – czyli szacowanie głębi na podstawie jednego zdjęcia – to jedna z kluczowych umiejętności, które sprawiają, że wizja komputerowa AI staje się użyteczna w rzeczywistym świecie. Roboty, autonomiczne samochody, aplikacje AR, systemy bezpieczeństwa – wszystkie potrzebują tej umiejętności. A Depth Anything V2 to model, który robi to wyjątkowo dobrze.

W tym przewodniku pokażę Ci, jak to działa, dlaczego to ważne i jak możesz dostosować taki model do własnych potrzeb.

Czym jest monocular depth estimation

Zacznijmy od podstaw. Ludzie mają dwa oczy – dzięki temu widzimy głębię naturalnie. To tzw. widzenie stereoskopowe. Dwa obrazy z lekko różnych perspektyw pozwalają mózgowi obliczyć odległość.

Spróbuj zamknąć jedno oko. Nadal potrafisz ocenić, co jest blisko, a co daleko. Skąd to wiesz? Z kontekstu: wielkość obiektów, perspektywa, cienie, tekstury. Twój mózg używa tych wskazówek, żeby zrekonstruować głębię z płaskiego obrazu.

Tak wygląda mapa głębi wygenerowana przez AI – ciepłe kolory to obiekty bliżej kamery, zimne to obiekty dalej

Dokładnie to samo robi monocular depth estimation. Model AI analizuje jedno zdjęcie i na podstawie wyuczonych wzorców tworzy mapę głębi – obraz, który pokazuje, jak daleko jest każdy piksel od kamery.

Istnieją dwa główne podejścia:

  • Relative depth estimation – model mówi "to jest bliżej niż tamto", ale nie podaje dokładnych metrów. Wystarczy do wielu zastosowań (efekty fotograficzne, segmentacja sceny)
  • Metric depth estimation – model podaje konkretne wartości w metrach. Potrzebne tam, gdzie liczy się precyzja (roboty, autonomiczne pojazdy)

Depth Anything V2 potrafi oba warianty. W wersji bazowej działa jako relative depth estimation, ale możesz go dostroić (fine-tuning) do metric depth – jeśli masz odpowiednie dane treningowe.

Depth Anything V2 – co sprawia, że jest wyjątkowy

Na rynku jest kilka modeli do szacowania głębi: MiDaS, DPT, ZoeDepth. Depth Anything V2 wyróżnia się kilkoma rzeczami.

Po pierwsze: został wytrenowany na ogromnym zbiorze danych – ponad 500 milionów obrazów z automatycznie wygenerowanymi mapami głębi. To znacznie więcej niż konkurencja. Efekt? Model radzi sobie z niemal każdym rodzajem sceny – od wnętrz po krajobrazy, od ujęć z drona po zdjęcia podwodne.

Po drugie: jest dostępny w trzech rozmiarach (Small, Base, Large), więc możesz wybrać kompromis między szybkością a dokładnością. Wersja Small działa na telefonie w czasie rzeczywistym. Wersja Large daje jakość porównywalną z drogimi systemami komercyjnymi.

Po trzecie: jest open source i dostępny na Hugging Face. Możesz go pobrać, uruchomić lokalnie, dostosować do swoich potrzeb. Bez subskrypcji, bez limitów API.

Architektura Depth Anything V2 – obraz wchodzi, mapa głębi wychodzi (uproszczony schemat)

Jak model uczy się rozumieć głębię

Depth Anything V2 to sieć neuronowa typu encoder-decoder. Zasada jest prosta:

  1. Encoder analizuje obraz i wyciąga z niego cechy – krawędzie, tekstury, wzorce perspektywy. To kompresja informacji do najbardziej istotnych elementów.
  2. Decoder używa tych cech, żeby zrekonstruować mapę głębi – przypisuje każdemu pikselowi wartość odległości.

Model uczy się na parach: obraz + poprawna mapa głębi. Po milionach takich par zaczyna rozumieć wzorce: "jeśli widzę taką perspektywę, to obiekt jest daleko", "jeśli cień pada w ten sposób, to powierzchnia jest blisko".

Kluczowa różnica między Depth Anything V2 a starszymi modelami? Autorzy użyli techniki zwanej synthetic data augmentation. Wygenerowali dodatkowe dane treningowe sztucznie – używając renderowania 3D i innych modeli AI. To pozwoliło modelowi nauczyć się rozpoznawać głębię w scenach, których nigdy nie widział w prawdziwych danych.

Fine-tuning – jak dostosować model do swoich potrzeb

Bazowy Depth Anything V2 działa dobrze na ogólnych scenach. Co jeśli potrzebujesz czegoś specyficznego? Zdjęcia medyczne. Obrazy z kamery termowizyjnej. Sceny podwodne. Wnętrza fabryk.

Tutaj wchodzi fine-tuning modeli – proces dostrajania gotowego modelu do specyficznego zadania.

Zanim zaczniesz – co będzie Ci potrzebne

Fine-tuning wymaga kilku rzeczy:

  • Dane treningowe – zestaw obrazów z Twojej domeny + odpowiadające im mapy głębi (lub odległości zmierzone fizycznie). Im więcej, tym lepiej – minimum 500-1000 par.
  • Sprzęt – karta graficzna NVIDIA z minimum 8 GB VRAM (dla wersji Small) lub dostęp do chmury (Google Colab Pro, AWS, Paperspace).
  • Podstawowa znajomość Pythona – nie musisz być ekspertem, ale powinieneś umieć uruchomić skrypt i zmienić kilka parametrów.
  • Framework do treningu – PyTorch + biblioteka Hugging Face Transformers. Wszystko open source.

Jeśli nie masz danych treningowych, możesz użyć istniejących datasetów: NYU Depth V2 (sceny wewnętrzne), KITTI (jazda samochodem), Diode (różne sceny). Są dostępne publicznie.

Krok 1: Przygotowanie danych

Twoje dane muszą być w odpowiednim formacie. Zazwyczaj to para plików:

  • Obraz RGB (np. image_001.jpg)
  • Mapa głębi (np. depth_001.png) – obraz w skali szarości, gdzie jasność piksela odpowiada odległości

Organizujesz je w folderach:

dataset/
 train/
 images/
 depth/
 val/
 images/
 depth/

Następnie piszesz prosty skrypt, który wczytuje te pary i normalizuje wartości (żeby były w zakresie 0-1 lub 0-255). Biblioteka Hugging Face ma gotowe klasy do tego – DataLoader, który automatycznie ładuje batch po batchu.

Krok 2: Konfiguracja modelu

Pobierasz bazowy Depth Anything V2 z Hugging Face Hub. To jedna linijka kodu:

from transformers import AutoModel
model = AutoModel.from_pretrained("depth-anything/Depth-Anything-V2-Small")

Następnie "zamrażasz" większość warstw modelu – to znaczy, że tylko ostatnie warstwy będą trenowane. Dlaczego? Bo wczesne warstwy już nauczyły się rozpoznawać podstawowe cechy obrazów (krawędzie, tekstury). Nie musisz ich uczyć od nowa. Oszczędzasz czas i moc obliczeniową.

Ustawiasz hiperparametry:

  • Learning rate – jak szybko model uczy się. Zazwyczaj 1e-5 do 1e-4 dla fine-tuningu.
  • Batch size – ile obrazów naraz. Zależy od pamięci GPU. Dla 8 GB VRAM zazwyczaj 4-8.
  • Liczba epok – ile razy model przejdzie przez cały dataset. Zazwyczaj 10-20.
Tak wygląda proces treningu – obserwujesz, jak błąd maleje i jakość map głębi rośnie

Krok 3: Trening i walidacja

Uruchamiasz trening. Model przechodzi przez dane, porównuje swoje predykcje z prawdziwymi mapami głębi, oblicza błąd (loss function) i dostosowuje wagi sieci, żeby błąd był mniejszy.

Typowa funkcja straty dla depth estimation to kombinacja:

  • L1 loss – różnica między przewidywaną a prawdziwą głębią (wartość bezwzględna)
  • Gradient loss – różnica w krawędziach (żeby mapa głębi była ostra, nie rozmyta)

Co kilka epok sprawdzasz model na zbiorze walidacyjnym – danych, których model nie widział podczas treningu. To pokazuje, czy model się uczy, czy tylko zapamiętuje dane treningowe (overfitting).

Jeśli loss na walidacji przestaje spadać albo zaczyna rosnąć – stop. Model jest gotowy.

Krok 4: Testowanie i wdrożenie

Masz wytrenowany model. Czas sprawdzić, jak działa w praktyce. Testujesz go na nowych obrazach – takich, których nie było ani w treningu, ani w walidacji.

Porównujesz wyniki z bazowym modelem. Czy Twój fine-tuned model jest lepszy na Twoich danych? Jeśli tak – sukces. Jeśli nie – możliwe, że potrzebujesz więcej danych albo dłuższego treningu.

Wdrożenie zależy od zastosowania:

  • Aplikacja mobilna – eksportujesz model do formatu ONNX lub TensorFlow Lite, optymalizujesz (quantization), wgrywasz do apki.
  • Serwer API – uruchamiasz model na GPU w chmurze, tworzysz endpoint REST API, który przyjmuje obraz i zwraca mapę głębi.
  • Edge device (robot, dron) – kompilujesz model do formatu obsługiwanego przez urządzenie (np. TensorRT dla NVIDIA Jetson).

Gdzie to się przydaje w prawdziwym świecie

OK, masz model, który rozumie głębię. Co dalej? Oto kilka zastosowań, które już działają:

Autonomiczne pojazdy

Samochody bez kierowcy potrzebują wiedzieć, jak daleko jest pieszych, innych aut, krawężników. Depth estimation z kamer to uzupełnienie dla lidarów – tańsze i działające w każdych warunkach.

Rozszerzona rzeczywistość (AR)

Aplikacje AR (jak filtry na Instagramie czy meble w IKEA Place) muszą umieścić wirtualny obiekt w prawdziwej przestrzeni. Bez mapy głębi obiekt "unosi się" nierealistycznie. Z mapą głębi – stoi na podłodze, jest zasłonięty przez meble.

Roboty przemysłowe i magazynowe

Robot pakujący paczki musi wiedzieć, jak daleko jest pudełko, żeby je chwycić. Depth estimation z kamery RGB to tańsza alternatywa dla czujników 3D.

Fotografia obliczeniowa

Efekt rozmytego tła (bokeh) w smartfonach? To mapa głębi w akcji. Telefon rozpoznaje, co jest na pierwszym planie, a co w tle, i selektywnie rozmywa.

Bezpieczeństwo i monitoring

Systemy wykrywające upadki osób starszych, liczące ludzi w pomieszczeniach, monitorujące odległości w strefach niebezpiecznych – wszystkie korzystają z depth estimation.

Jeśli pracujesz w którejkolwiek z tych branż (lub pokrewnych), jak działa metric and relative monocular depth estimation to wiedza, która przestaje być ciekawostką, a staje się narzędziem.

Najczęstsze pułapki i jak ich unikać

Fine-tuning brzmi prosto, ale jest kilka miejsc, gdzie łatwo się potknąć:

Za mało danych

50 obrazów to za mało. Model się nie nauczy. Minimum to 500-1000 par obraz-głębia. Jeśli nie masz tyle, użyj data augmentation (obracanie, przycinanie, zmiana jasności) albo skorzystaj z transfer learningu z podobnego datasetu.

Niezbalansowane dane

Jeśli wszystkie Twoje zdjęcia to sceny wewnętrzne z odległościami 1-5 metrów, model nie nauczy się rozpoznawać głębi na otwartej przestrzeni (10-100 metrów). Dbaj o różnorodność.

Overfitting

Model świetnie działa na danych treningowych, ale słabo na nowych obrazach. Rozwiązanie: więcej danych, data augmentation, regularizacja (dropout), wcześniejsze zatrzymanie treningu.

Złe metryki

Nie patrz tylko na loss. Sprawdź metryki specyficzne dla depth estimation: RMSE (root mean square error), AbsRel (absolute relative error), δ1 (procent pikseli z błędem <1.25x). To pokaże, czy model jest użyteczny w praktyce.

Narzędzia, które pomogą Ci zacząć

Nie musisz budować wszystkiego od zera. Ekosystem open source ma gotowe rozwiązania:

  • Hugging Face Transformers – biblioteka z gotowymi modelami i skryptami treningowymi. Depth Anything V2 jest tam dostępny.
  • PyTorch Lightning – framework, który upraszcza kod treningowy. Mniej boilerplate'u, więcej kontroli.
  • Weights & Biases – narzędzie do śledzenia eksperymentów. Widzisz wykresy loss, porównujesz różne konfiguracje, zapisujesz najlepsze modele.
  • Gradio – biblioteka do tworzenia prostych interfejsów webowych. W 10 linijkach kodu robisz demo, gdzie wgrywasz zdjęcie i widzisz mapę głębi.

Jeśli chcesz zacząć bez instalowania czegokolwiek, użyj Google Colab. Darmowy dostęp do GPU (z limitami, ale wystarczy na pierwsze eksperymenty). Otwierasz notebook, wklejasz kod, uruchamiasz. Gotowe.

Dla bardziej zaawansowanych: bazy wektorowe AI mogą pomóc w organizacji i wyszukiwaniu podobnych scen w Twoim datasecie – przydatne, gdy masz tysiące obrazów treningowych.

Perspektywa – co dalej z depth estimation

Depth Anything V2 to stan na 2024 rok. Technologia nie stoi w miejscu. Kilka trendów, które warto obserwować:

Modele multimodalne – łączenie depth estimation z segmentacją obiektów, detekcją, śledzeniem. Jeden model, który rozumie scenę holistycznie, nie tylko głębię.

Real-time na urządzeniach mobilnych – optymalizacja modeli (pruning, quantization, neural architecture search), żeby działały płynnie na telefonach bez połączenia z chmurą.

Self-supervised learning – uczenie modeli bez ręcznie oznaczonych danych. Model uczy się z sekwencji wideo, porównując kolejne klatki i rekonstruując głębię z ruchu kamery.

Integracja z LiDAR i radarami – fuzja danych z różnych czujników. Kamera daje szczegóły, LiDAR daje precyzję metryczną. Razem tworzą kompletny obraz 3D.

Za rok-dwa depth estimation będzie standardem w każdym smartfonie, każdym robocie, każdej kamerze bezpieczeństwa. Nie jako funkcja premium, ale jako podstawa działania.

Jeśli teraz zrozumiesz, jak to działa i jak to dostosować do swoich potrzeb, będziesz miał przewagę. Nie jako użytkownik gotowego rozwiązania, ale jako ktoś, kto potrafi je zmodyfikować pod swój problem.

A jeśli zastanawiasz się, jak wdrożyć AI w małej firmie lub zautomatyzować zadania bez kodowania, depth estimation to tylko jeden z elementów układanki. Wizja komputerowa to szerszy temat – od rozpoznawania produktów w e-commerce po analizę emocji w obsłudze klienta.

FAQ – najczęściej zadawane pytania

Czy mogę używać Depth Anything V2 komercyjnie?

Tak. Model jest dostępny na licencji Apache 2.0, co oznacza, że możesz go używać, modyfikować i wdrażać w produktach komercyjnych – bez opłat licencyjnych. Jedyne wymaganie to zachowanie informacji o licencji w kodzie.

Ile czasu zajmuje fine-tuning modelu?

Zależy od rozmiaru modelu i ilości danych. Dla wersji Small na 1000 obrazach i GPU klasy RTX 3080 – około 2-4 godzin. Dla wersji Large na 10 000 obrazach – może być to 1-2 dni. W chmurze (np. AWS z GPU A100) czas się skraca 3-4 razy.

Czy potrzebuję drogiego sprzętu, żeby eksperymentować?

Nie. Google Colab daje darmowy dostęp do GPU (T4) – wystarczy na pierwsze eksperymenty i fine-tuning małych modeli. Dla poważniejszych projektów możesz użyć Colab Pro (50 zł/miesiąc) z lepszym GPU lub wynająć maszynę w chmurze na godziny (AWS, Paperspace – około 1-2 USD/godzinę).

Czy depth estimation działa na zdjęciach z telefonu?

Tak. Depth Anything V2 został wytrenowany na różnorodnych danych, w tym zdjęciach z telefonów. Działa dobrze na obrazach o różnej jakości i rozdzielczości. Jeśli Twoje zdjęcia są bardzo specyficzne (np. mikroskopia, termowizja), może być potrzebny fine-tuning.

Jaka jest różnica między depth estimation a segmentacją obrazu?

Segmentacja dzieli obraz na regiony (np. "to jest osoba, to jest samochód, to jest niebo"). Depth estimation mówi, jak daleko jest każdy piksel od kamery. To dwa różne zadania, ale często używane razem – np. żeby rozpoznać "osoba 3 metry ode mnie" vs "osoba 20 metrów ode mnie".

Chcesz się tego nauczyć od podstaw?

W kursie "Praktyczna AI" na sukcesai.com omawiamy ten temat szczegółowo – z ćwiczeniami, przykładami i wsparciem. Zamiast zgadywać, naucz się AI krok po kroku.

Sprawdź kurs →

Podsumowanie

Depth Anything V2 to narzędzie, które demokratyzuje dostęp do zaawansowanej wizji komputerowej. Nie musisz być badaczem z Google ani mieć budżetu na drogie czujniki 3D. Wystarczy kamera RGB, trochę danych i chęć eksperymentowania.

Fine-tuning modelu to systematyczny proces, który możesz opanować w kilka tygodni. A umiejętność dostosowywania modeli AI do specyficznych problemów to jedna z najbardziej poszukiwanych kompetencji na rynku.

Depth estimation to fundament dla robotyki, AR, autonomicznych pojazdów, fotografii obliczeniowej. Jeśli pracujesz w którejkolwiek z tych dziedzin – albo planujesz – to wiedza, którą tu zdobyłeś, nie jest abstrakcyjna. To przewaga konkurencyjna.

Jeden krok na start

Otwórz Google Colab. Wklej kod z repozytorium Depth Anything V2 na Hugging Face. Uruchom na swoim zdjęciu. Zobacz mapę głębi. To zajmie 5 minut. I będziesz wiedział, że to nie jest teoria – to działa tu i teraz.

Źródła

Informacje o artykule

Ten temat omawiam szerzej na webinarze

90 minut praktycznej wiedzy o AI. Pokaze Ci krok po kroku, jak zaczac oszczedzac 10 godzin tygodniowo dzieki sztucznej inteligencji.

Zapisz sie na webinar
Udostępnij:
Jan Gajos

Ekspert AI & Founder, AI Evolution

Pasjonat sztucznej inteligencji, który od 18 lat działa z sukcesem biznesowo i szkoleniowo. Wprowadzam AI do swoich firm oraz codziennego życia. Fascynują mnie nowe technologie, gry wideo i składanie klocków Lego – tam też widzę logikę i kreatywność, które AI potrafi wzmacniać. Wierzę, że dobrze użyta sztuczna inteligencja to nie ogłupiające ułatwienie, lecz prawdziwy przełom w sposobie, w jaki myślimy, tworzymy i pracujemy.