Pl:Phototexturing

From OpenStreetMap Wiki
Jump to navigation Jump to search

Strona zawiera opis procesu przygotowywania z fotografii lub serii zdjęć tekstur dla szczegółowych trójwymiarowych modeli obiektów o wyjątkowym znaczeniu (tzw. 3D landmarks). Więcej informacji wkrótce na stronie Pl:OSM-4D.

Autor: Marek Strassenburg-Kleciak

Definicja

Fototekstura to tekstura wykonana ze zdjęcia cyfrowego (fotografia) przeznaczona do oteksturowania CAŁEJ fasady obiektu lub znaczącej jego części. Do pokrycia jednego obiektu teksturami trzeba zazwyczaj kilku a czasem nawet kilkunastu unikalnych fototekstur. Wyjątkiem są najczęściej dachy pokryte typowa dachówka oraz ściany bez okien które pokrywane są standardową tekstura z biblioteki tekstur.

Uwaga: te tak zwane seamless textures również są tworzone z fotografii lecz celem jest tutaj stworzenie malej, powtarzalnej tekstury, która pokrywa się całą fasadę lub od razu cały budynek. Tego typu tekstury stosowane są by pokazać z jakiego materiału zbudowany jest dany obiekt; mur, budynek, droga.


Tworzenie fototekstury

dobra fototekstura to dobry materiał wyjściowy a wiec aparat z dobrym obiektywem, dobra pogoda i czas na staranne wykonanie zdjęć.

Wybór miejsca na zrobienie zdjęcia

Najlepiej jest oczywiście wybrać takie miejsce na sfotografowanie fasady, by uzyskać cala teksturę z jednej fotografii.


MarekHowToFototexture4.jpg Fotografia całej fasady

Jeśli to niemożliwe, a często tak jest...

MarekHowToFototexture5.jpg Zbyt dużo elementów zasłaniających fasadę lub nie można się oddalić by zrobić zdjęcie całej fasady

... musimy wykonać serie zdjęć fasady a następnie połączyć te zdjęcia w jedna całość:

MarekHowToFototexture1.jpg Zdjęcie A

MarekHowToFototexture2.jpg Zdjęcie B

MarekHowToFototexture3.jpg Zdjęcie C

Jeśli fotografuje się bardzo duży, złożony obiekt, często zdarza się, ze później w domu powstają kłopoty z przyporządkowaniem poszczególnych zdjęć do odpowiednich miejsc na fasadzie. Dlatego dobrze jest zrobić zdjęcie z większej odległości na który widać jest cala fasadę. Warto tez mieć ze sobą notes i dokonywać notatek opisujących poszczególne elementy. Teoretycznie pomocą jest aparat fotograficzny z GPS.


Koniecznie należy wykonywać zdjęcia z miejsc P na których widać dwie fasady budynku. Pomaga to potem w skalowaniu tekstur i ich łączeniu oraz dopasowywaniu do siebie ich wartości kolorystycznych.


MarekHowToFototextureMakePreviewPicts.jpg Miejsca wykonania fotografii kontrolnych (P)

"Prosta fotogrametria architektoniczna"

Jeśli zrobimy zdjęcie prostopadle do fasady, to możemy z niego uzyskać nie tylko teksturę fasady, lecz także w miarę dokładnie wymiary fotografowanego obiektu. Jeśli znamyD oraz (opis patrz dalej w tekście), to możemy policzyć wymiary obiektów na fasadzie.

Ortogonalność

Frontalnie zrobione zdjęcie ułatwia wykonanie tekstury: Ortofotografia nie zawiera skrótu perspektywicznego w związku z czym nie trzeba odkształcać wykonanego zdjęcia. Z drugiej strony, jeśli będziemy fotografować pod katem, to często uzyskane zdjęcia nie będą się nadawały na tekstury: Okna będą widziane pod zbyt dużym katem, balkony czy kolumny przed fasada będą asymetryczne.


Jeśli do robienia zdjęcia fasady nie użyliśmy szerokokątnego obiektywu, tworzenie tekstury jest łatwiejsze. Odpada krok z korekcja zniekształcenia obiektywu.

O - Soczewka aparatu fotograficznego H - Środek fotografii


MarekHowGetOrthogonalFototexture.jpg AB/D=A´B´/D´

Widok z boku

ZDJĘCIE ORTOGONALNE:

Celujemy aparatem w ten sposób by środek wykonanego zdjęcia był prostopadły do fasady. Uwaga: w praktyce oznacza to ze prawie polowa zdjęcia to chodnik czy ulica.

Na płaskim terenie odstęp miedzy aparatem fotograficznym (A) a płaszczyzna terenu (S) jest taki sam jak miedzy

centrum wizjera aparatu (H) a linia przecięcia się płaszczyzny terenu z płaszczyzna fasady ()

MarekHowGetOrthogonalFototexture1.jpg

π = Płaszczyzna fasady

Umieszczając na fasadzie np. łatę niwelacyjna, można w miarę dokładnie (około 3 do 8% błędu w zależności od uzyskanej liczby pikseli na metr) policzyć wymiary fasady. Podana dokładność to wynik samemu wykonanych testów.

Proste liczenie wysokości budynku ze zdjęcia

Prosta metoda liczenia wysokości budynku bazuje na zrobieniu frontalnej fotografii budynku na którym umieściliśmy marker.

Na początek

  • musimy znać wysokość miedzy naszymi oczami a terenem He (Rysujemy na ścianie kreskę na wysokości oczu, mierzymy odstęp do podłogi. Pamiętaj by zrobić to w butach w których wyjdziesz na dwór.)
  • przygotowujemy marker do przyklejania na fasady budynków (np. jasna taśma klejąca, kartka w reflektującym kolorze).


Krok 1.: Mocujemy nasz marker na wysokości naszego wzroku na fasadzie He

(Oczywiście jeśli na fasadzie jest jakiś bardzo charakterystyczny element na wysokości Twojego wzroku, to nie potrzebujesz markera. Ważne jest wtedy dobrze zapamiętać jaki to był punkt. Często po powrocie do domu znika pewność który punkt to był...)

MarekHeightAcquisition1.jpg


Krok 2.: Frontalne zdjęcie całej fasady: MarekHeightAcquisition2.jpg

"Frontalnie" oznacza ze nasz marker znajduje się w środku sfotografowanego obiektu.

Mając taka fotografie możemy sobie w domu policzyć wysokość sfotografowanej fasady:

MarekHeightAcquisition3.jpg

dokładność obliczonej wysokości zależy od rozdzielczości naszego aparatu. Dla typowych sytuacji dobry jest aparat mający 7 megapikseli lub więcej.


Znając wysokość naszych oczu nad powierzchnia terenu He możemy policzyć wysokość fasady H, ponieważ na zdjęciu możemy zmierzyć wysokości

He´, oraz .

H = He*(H´/He´)


Uwaga:  Nie dziw się, fotografując w ten sposób prawie połowa zdjęcia jakie uzyskasz to chodnik i ulica. 
Fotografując fasady ludzie zazwyczaj chcą mieć całość fasady na jednym zdjęciu i bezwiedne kierują obiektyw nieco w górę.

Bardzo często zdarza się niestety ze nie da się w ten sposób sfotografować całej fasady ponieważ ulice są zbyt wąskie a budynki zbyt wysokie. W tym przypadku musisz fotografować równolegle do osi ulicy umieszczając twój znacznik tak, by był widoczny, gdy fotografujesz równolegle do fasady:


MarekHeightAcquisition4.jpg

M, w tym przypadku środek zdjęcia powinien się znajdować na horyzoncie. Jeśli nie widzisz horyzontu kieruj aparat w ten sposób, by głowy ludzi których widzisz w większej odległości znajdowały się w połowie wysokości obrazu.

Uwaga: Technika funkcjonuje tylko w przypadku płaskiego terenu. By uzyskać ten efekt np w górach musisz na oko wyczuwać poziom lub mieć aparat fotograficzny pokazujący kat nachylenia w stosunku do terenu.


Szacunek błędu: Testy wykonane na kilku rożnych budynkach o wysokości do 4 pieter aparatem o rozdzielczości 10 megapikseli pokazały ze w zależności od rozdzielczości aparatu i wysokości budynku daje się uzyskać orientacyjna wysokość z błędem rzędu 3 do 8% rzeczywistej wysokości (dla porównania mierzonej miernikiem laserowym).

Światło, czas, pogoda na robienie zdjęć

Dopasowywanie rożnych tekstur tego samego obiektu robionych w innym czasie i przy innej pogodzie może być trudne.

Najlepiej jest sfotografować cały budynek o tej samej porze dnia przy stabilnej pogodzie. Jeśli to możliwe od razu fotografować sąsiadujące budynki. Poniższe zdjęcia tej samej fasady zostały zrobione o rożnych porach dnia:

MarekDSC 0281.JPG MarekDSC 0280.JPG MarekDSC 0292.JPG
Wcześnie rano (zbyt dużo żółtego koloru) Słoneczne południe (za silne kontrasty) Późne przedpołudnie, lekkie zachmurzenie.


Najlepsze zdjęcia niekoniecznie wychodzą przy silnym, południowym słońcu i bezchmurnym niebie bo są wtedy silne kontrasty i niektórych szczegółów nie widać. Idealny jest co prawda słoneczny dzień ale z lekkim zachmurzeniem.


Wyznaczenie punktu bieli

Sfotografowanie białej kartki papieru na fasadzie pozwala na ustalenie wartości kolorystycznej zdjęcia. Co prawda jest to w wielu aparatach fotograficznych robione bardzo dobrze w sposób automatyczny, jednak w przypadku robienia wielu zdjęć tego samego obiektu z rożnych stron technika ta pozwala na korekcje niuansów kolorystycznych które liczone algorytmicznie nie dają dobrych wyników:

MarekWhitepointStart.jpg Fotografia


MarekWhitepointResult.jpg Wynik po manualnym wyznaczeniu koloru białego na sfotografowanej kartce


Robiąc zdjęcia przy wietrze i zachmurzeniu trzeba uważać na oświetlenie: Ta sama fasada fotografowana w słońcu i w cieniu może mieć nieco inne kolory widoczne jednak na zdjęciu!

Na robienie zdjęć dobrze jest wybrać nie tylko czas w którym fasada jest dobrze oświetlona ale tez najlepiej dzień w którym nie ma wielu ludzi czy aut przed budynkiem. Duża ciężarówka przed budynkiem potrafi całkowicie zepsuć zbieranie zdjęć na teksturę.

Oczyszczanie i łączenie zdjęć

Oszczędzisz wiele czasu przy obróbce zdjęć jeśli zainwestujesz go nieco więcej w robienie fotografii - wybierając na zrobienie zdjęcia miejsce z którego istotne elementy nie są zasłonięte przez drzewa, latarnie, kable czy znaki drogowe. Dobrze tez jest cierpliwie poczekać na chwile, kiedy przed budynkiem nie będzie ludzi. Uciążliwe w obróbce jest także usuwanie cieni z fasady. Jeśli chcesz zrobić tekstury szczególnie wartościowych budynków dobrze jest wybrać na robienie zdjęcia taki czas, gdy nie będzie zbyt dużych, długich cieni na fasadzie.Zbyt krótkie cienie także są niepożądane, bo fasada nie wygląda plastycznie..

MarekHowDeepShouldBeShadow.jpg

Jeśli chcemy stworzyć teksturę używając jako podkładu np. zdjęcia jednego dobrze widocznego elementu (przykład: Pałac z rzędem kilkunastu identycznych okien) to powinniśmy uważać by to zdjęcie nie zawierało :

A. Zniszczonych, silnie zabrudzone elementów

B. Zasłonek, kwiatów, roślinności, ludzi w oknie itp

C. Tablic, reklam

D. Silnych, charakterystycznych odbić w szybach

MarekWhichElementsAreBadForTexturing.jpg

Ważne: Jeśli budynek zawiera wiele okien, wszystkie powinny miec bardzo zblizony do siebie kolor szyb. 
Oczywiście wyjątkiem są witraże lub kolorowe szyby.

Wybór obiektywu

Co prawda obiektyw szerokokątny pozwoli nam na objecie za pomocą jednego zdjęcia całej fasady, często nie nadają się one jednak do robienia tekstur z powodu zbyt silnej dystorsji.

Co prawda istnieją techniki rektyfikacji informacji ze zdjęcia zrobionego szerokim katem [1] jednak są one pracochłonne i bywa, ze nie dają zadowalającego rezultatu np w przypadku wysokich budynków.

Dlatego tez fotografie powierzchni fasad szczególnie wartościowych obiektów na cele tworzenia fototekstur dobrze jest wykonywać za pomocą teleobiektywu (80mm i więcej, od 300mm zalecany statyw). Pojedyncze zdjęcia możemy łączyć w całość manualnie lub za pomocą oprogramowania (uzupełnić linki!).


Usuwanie zakłóceń

Często fasada jest zasłonięta przez drzewa, szyldy, latarnie, stragany auta itd.: Czasem nie ma innego wyjścia jak ręcznie je retuszować ze zdjęcia bo są zbyt blisko fasady. Możliwe postępowanie w tym przypadku:

  • Kopiujemy inny, identyczny obszar zdjęcia w miejsce gdzie znajduje się zakłócenie.
  • Kopiujemy fragment innego zdjęcia w to miejsce. W tym celu można np. zrobić zdjęcie z nieco innego kata widzenia:


Plan sytuacyjny: Budynek z drzewem przed fasada

MarekHowToDeleteTrees1.JPG MarekHowToDeleteTrees2.JPG
Część fasady fotografowanej z miejsca A jest zasłonięta przez drzewo Dwa zdjęcia z miejsc A1 oraz A2 uzupełniają brakującą informacje


Dopasowanie kolorystyczne sąsiadujących płaszczyzn fasady budynku

Sąsiadujące ze sobą płaszczyzny fasady budynku muszą mieć dopasowany do siebie odcień tekstur jeśli są z tego samego materiału.

Przykładowo: fasada z cegły nie powinna mieć nagle za rogiem innego koloru, chyba ze rzeczywiście tak jest bo np. ściana jest pomalowana lub jest z innego materiału.

Bez starannego dopasowania do siebie kolorów od razu w modelu widać, ze "coś jest nie tak". Zazwyczaj nie wie się nawet dlaczego, ale model nie wygląda "ładnie". Dopasowywanie do siebie kolorów tekstur jest trudne i wymaga sporej wrażliwości kolorystycznej, dlatego pomocnym trickiem jest fotografowanie fasad na których umieszcza się małą białą kartkę papieru. Używa się jej później do manualnego ustawienia punktu bieli na zdjęciu co bardzo ułatwia dopasowanie do siebie dwóch sąsiadujących fototekstur.

Robienie zdjęć. Wskazówki praktyczne

  • Siatki, ploty i inne obiekty z obszarami, które mają być przezroczyste - Staraj się robić zdjęcie z jasnym niebem jako tło. To ułatwia obróbkę zdjęcia.
  • Większość mokrych obiektów daje refleksje na zdjęciu przez co tekstura jest gorsza
  • Jeśli możliwe, staraj się unikać obiektywu szerokokątnego (najlepiej ogniskowa powyżej 55)
  • Przy teleobiektywie o ogniskowej powyżej 300 zdjęcia często wychodzą zbyt szare. Jeśli masz taki obiektyw i chcesz go używać, staraj się używać statyw.
  • Nie fotografuj zbyt małego obszaru: Często stworzenie powtarzalnej tekstury może być niemożliwe.
  • Jeśli możliwe nie fotografuj powierzchni, na której widać drzewa, ludzi lub zbyt charakterystyczne detale. Namęczysz się potem z usuwaniem ich.
  • Jeśli fotografujesz okna lub błyszczące, odbijające światło powierzchnie pamiętaj ze ich usuwanie może być bardzo pracochłonne. Czasem przesuniecie się o 50 cm powoduje ze odbicie światła lub detali w szybie jest dużo mniejsze. Najbardziej meczące i pracochłonne jest usuwanie odbić w szybach okien składających się z wielu małych powierzchni.
  • Nie rób zdjęć tekstur z boku: Okna czy drzwi są zazwyczaj cofnięte o 12-20cm w stosunku do płaszczyzny fasady wiec fotografując z boku nie będziesz mieć na zdjęciu fragmentu stolarki okiennej. Stworzona tekstura będzie wyglądać sztucznie zwłaszcza jeśli na jednej płaszczyźnie znajda się zdjęcia robione pod rożnym katem lub z rożnych stron... Zasadniczo można fotografować drzwi czy okna pod lekkim katem jednak doświadczenie pokazuje ze nie widać tego jeśli odchylenie od prostopadłości jest rzędu max 15° . Przy 30° tekstura wygląda już zazwyczaj źle.
  • Przy szybkim spojrzeniu na powtarzalna teksturę oko ludzkie przestajemy liczyć elementy jeśli ich liczba poziomo lub pionowo przekracza 7. Staraj się unikać robienia tekstur rozmiaru 2x2 elementy: 7x7 lub więcej jest dużo lepsze.

Bezszwowe tektury ("Seamless")

Seamless oznacza, ze nie widzimy gdzie kończy się jedna tekstura a zaczyna druga. By ten efekt uzyskać sąsiadujące ze sobą obszary muszą mieć te same wartości kolorystyczne. Typowy dla początkujących błąd to na przykład lekkie przesuniecie wysokości tekstur w stosunku do siebie przez co np gzymsy budynku są na rożnej wysokości.

Usuwanie detali - ochrona informacji osobowych

OpenStreetMap ma szanse uniknięcia błędów jakie zrobił Google np. w Google Street View:

Wszystkie informacje mogące godzić w ustawę o ochronie danych osobowych lub naruszające dobra osobiste muszą być usuwane ze zdjęć!

Przykłady:

  • Numery domów, adresy, nazwiska, szyldy.
  • Ludzie
  • Jednoznacznie dające się zidentyfikować elementy pozwalające na identyfikacje ludzi lub ich sytuacje (Wózek inwalidzki przy wejściu, wygląd pomieszczenia za szyba, przedmioty na tarasie, wózki dziecięce, dekoracje budynku itd.)

W szczególności nie wolno bez zezwolenia właściciela i wytłumaczenia mu celu dla którego wykonujemy zdjęcia robić fotografii z wysokości wyższej niż wzrost człowieka w celu np. uzyskania fotografii sponad poziomu wysokiego żywopłotu. W tych przypadkach tekstura będzie zawierać poniżej tego poziomu żywopłot lub standardową, powtarzalną teksturę bez żadnej dodatkowej informacji.


Uwaga: Generalnie wolno wykonywać zdjęcia bez zezwolenia jedynie z dróg i placów będących przestrzenią publiczna.

Specyfikacja

Rozdzielczość

Rozdzielczość fotografii jest zależna od wielkości fotografowanego obiektu przy czym w zależności od tego ile ciekawych i istotnych detali jest na danej powierzchni rozdzielczość może być nieco inna w ramach jednego obiektu.

Rozdzielczość tekstur dla obszarów w parterze nie powinna być mniejsza niż 5cm na piksel.

W przypadku obiektów o wybitnym znaczeniu historycznym (np. Katedra na Wawelu) zalecana rozdzielczość to 1cm na piksel.

Oczywiście możliwe są zdjęcia fragmentów obiektu o dużo większym stopniu szczegółowości jak np. tablice nagrobne, fragmenty fresków, rzeźby itd.

Format

Wysoka jakość mają zdjęcia w formacie Tiff. Ze względu na rozpowszechnienie i popularność można używać formatów *.png lub Jpg bez kompresji.

Głębia koloru

Do celów OSM wystarczająca jest standardowa głębia koloru 24 bit. Chociaż tekstury odzwierciedlające charakter elewacji mogą być produkowane z o wiele mniejszą głębia koloru, to jednak trzeba pamiętać, że 24 bity to obecny standard wiec większość użytkowników będzie tworzyć tekstury tej właśnie rozdzielczości.

Wynik będzie wyglądał źle jeśli:

  • Brak będzie tekstur terenu
  • Sąsiadujące tektury będą miały inne właściwości (głębia koloru / rozdzielczość)

Jeśli punktem wyjścia do teksturowania ma być wiec wygląd przyciągających oko ważnych budynków to w konsekwencji trzeba używać wyższej jakości tekstur także dla innych obiektów.

Przykład

Poniższa tekstura została stworzona za pomocą narzędzia stempel w programie Adobe Photoshop. Żadne inne zdjęcia zostały wykorzystane w celu stworzenia tekstury.

MarekDSC 0292.JPG MarekTextureDSC0292cleanedExample.jpg
Oryginalne zdjęcie Stworzona tekstura

Otwarte kwestie

  • wersje kolorystyczne tekstury