Čo o vás prezradí fotka: poloha, rýchlosť pohybu aj sériové číslo prístroja
Pri pridávaní podpory HEIC pre MeaReal a MeaCara sme sa v tom formáte začali hrabať. Rýchlosť, akou ste sa pri fotení pohybovali, je v súbore zapísaná. A to je len jedno pole z tridsiatich dvoch.
Obsah článku
Odfotíte byt na predaj, auto do inzerátu alebo seba na pláži a pošlete to ďalej. S tou fotkou odchádza aj zoznam údajov, ktorý ste nikdy nevideli: kde presne ste stáli, akým smerom ste sa pozerali, ako rýchlo ste sa v tej chvíli pohybovali, aký presne telefón to bol a koľko hodín bežal od posledného zapnutia. Nič z toho nie je únik ani chyba. Je to norma, ktorú formát obrázka má už tridsať rokov a ktorú si môže ktokoľvek prečítať.
Prečo o tom píšeme. Narazili sme na to pri práci. Pre MeaReal a MeaCara sme potrebovali, aby používatelia vedeli nahrať fotky priamo z iPhonu bez toho, aby ich museli niekde prevádzať. To znamenalo pridať podporu formátu HEIC, ktorý takmer nikde nefunguje. A keď sme sa v ňom raz začali hrabať, nedalo sa nevšimnúť si, čo všetko v tých súboroch je.
Prečo sme vôbec museli riešiť HEIC
Od iOS 11 fotí iPhone predvolene do formátu HEIC. V Nastaveniach pod Fotoaparát a Formáty sú dve možnosti: Vysoká efektivita, čo je HEIC, a Najkompatibilnejší, čo je starý dobrý JPEG. Väčšina ľudí tam nikdy nebola, takže fotí do HEIC a netuší o tom.
Problém nastane, keď taký súbor nahráte niekam na web. Safari ho zobrazí, Firefox nie vôbec, Chrome podľa toho, na akom systéme beží. Dôvod nie je technický, ale licenčný: HEIC vnútri používa kodek HEVC, ktorý má zložitý patentový balík, a práve preto sa z neho nikdy nestal webový štandard.
Pre nás to znamenalo jediné rozumné riešenie: prijať HEIC na vstupe a prerobiť ho. Človek, ktorý predáva byt a fotí ho telefónom, nemá dôvod vedieť, čo je kodek.
Čo všetko je vo fotke
Tie údaje sa volajú EXIF a sedia priamo v súbore vedľa obrazových dát. Nie sú šifrované ani skryté, prečíta ich ktorýkoľvek bežný nástroj. Rozdelili sme ich na štyri skupiny.
Kde ste boli
Toto je skupina, ktorá väčšinu ľudí prekvapí najviac, lebo nejde len o súradnice.
| Údaj | Čo hovorí |
|---|---|
| Zemepisná šírka a dĺžka | Kde presne ste stáli, na pár metrov |
| Nadmorská výška | Aj s údajom, či ste nad alebo pod hladinou mora |
| Rýchlosť | Ako rýchlo ste sa pohybovali, v km/h, mph alebo uzloch |
| Smer pohybu | Ktorým smerom ste išli, voči magnetickému alebo skutočnému severu |
| Smer pohľadu | Ktorým smerom mierilo sklíčko, keď ste stlačili spúšť |
| Cieľ cesty | Súradnice cieľa, azimut k nemu a vzdialenosť, keď to aplikácia vypĺňa |
| Spôsob určenia polohy | Či to bolo z GPS, z mobilnej bunky alebo z wifi |
| Odhad chyby | Na koľko metrov je poloha presná |
| Počet satelitov a presnosť merania | Z koľkých satelitov sa poloha počítala |
| Dátum a čas podľa GPS | V svetovom čase, nezávisle od hodín v telefóne |
Zastavme sa pri rýchlosti, lebo tá prekvapí aj ľudí z brandže. Keď fotíte z idúceho auta alebo z bicykla, do fotky sa zapíše, ako rýchlo ste sa viezli. Spolu so smerom pohybu a časom je to záznam, z ktorého sa dá zrekonštruovať kus cesty.
Čím ste fotili
| Údaj | Čo hovorí |
|---|---|
| Výrobca a model | Nie „telefón", ale presný model |
| Softvér | Verzia systému alebo aplikácie, ktorá súbor zapísala |
| Objektív | Výrobca a model objektívu |
| Sériové číslo tela | Norma má pole priamo na sériové číslo prístroja |
| Sériové číslo objektívu | To isté pre objektív |
| Meno majiteľa | Áno, norma má aj pole na meno vlastníka fotoaparátu |
| Clona, čas, ISO, ohnisko | Ako bol prístroj nastavený |
| Jedinečné ID snímky | Identifikátor konkrétnej fotky |
Tie tri riadky so sériovými číslami a menom majiteľa sú dôvod, prečo sa pri zrkadlovkách a profesionálnej technike dá fotka priradiť ku konkrétnemu kusu prístroja. Telefóny ich bežne nevypĺňajú, ale norma s nimi počíta a niektoré prístroje ich píšu.
Kedy to bolo
Časy sú v súbore tri: kedy vznikol originál, kedy bol digitalizovaný a kedy sa súbor naposledy zmenil. K tomu posun časového pásma, takže sa dá odvodiť, v ktorom pásme ste vtedy boli.
A čo k tomu pridáva Apple
Nad rámec normy si výrobcovia pridávajú vlastnú sekciu. Apple do nej píše veci, pri ktorých sme pri čítaní dokumentácie naozaj zastali:
| Údaj | Čo hovorí |
|---|---|
| Vektor zrýchlenia | Tri hodnoty X, Y, Z v jednotkách g, teda ako bol telefón v tej chvíli naklonený a či sa hýbal |
| Čas od zapnutia | Ako dlho telefón bežal od posledného reštartu, bez času v spánku |
| ID série | Spoločný identifikátor pre všetky zábery z jednej dávky |
| ID obsahu | Prepojenie fotky s jej videom pri Live Photo |
| Typ snímky | Či to bolo ProRAW, portrét, bežná fotka, manuálne zaostrenie alebo scéna |
| Vzdialenosť zaostrenia | Vrátane odhadu z merania času letu svetla |
Pri Live Photo stojí za zmienku ešte jedna vec. Nie je to jeden súbor, ale dva: statická fotka v HEIC a krátke video. Drží ich pokope práve to ID obsahu. Keď niekam pošlete „fotku", podľa spôsobu odoslania môže ísť s ňou aj tá sekunda a pol videa okolo nej, aj so zvukom.
Väčšina z toho má dôvod
Bolo by nepoctivé spraviť z toho zoznam hrôz. Skoro každé z tých polí má zmysel, pre ktorý vzniklo.
Smer pohľadu a nadmorská výška umožňujú mapovým aplikáciám umiestniť fotku na správne miesto. Vektor zrýchlenia pomáha telefónu vyrovnať obraz a zistiť, ktorou stranou hore ste fotili. Vzdialenosť zaostrenia robí portrétový režim. Čas od zapnutia a ID série pomáhajú telefónu zoradiť zábery z jednej dávky v správnom poradí aj vtedy, keď sa hodiny posunuli. Poloha je dôvod, prečo vám Fotky vedia ukázať „Minulé leto v Chorvátsku".
Rozdiel teda nie je v tom, či sa tie veci zbierajú. Rozdiel je v tom, či viete, že ich posielate ďalej, keď fotku niekam nahráte.
Formáty a čo unesú
Keďže sme sa v tom hrabali, tu je prehľad toho, čo sa dnes reálne používa.
| Formát | Nesie EXIF | Kde funguje | Na čo je dobrý |
|---|---|---|---|
| JPG | áno | úplne všade | Istota. Keď potrebujete, aby sa to otvorilo komukoľvek a kdekoľvek. |
| HEIC | áno, plus sekcia výrobcu | Safari áno, Firefox nie, Chrome podľa systému | Úspora miesta v telefóne. Na web sa nehodí. |
| PNG | obmedzene | všade | Priehľadnosť, logá, screenshoty. Na fotky je zbytočne ťažký. |
| WebP | áno | všade od Safari 14 v roku 2020 | Dnešný bezpečný základ pre web. |
| AVIF | áno | Chrome od 2020, Firefox od 2021, Safari od 2022 | Najmenšie súbory pri rovnakej kvalite. Prvá voľba, keď je kam cúvnuť. |
Všimnite si ten stĺpec s EXIF. Prechodom na moderný formát sa metadáta samy od seba nestratia. WebP aj AVIF ich unesú rovnako dobre ako JPG. Či v súbore zostanú, rozhoduje nástroj, ktorý prevod robí, nie formát.
Prečo vaše fotky prerábame
Toto je tá nudnejšia, ale pre nás každodenná časť. Keď staviame web, vašu fotku nenahráme tak, ako prišla. Z každej spravíme niekoľko verzií.
- Viac formátov. Prehliadaču ponúkneme AVIF, a keď ho nevie, dostane WebP. Rozdiel oproti pôvodnému JPG je bežne polovica až tretina veľkosti pri rovnakom dojme z kvality.
- Viac veľkostí. Telefón nemá sťahovať fotku pripravenú pre veľký monitor. Je to najčastejšia chyba, ktorú na cudzích weboch vidíme.
- Bez metadát. Pri prevode EXIF nenesieme ďalej. Návštevníkovi webu je na nič a zbytočne by súbor zväčšoval.
Nie je to kozmetika. Veľkosť obrázkov býva najväčšia jednotlivá položka v tom, prečo sa stránka načítava pomaly, a rýchlosť načítania Google hodnotí.
Čo s tým viete urobiť
- Pozrite sa, čo vaše fotky nesú. Na Macu otvorte fotku v Náhľade a dajte Nástroje, Zobraziť inšpektor. V mobile to ukáže ktorákoľvek aplikácia na metadáta.
- Pri zdieľaní vypnite polohu. Na iPhone v zdieľacom okne ťuknite hore na Možnosti a vypnite Informácie o polohe. Platí to pre jedno odoslanie.
- Zvážte, či polohu vôbec potrebujete. Nastavenia, Súkromie a bezpečnosť, Lokalizačné služby, Fotoaparát. Keď to vypnete, GPS sa do fotiek nezapisuje vôbec.
- Pri inzerátoch zvlášť. Fotka bytu s presnými súradnicami povie adresu aj vtedy, keď ju v texte neuvediete.
Jedna vec pri sociálnych sieťach, ktorá sa prehliada
Veľké siete metadáta z fotiek odstraňujú a často sa to uvádza ako dôvod, prečo sa netreba trápiť. Je v tom háčik, ktorý je dobré vidieť.
Odstránia ich zo súboru, ktorý ponúknu ostatným. Nie z toho, ktorý ste im poslali. Aby ich mohli odstrániť, museli ich najprv dostať. Ochrana teda funguje voči ostatným používateľom, nie voči samotnej sieti.
Platí to aj inak: keď tú istú fotku pošlete e-mailom, cez súborové úložisko alebo ju nahráte na vlastný web, neodstráni ich nikto.
Na záver
Nehovoríme, aby ste prestali fotiť telefónom ani aby ste si vypli polohu. Väčšina tých údajov vám reálne slúži a bez nich by vám nefungovali veci, ktoré máte radi.
Hovoríme to isté, čo v celej tejto sérii. Rozdiel medzi človekom, ktorý to vie, a človekom, ktorý to nevie, nie je v tom, čo sa o ňom zbiera. Je v tom, či sa vie rozhodnúť, kedy to pošle ďalej a kedy nie.
Technická príloha
Od tohto článku budeme podrobnosti dávať na koniec, aby text ostal čitateľný pre každého a zároveň si ten, koho to zaujíma, prišiel na svoje.
Kontajner a kodek nie sú to isté
HEIF je kontajner, teda obal na obrazové dáta. HEIC je ten istý kontajner s obrázkami kódovanými kodekom HEVC, čo je to, čo sa inde volá H.265. Preto je HEIC zaťažený patentmi: nie kvôli obalu, ale kvôli kodeku vnútri. Ten istý kontajner s iným kodekom patentový problém nemá, a presne na tom stojí AVIF, ktorý používa kodek AV1 bez licenčných poplatkov.
Live Photo je dvojica: statický obrázok a krátke video, ktoré spolu drží pole ContentIdentifier v sekcii výrobcu, ako atribút súboru sa to isté volá MediaGroupUUID.
Polia skupiny GPS
Norma ich definuje tridsaťdva, s číslami od 0x0000 po 0x001f:
GPSVersionID GPSLatitudeRef GPSLatitude GPSLongitudeRef
GPSLongitude GPSAltitudeRef GPSAltitude GPSTimeStamp
GPSSatellites GPSStatus GPSMeasureMode GPSDOP
GPSSpeedRef GPSSpeed GPSTrackRef GPSTrack
GPSImgDirectionRef GPSImgDirection GPSMapDatum GPSDestLatitudeRef
GPSDestLatitude GPSDestLongitudeRef GPSDestLongitude GPSDestBearingRef
GPSDestBearing GPSDestDistanceRef GPSDestDistance GPSProcessingMethod
GPSAreaInformation GPSDateStamp GPSDifferential GPSHPositioningError
Za zmienku stoja tri. GPSSpeedRef rozlišuje, či je rýchlosť v km/h, mph alebo uzloch. GPSProcessingMethod má v norme hodnoty GPS, CELLID, WLAN a MANUAL, takže zo súboru je vidieť, či sa poloha brala zo satelitov, z mobilnej bunky alebo z wifi. Pole GPSHPositioningError nesie odhad vodorovnej chyby v metroch.
Polia, ktoré pridáva Apple
Sú v sekcii výrobcu, ktorú norma necháva otvorenú:
AccelerationVector tri hodnoty X, Y, Z v jednotkách g
RunTime čas od posledného zapnutia, bez času v spánku
BurstUUID spoločné ID pre všetky zábery jednej dávky
ContentIdentifier spojenie fotky s videom pri Live Photo
ImageCaptureType 1 ProRAW, 2 portrét, 10 fotka, 11 manuálne zaostrenie, 12 scéna
LivePhotoVideoIndex pozícia snímky vo videu Live Photo
FocusDistanceRange rozsah vzdialenosti zaostrenia
AFMeasuredDepth odhad z merania času letu svetla
Ako si to pozrieť sami
Najpodrobnejší nástroj je ExifTool. Na Macu sa inštaluje cez Homebrew a vypíše úplne všetko vrátane sekcie výrobcu:
brew install exiftool
exiftool -G -a -u fotka.heic
exiftool -gps:all fotka.heic
exiftool -all= kopia.jpg
Prvý príkaz vypíše všetko aj s názvami skupín, druhý len polohu, tretí metadáta zo súboru odstráni. Ten posledný spúšťajte na kópii, nie na origináli.
Súvisiace čítanie
O tom, čo odovzdávate zo svojho telefónneho zoznamu: Volá neznáme číslo: ako fungujú služby na identifikáciu volajúceho a čo za to dáte.
O tom, čo ste odklikli sociálnym sieťam: Čo ste odklikli TikToku a sociálnym sieťam.
A o tom, ako sa dá z podmienok vyčítať pravda: Klon namiesto originálu: ako sa falošná stránka dostane v Google nad pravú.
Chcete vedieť, či máte obrázky na webe pripravené správne? Náš Audit webu zdarma zmeria, koľko stránka váži a čo ju brzdí.
Pomohol vám článok? Pošlite ho kolegovi alebo tomu, kto sa vám stará o web.
Časté otázky
Otázky k tejto téme
Čo všetko je vo fotke z telefónu?
Okrem obrazu aj súradnice, nadmorská výška, rýchlosť a smer pohybu, smer, ktorým mierilo sklíčko, presný model prístroja, verzia systému, nastavenie clony a času, a tri rôzne časové značky s posunom časového pásma.
Apple k tomu pridáva vlastnú sekciu: vektor zrýchlenia, čas od posledného zapnutia telefónu, identifikátor série záberov a pri Live Photo prepojenie fotky s jej videom.
Naozaj je vo fotke rýchlosť, akou som sa pohyboval?
Áno. Norma má pole na rýchlosť aj pole, ktoré hovorí, či je v km/h, mph alebo uzloch. Vypĺňa sa, keď sa prístroj pri fotení pohyboval.
Spolu so smerom pohybu a časom je z toho záznam, z ktorého sa dá zrekonštruovať kus trasy. Práve toto býva pre ľudí najväčšie prekvapenie.
Prečo sa HEIC nedá nahrať na každý web?
HEIC používa vnútri kodek HEVC, ktorý má zložitý patentový balík. Preto sa z neho nikdy nestal webový štandard. Safari ho zobrazí, Firefox vôbec nie a Chrome podľa toho, na akom systéme beží.
Rozumné riešenie je prijať ho na vstupe a prerobiť, čo sme spravili aj my pre MeaReal a MeaCara. Človek, ktorý fotí byt telefónom, nemá dôvod vedieť, čo je kodek.
Odstránia sociálne siete metadáta z fotiek?
Zo súboru, ktorý ponúknu ostatným, áno. Ale aby ich mohli odstrániť, museli ich najprv dostať. Ochrana teda funguje voči ostatným používateľom, nie voči samotnej sieti.
A platí to len tam. Keď tú istú fotku pošlete e-mailom, cez úložisko alebo ju nahráte na vlastný web, neodstráni ich nikto.
Ako metadáta z fotky odstránim?
Na iPhone pri zdieľaní ťuknite hore na Možnosti a vypnite Informácie o polohe. Platí to pre jedno odoslanie. Keď polohu nechcete vo fotkách vôbec, vypnite ju v Nastaveniach pod Lokalizačné služby a Fotoaparát.
Na počítači to zvládne ExifTool príkazom exiftool -all= kopia.jpg. Spúšťajte ho na kópii, nie na origináli.
Stratia sa metadáta pri prevode do WebP alebo AVIF?
Nie samy od seba. Oba formáty EXIF unesú rovnako dobre ako JPG. Či v súbore zostanú, rozhoduje nástroj, ktorý prevod robí.
My pri príprave obrázkov na web metadáta nenesieme ďalej: návštevníkovi sú na nič a zbytočne by súbor zväčšovali.
Ďalšie odpovede nájdete v sekcii Časté otázky.