Skąd wiemy, co jest zdjęciem 360? – Metadane
Facebook rozpoznaje i przetwarza zdjęcia 360, szukając metadanych specyficznych dla aparatu, które można znaleźć na zdjęciach zrobionych aparatami 360-ready. Informacje te są osadzone w znacznikach metadanych zdjęcia Exif (format pliku obrazu wymiennego), a jeśli udostępniasz zdjęcia 360 prosto z aparatu, Facebook powinien automatycznie przetworzyć i zaprezentować je jako interaktywne zdjęcia 360.
Jednakże, jeśli metadane zostały usunięte ze zdjęć lub w ogóle nie istniały, Facebook może nie być w stanie stwierdzić, że Twoje zdjęcie jest zdjęciem 360. Czasami metadane są usuwane podczas edycji obrazu, ale inne przepływy pracy mogą również usuwać metadane ze zdjęć. Oto kilka typowych powodów, dla których może brakować metadanych:
- Wysłane e-mailem, osadzone zdjęcia (vs. wysłane e-mailem jako załączniki do pliku)
- Wyeksportowane zdjęcia z niektórych edytorów zdjęć
- Wysłane/pobrane zdjęcia z serwisów hostingowych lub usług udostępniania
- Panoramy utworzone ręcznie (np, sztuka, ujęcia z gry, zeskanowane zdjęcia historyczne)
W tych przypadkach do zdjęć należy wprowadzić odpowiednie metadane, zanim będzie można je udostępnić jako zdjęcia 360.
Są dwa zestawy znaczników metadanych, których Facebook szuka, aby określić, czy zdjęcie jest w 360:
- Photo Sphere XMP Metadata
Większość aparatów 360 i narzędzi do tworzenia panoram zawiera metadane Photo Sphere w zapisanych zdjęciach.- Interpretujemy następujące parametry, oprócz naszych własnych parametrów udokumentowanych tutaj: https://developers.facebook.com/docs/graph-api/reference/photo/ – patrz spherical_metadata (tap arrow to expand JSON params and see the documentation on the sub-parameters like
ProjectionType
). Zauważ, że nie jest to dokładnie to samo, co pełna specyfikacja połączona powyżej.
- Interpretujemy następujące parametry, oprócz naszych własnych parametrów udokumentowanych tutaj: https://developers.facebook.com/docs/graph-api/reference/photo/ – patrz spherical_metadata (tap arrow to expand JSON params and see the documentation on the sub-parameters like
- Dla panoram: Camera Make and Model – używamy tego tylko do interpretacji panoram przechwyconych z telefonów komórkowych jako zdjęć 360, i obsługujemy wiele, ale nie wszystkie popularne urządzenia.
Wstrzykiwanie metadanych
Aby wstrzyknąć metadane, będziesz musiał edytować znaczniki XMP w danych Exif. Oto opcje, jak to zrobić:
- Korzystanie z internetowego edytora Exif – Doskonałym i darmowym narzędziem internetowym do przeglądania i edytowania danych Exif jest eXif.er, który jest używany w powyższych przykładach. eXif.er pozwala na przesyłanie, przeglądanie, edycję i zapisywanie metadanych oraz pobieranie zmodyfikowanego obrazu.
- Korzystanie z samodzielnego edytora Exif – Istnieje wiele samodzielnych edytorów Exif dla systemów Windows i OS X. Użytkownicy systemu Windows mogą skorzystać z programu ExifToolGUI, który jest darmowy i w pełni funkcjonalny. Użytkownicy komputerów Mac mogą wyszukać hasło „exif editor” w Mac App Store, gdzie można kupić kilka opcji.
- Korzystanie z exiftool (techniczne) – Najpotężniejszym i najbardziej elastycznym edytorem Exif, zwłaszcza do wsadowego przetwarzania obrazów, jest narzędzie wiersza poleceń, exiftool.
Co musisz wstrzyknąć, aby poprawnie wykryć zdjęcie 360?
Pełne, sferyczne zdjęcia 360:
Używają one projekcji „equirectangular”. Zdjęcia 360 muszą spełniać następujące wymagania, aby Facebook mógł je poprawnie przetwarzać:
- Zdjęcie musi mieć współczynnik proporcji 2:1 aspect ratio
- Tag Exif XMP, „ProjectionType=equirectangular”
- Są poniżej maksymalnej rozdzielczości i rozmiaru pliku (wymienione poniżej)
Większość edytorów Exif skierowanych do fotografów pozwala na edycję tagu Exif XMP „ProjectionType”, ale jeśli jesteś techniczny, możesz użyć popularnego narzędzia wiersza poleceń, exiftool.
- exiftool -ProjectionType="equirectangular" photo.jpg
# 'photo.jpg' is the photo you want to tag
Gdy skończysz edytować metadane, uzyskaj dostęp do Facebooka w przeglądarce internetowej, aby przesłać zdjęcie.
Panoramy (Zaawansowane):
Gdy przesyłasz zdjęcie bezpośrednio z urządzenia mobilnego, Facebook najpierw szuka metadanych sferycznych. Jeśli tego nie ma, bierzemy pod uwagę „markę” i „model” urządzenia, które zrobiło zdjęcie, aby zrozumieć, jak poprawnie zinterpretować panoramę (to znaczy, musimy wiedzieć, jak daleko dana ilość pikseli zawija się wokół naszego cylindra rzutni). Jeśli z jakiegoś powodu dokonałeś edycji lub w inny sposób utraciłeś metadane, masz następujące możliwości:
- Edycja znaczników Exif make and model
- exiftool -Make="camera_make" -Model="camera_model" photo.jpg
# replace 'camera_make' and 'camera_model' with the appropriate values
# 'photo.jpg' is the photo you want to tag
- Możesz skopiować/wkleić swoją panoramę na wierzch panoramy, która ma poprawne metadane, i „Zapisz jako” nowy plik
- Użyj jednego z poniższych szablonów Photoshopa, który z grubsza odpowiada rozmiarowi panoramy
Szablony Photoshopa: Tworzenie własnej grafiki 360 bez wstrzykiwania metadanych
Jeśli chcesz utworzyć obraz, który ma prawidłowe metadane, aby mógł być interpretowany jako 360, oferujemy następujące szablony, aby pomóc Ci zacząć.
Szablony Photoshopa:
https://www.dropbox.com/sh/70mwlh8k0y4rg0g/AACVNV7hvRZtjEKj4DoJMhCba?dl=0
Można ich używać do tworzenia zdjęć 360 i panoram bez wstrzykiwania metadanych, ponieważ są one wbudowane w szablon. Szablony panoramy cylindrycznej są opisane przez poziome pole widzenia (FOV) i pionowe pole widzenia (FOV), a dostępny jest również szablon w pełni sferyczny (equirectangular).
Wybierz szablon, który najbardziej pasuje do zamierzonego pola widzenia, dostosuj zdjęcie do wymiarów obrazu szablonu i użyj opcji Photoshopa „Zapisz jako…”, aby zapisać JPG. Zobacz przykład wideo z użyciem jednego z szablonów panoramy.
Edytowanie zdjęć 360
Możesz otwierać i edytować zdjęcia 360 w popularnych edytorach.
Pro tip: Funkcja „Zapisz jako” programu Adobe Photoshop zachowuje metadane aparatu, a funkcje „Eksportuj jako” i „Zapisz dla sieci” nie.
Sposobem na ominięcie całej tej dyskusji o metadanych jest po prostu użycie funkcji „Zapisz jako” w Photoshopie.
Rozdzielczość obrazu, rozmiar i zalecenia dotyczące formatu:
Jeśli tworzysz własne zdjęcie 360, używasz specjalnego sprzętu lub kamer, lub przesyłasz z oprogramowania innych firm, zastosowanie mają następujące wytyczne dotyczące rozdzielczości, formatu i rozmiaru.
Rodzaje projekcji: Akceptujemy projekcję równokątną, kubestripową lub cylindryczną (tylko dla panoram) przykład naszego formatu kubestripowego: https://www.dropbox.com/s/qyidmid631t7d0y/cubestrip%281%29.jpg?dl=0
Rozdzielczość pliku i ograniczenia rozmiaru:
Zdjęcia powinny mieć mniej niż 30 000 pikseli w dowolnym wymiarze i mniej niż 135 000 000 pikseli w całkowitym rozmiarze. Rozmiar pliku może wynosić nawet 45 MB (JPEG) lub 60 MB (PNG). Zalecamy używanie JPEG dla zdjęć 360 i utrzymywanie rozmiaru pliku mniejszego niż 20-30 MB.
Uwaga: Te limity są wartościami maksymalnymi i mają zastosowanie do przesyłania przez stronę internetową i bezpośredniego przesyłania przez Graph API.
Przesyłanie przez telefon komórkowy ma dodatkowe ograniczenia stosowane podczas przesyłania. Jeśli chcesz być bliżej maksymalnej wartości, zalecamy przesyłanie z sieci.
Dzięki względom przepustowości maksymalna rozdzielczość dla telefonów komórkowych może być bliższa 6k-8k dla długich krawędzi; dlatego możesz wybrać większy obraz na telefonie komórkowym, ale może on zostać zmniejszony do tego maksymalnego rozmiaru podczas przesyłania do Facebooka.
Wstrzykiwanie metadanych dla panoram (Zaawansowane)
Jeśli wolisz użyć exiftool do wstrzyknięcia metadanych panoramy cylindrycznej, możesz użyć następujących poleceń:
- # 120º h_fov, 86º v_fov
- exiftool -FullPanoWidthPixels=18000 -FullPanoHeightPixels=9000 -CroppedAreaLeftPixels=6000 -CroppedAreaTopPixels=2350 -CroppedAreaImageWidthPixels=6000 -CroppedAreaImageHeightPixels=4300 -ProjectionType=cylindrical file.jpg
- # 150º h_fov, 86º v_fov
- exiftool -FullPanoWidthPixels=14400 -FullPanoHeightPixels=7200 -CroppedAreaLeftPixels=4200 -CroppedAreaTopPixels=1880 -CroppedAreaImageWidthPixels=6000 -CroppedAreaImageHeightPixels=3440 -ProjectionType=cylindrical file.jpg
- # 180º h_fov, 86º v_fov
- exiftool -FullPanoWidthPixels=12000 -FullPanoHeightPixels=6000 -CroppedAreaLeftPixels=3000 -CroppedAreaTopPixels=1567 -CroppedAreaImageWidthPixels=6000 -CroppedAreaImageHeightPixels=2867 -ProjectionType=cylindrical file.jpg
- # 240º h_fov, 86º v_fov
- exiftool -FullPanoWidthPixels=9000 -FullPanoHeightPixels=4500 -CroppedAreaLeftPixels=1500 -CroppedAreaTopPixels=1175 -CroppedAreaImageWidthPixels=6000 -CroppedAreaImageHeightPixels=2150 -ProjectionType=cylindrical file.jpg
- # 300º h_fov, 86º v_fov
- exiftool -FullPanoWidthPixels=7200 -FullPanoHeightPixels=3600 -CroppedAreaLeftPixels=600 -CroppedAreaTopPixels=940 -CroppedAreaImageWidthPixels=6000 -CroppedAreaImageHeightPixels=1720 -ProjectionType=cylindrical file.jpg
- # 360º h_fov, 86º v_fov
- exiftool -FullPanoWidthPixels=6000 -FullPanoHeightPixels=3000 -CroppedAreaLeftPixels=0 -CroppedAreaTopPixels=783 -CroppedAreaImageWidthPixels=6000 -CroppedAreaImageHeightPixels=1433 -ProjectionType=cylindrical file.jpg
- # 360º h_fov, 65º v_fov
- exiftool -FullPanoWidthPixels=6000 -FullPanoHeightPixels=3000 -CroppedAreaLeftPixels=0 -CroppedAreaTopPixels=958 -CroppedAreaImageWidthPixels=6000 -CroppedAreaImageHeightPixels=1083 -ProjectionType=cylindrical file.jpg
Panoramy z telefonów komórkowych:
Rozpoznajemy panoramy z popularnych smartfonów, w tym następujących:
- Apple iPhone 4S i nowsze
- Apple iPad Pro i Mini 4 i nowsze
- Najnowsze telefony Samsung
- Wiele najnowszych telefonów LG
Rozwiązywanie problemów:
Wykonałem własne zdjęcie 360 i postępowałem zgodnie z waszymi instrukcjami. Dlaczego moje zdjęcie 360 wygląda tak dziwnie?
Facebook honoruje niektóre znaczniki metadanych, które robią takie rzeczy, jak określenie pola widzenia.
Możesz zobaczyć pełną listę tego, czego szukamy tutaj: https://developers.facebook.com/docs/graph-api/reference/photo/ – zobacz spherical_metadata (dotknij strzałki, aby rozwinąć JSON params i zobaczyć dokumentację na temat podparametrów, takich jak ProjectionType
)
Upewnij się, że FOV jest zgodne z tym, co chcesz. Użyj jednego z edytorów metadanych omówionych powyżej, aby sprawdzić te wartości.
Edycja rzutów prostokątnych
Używanie standardowego edytora obrazów do edycji rzutów prostokątnych może być niezwykle trudne. Edytujesz piksele w nieliniowej przestrzeni, która zawiera wiele zniekształceń. Oto kilka wskazówek dotyczących udanej edycji.
Przydatne oprogramowanie i wtyczki
Dwa niezwykle przydatne dodatki do programu Adobe Photoshop do edycji zdjęć 360 to Flexify 2 for Panoramas (wtyczka do Photoshopa) i Domemaster Photoshop Actions Pack.
Edytowanie góry, dołu lub boków rzutu równokątnego (jak usuwanie statywu)
Edytowanie rzutów równokątnych w pobliżu dowolnej granicy obrazu jest trudne. Góra i dół prostokątnego obrazu są bardzo zniekształcone, a obraz faktycznie zawija się w poprzek prawej i lewej granicy.
Użyjmy jednego z najczęstszych pragnień edycji jako przykładu: usuwanie statywu. Na samym dole tego zdjęcia 360 zrobionego na Facebook’s Hacker Square znajduje się statyw:
Gdyby to był normalny obraz, łatwo byłoby usunąć statyw. Ale oto jak wygląda to zdjęcie po otwarciu go za pomocą tradycyjnego edytora obrazów:
Statyw jest wypaczony na całym dole obrazu!
Jednym z rozwiązań jest obrócenie zdjęcia 360 tak, aby statyw nie znajdował się już na dole. Użycie narzędzia takiego jak Flexify 2 czyni to łatwym. Obrót w kierunku równoleżnikowym o -90 stopni umieszcza statyw w pionowym środku obrazu. W środku obrazu, łatwo jest usunąć statyw używając tradycyjnych narzędzi, takich jak Healing Brush.
Gdy już jesteś zadowolony ze swoich zmian, załaduj Flexify 2 ponownie i wykonaj obrót równoległy o +90 stopni, aby przywrócić normalną orientację obrazu. Wyeksportuj jako jpg, wstrzyknij odpowiednie metadane i jesteś gotowy do udostępnienia na Facebooku.
Jeśli chcesz edytować w poprzek prawego / lewego szwu, możesz obrócić obraz wzdłużnie, aby uzyskać dostęp do tego szwu, ponownie, w środku nowo przekształconego obrazu. Oto obrót podłużny o 180 stopni tego samego obrazu:
Zauważ, że orientacja obrazu została obrócona dokładnie o połowę; budynek z wyświetlaczem Facebooka jest teraz „za” nami. To, nawiasem mówiąc, jest również sposób na wymuszenie początkowej orientacji oglądania. Domyślnie Facebook ustawia domyślny widok jako środek rzutu równoramiennego. Jeśli chcesz, aby pierwszy widok zdjęcia 360 był czymś konkretnym, przekształć zdjęcie tak, aby pożądany widok znajdował się dokładnie pośrodku.
Wbudowane narzędzie przesunięcia w Photoshopie („Filtr→Inne→Offset”) może być również użyte do obracania obrazów wzdłuż (przesuwanie w lewo i w prawo, zawijanie). W teorii, przesunięcie obrazu przy użyciu „Zawiń dookoła” jest działaniem bezstratnym, więc możesz to robić tak często, jak chcesz podczas edycji obrazu.
Zmiana projekcji do edycji
Inne typy projekcji, takie jak kubemapy, mogą być bardziej odpowiednie do konwencjonalnej edycji obrazu. Istnieją różne narzędzia, które mogą konwertować z mapy prostokątnej na mapę prostokątną, ale bardzo niewiele z nich może konwertować z mapy prostokątnej z powrotem na mapę prostokątną. Jednym z takich narzędzi jest vrProjector, który może być używany do konwersji tam i z powrotem między tymi dwoma.
Uwagi końcowe na temat edycji w 360
Ogólnie, możesz użyć narzędzi zaprojektowanych do manipulacji panoramą, aby przekształcić projekcje prostokątne w inne projekcje, które mogą być bardziej przyjazne do edycji. Kiedy to robisz, bądź świadomy, że takie transformacje mogą być potencjalnie destrukcyjne dla danych i możesz pogorszyć końcową jakość swojego zdjęcia 360. Zachowaj ostrożność podczas wykonywania takich transformacji!