Photo Sphere XMP Meta Verileri

Burada açıklanan panorama ad alanı, aşağıdaki özellikleri sunar: fotoğraf kürelerinin oluşturulması ve oluşturulmasıyla ilgili bilgiler, ayrıca panoramalar olarak da adlandırılır, Fotoğraf Küresi özelliği tarafından oluşturulan fotoğraflar dokunun. İlgili içeriği oluşturmak için kullanılan meta veriler serileştirilmeli ve fotoğraf küresine tarafından tanımlanan Adobe XMP standart (bu sayfanın sonundaki referanslara bakın).

Ad alanı URI'si: http://ns.google.com/photos/1.0/panorama/

Meta veri özellikleri

Aşağıdaki diyagramlar ve tabloda, GPano Parametreleri için de geçerlidir. Fotoğraf kürelerini düzenlerken ve görüntülerken lütfen meta verileri bu dokümanın ilerleyen kısımlarında açıklandığı şekilde doğrulayıp güncellemelisiniz. Poz ve ilk başlık alanlarını belirtirken lütfen şu politikalara dikkat edin: Euler açısı kuralları bu belgeyi kontrol edin.

Google ürünlerinin yalnızca küresel projeksiyonları desteklediğini unutmayın. Ek tahminler şu anda yalnızca diğer taraflar tarafından desteklenmektedir.

Küresel projeksiyonlar

Silindir projeksiyonlar

Silindir bir resmin üst kısmı ufuk çizgisinin üzerindeyse, KırpılmışAreaTopPixel'ler negatif olmalıdır. CroppedAreaTopPixels için 0 değeri resmin üst kısmını ufka yerleştirir. Pozitif değer: KırpılmışAreaTopPikselleri, resmin üst kısmını ufkun altına yerleştirir.

GPano parametre referansı

Ad Tür Zorunlu Varsayılan değer
(izleyici varsayılır)
Tesis açıklaması Resim değiştirilirse işlem gerekir
GPano:UsePanoramaViewer Boole Hayır Doğru Bu görüntünün normal düz bir görüntü yerine bir fotoğraf küresi görüntüleyicide gösterilip gösterilmeyeceğini belirler. Bu, kullanıcı tercihlerine göre veya birleştirme yazılımı tarafından belirtilebilir. Resmi görüntüleyen veya besleyen uygulama bunu yoksaymayı seçebilir. ölçek/kırpma:
Değişiklik yok. Görüş alanı belirli bir değerin altına düşerse bir uygulama, bunu False (Yanlış) değerine geçirmeye karar verebilir.
GPano:CaptureSoftware Dize Hayır Yok Fotoğraf, Android telefon gibi bir mobil cihazdaki uygulama kullanılarak yapıldıysa kullanılan uygulamanın adı (ör. "Fotoğraf Küresi"). Kaynak görüntüler manuel olarak çekildiyse (örneğin, tripod üzerinde DSLR kullanılarak) bu alan boş bırakılmalıdır. Yok
GPano:StitchingSoftware Dize Hayır Yok Nihai fotoğraf küresini oluşturmak için kullanılan yazılım. Bu, bazen GPano:CaptureYazılım ile aynı değer olabilir. Yok
GPano:ProjectionType Metin Seçeneğini Aç Evet

eşdikdörtgen

Resim dosyasında kullanılan projeksiyon türü. Google ürünleri şu anda yalnızca eş mesafeli silindirik değerini desteklemektedir. ölçek/kırpma: Değişiklik yok.
GPano:PoseHeadingDegrees Gerçek Hayır, ancak Google Haritalar'da görüntülenmek için gerekli Yok Resmin ortası için kuzeyden saat yönünde derece cinsinden ölçülen pusula yönü. Değer en az 0 ve en fazla 0 olmalıdır 360 derece. ölçek/kırpma: Değişiklik yok.
GPano:PosePitchDegrees Gerçek Hayır 0 Resmin ortası için ufkun üzerindeki derece cinsinden ölçülen perde. Değer en az -90 ve en fazla 90 olmalıdır. ölçek/kırpma: Değişiklik yok.
GPano:PoseRollDegrees Gerçek Hayır 0 Resmin, ufuk çizgisinin 0 olduğu bir yerde yuvarlanma süresi (derece cinsinden ölçülür). Yuvarlanma arttıkça ufuk, resimde saat yönünün tersine döner. Değer > olmalıdır -180 ve <= 180. ölçek/kırpma: Değişiklik yok.
GPano:InitialViewHeadingDegrees Tamsayı Hayır 0 İlk görünümün, pano merkezine göre değil, gerçek Kuzey dünyadan saat yönünde derece cinsinden yön açısı. ölçek/kırpma: Değişiklik yok.
GPano:InitialViewPitchDegrees Tamsayı Hayır 0 İlk görünümün, pano merkezine göre değil, gerçek dünya ufkunun üzerindeki derece cinsinden perde açısı. ölçek/kırpma: Değişiklik yok.
GPano:InitialViewRollDegrees Tamsayı Hayır 0 İlk görünümün, gerçek dünya ufkuyla seviyesinin 0 olduğu derece cinsinden yuvarlanma açısı. Yuvarlanma arttıkça ufuk, görünümde saat yönünün tersine döner. ölçek/kırpma: Değişiklik yok.
GPano:InitialHorizontalFOVDegrees Gerçek Hayır Yok İzleyicinin görüntülemesi gereken ilk yatay görüş alanı (derece cinsinden). Bu, yakınlaştırma düzeyine benzer. Yok
GPano:InitialVerticalFOVDegrees Gerçek Hayır Yok Görüntüleyenin görüntülemesi gereken ilk dikey görüş alanı (derece cinsinden). Bu, yakınlaştırma düzeyine benzer. Hem GPano:InitialHorizontalFOVDegrees hem de GPano:InitialVerticalFOVDegrees varsa GPano:InitialHorizontalFOVDegrees öncelikli olur. İçeriğiniz birden çok en boy oranında gösterilecekse ve yatay görüntüleme alanı değişebiliyorken dikey görüş alanının sabit kalmasını tercih ediyorsanız yalnızca InitialVerticalFOVDegrees değerini kullanın. Google ürünleri şu anda bu alanı desteklememektedir. Yok
GPano:FirstPhotoDate Tarih Hayır Yok Fotoğraf küresinde oluşturulan ilk görüntünün tarih ve saati. ölçek/kırpma: Değişiklik yok.
GPano:LastPhotoDate Tarih Hayır Yok Fotoğraf küresinde oluşturulan son resmin tarih ve saati. ölçek/kırpma: Değişiklik yok.
GPano:SourcePhotosCount Tamsayı Hayır Yok Fotoğraf küresini oluşturmak için kullanılan kaynak görüntülerin sayısı. ölçek/kırpma: Değişiklik yok.
GPano:ExposureLockUsed Boole Hayır Yok Ayrı ayrı kaynak fotoğraflar çekildiğinde, kameranın pozlama ayarının kilitli olup olmadığı. Yok
GPano:CroppedAreaImageWidthPixels Tamsayı Evet Yok Resmin piksel cinsinden orijinal genişliği (düzenlenmemiş resimler için gerçek resmin genişliğine eşittir). Yukarıdaki şemalara bakın. ölçek/kırpma: Bu özelliğin, resmin yeni boyutunu yansıtacak şekilde güncellenmesi gerekir.
GPano:CroppedAreaImageHeightPixels Tamsayı Evet Yok Resmin piksel cinsinden orijinal yüksekliği (düzenlenmemiş resimler için resmin asıl yüksekliğine eşittir). Yukarıdaki şemalara bakın. ölçek/kırpma: Bu özelliğin, resmin yeni boyutunu yansıtacak şekilde güncellenmesi gerekir.
GPano:FullPanoWidthPixels Tamsayı Evet Yok Resmin kırpıldığı orijinal tam genişlik. Yalnızca kısmi bir fotoğraf küresi çekildiyse, bu tam fotoğraf küresinin genişliğini belirtir. Yukarıdaki şemalara bakın. kırpma: Değişiklik yok.
ölçek: Bunun uygun şekilde ölçeklenmesi gerekir.
GPano:FullPanoHeightPixels Tamsayı Evet Yok Resmin kırpıldığı orijinal tam yükseklik. Yalnızca kısmi bir fotoğraf küresi çekildiyse, bu değer tam fotoğraf küresinin yüksekliği belirtir. Yukarıdaki şemalara bakın. kırpma: Değişiklik yok.
ölçek: Bunun uygun şekilde ölçeklenmesi gerekir.
GPano:CroppedAreaLeftPixels Tamsayı Evet Yok Tam boyutlu fotoğraf küresinden resmin sol kenarının kırpıldığı sütun. Yukarıdaki şemalara bakın. kırpma: Resmin sol kesimi değiştirilirse bu değer güncellenmelidir.
ölçek: Bunun uygun şekilde ölçeklenmesi gerekir.
GPano:CroppedAreaTopPixels Tamsayı Evet Yok Tam boyutlu fotoğraf küresinden resmin üst kenarının kırpıldığı satır. Yukarıdaki şemalara bakın. kırp: Resmin üst kısmı değiştirilirse bu değer güncellenmelidir.
ölçek: Bunun uygun şekilde ölçeklenmesi gerekir.
GPano:InitialCameraDolly Gerçek Hayır 0 Bu isteğe bağlı parametre, sanal kamera konumunu görüş çizgisi boyunca fotoğraf küresinin merkezinden uzağa doğru hareket ettirir. Arka yüzey konumu -1,0 değeriyle, ön yüzey konumu ise 1,0 değeriyle temsil edilir. Normal görüntüleme için bu parametre 0 olarak ayarlanmalıdır. Yok

Tam fotoğraf küresi örneği

Programcı olmayanlar, aşağıdaki meta veri örneğini mevcut tam fotoğraflarına ekleyebilirler küreler (360 derece x 180 derece) Bu işlem, Adobe Photoshop gibi resim düzenleme ürünlerinde yapılabilir.

  1. 4000 ve 2000'in oluşumlarını, resminizin piksel cinsinden karşılık gelen genişliği ve yüksekliğine uyacak şekilde değiştirin
  2. Google Haritalar'ın fotoğraf kürenizi gösterebilmesini istiyorsanız PoseHeadingDegrees'i güncelleyin; aksi takdirde, isterseniz bu parametreyi
  3. isteğe bağlı parametreleri güncelleyin veya kaldırın (yukarıda listelendiği şekilde)
<rdf:Description rdf:about="" xmlns:GPano="http://ns.google.com/photos/1.0/panorama/">
    <GPano:UsePanoramaViewer>True</GPano:UsePanoramaViewer>
    <GPano:CaptureSoftware>Photo Sphere</GPano:CaptureSoftware>
    <GPano:StitchingSoftware>Photo Sphere</GPano:StitchingSoftware>
    <GPano:ProjectionType>equirectangular</GPano:ProjectionType>
    <GPano:PoseHeadingDegrees>350.0</GPano:PoseHeadingDegrees>
    <GPano:InitialViewHeadingDegrees>90.0</GPano:InitialViewHeadingDegrees>
    <GPano:InitialViewPitchDegrees>0.0</GPano:InitialViewPitchDegrees>
    <GPano:InitialViewRollDegrees>0.0</GPano:InitialViewRollDegrees>
    <GPano:InitialHorizontalFOVDegrees>75.0</GPano:InitialHorizontalFOVDegrees>
    <GPano:CroppedAreaLeftPixels>0</GPano:CroppedAreaLeftPixels>
    <GPano:CroppedAreaTopPixels>0</GPano:CroppedAreaTopPixels>
    <GPano:CroppedAreaImageWidthPixels>4000</GPano:CroppedAreaImageWidthPixels>
    <GPano:CroppedAreaImageHeightPixels>2000</GPano:CroppedAreaImageHeightPixels>
    <GPano:FullPanoWidthPixels>4000</GPano:FullPanoWidthPixels>
    <GPano:FullPanoHeightPixels>2000</GPano:FullPanoHeightPixels>
    <GPano:FirstPhotoDate>2012-11-07T21:03:13.465Z</GPano:FirstPhotoDate>
    <GPano:LastPhotoDate>2012-11-07T21:04:10.897Z</GPano:LastPhotoDate>
    <GPano:SourcePhotosCount>50</GPano:SourcePhotosCount>
    <GPano:ExposureLockUsed>False</GPano:ExposureLockUsed>
</rdf:Description>

Kısmi fotoğraf küresi örneği

<rdf:Description rdf:about="" xmlns:GPano="http://ns.google.com/photos/1.0/panorama/">
    <GPano:UsePanoramaViewer>True</GPano:UsePanoramaViewer>
    <GPano:CaptureSoftware>Photo Sphere</GPano:CaptureSoftware>
    <GPano:StitchingSoftware>Photo Sphere</GPano:StitchingSoftware>
    <GPano:ProjectionType>equirectangular</GPano:ProjectionType>
    <GPano:PoseHeadingDegrees>350.0</GPano:PoseHeadingDegrees>
    <GPano:InitialViewHeadingDegrees>90.0</GPano:InitialViewHeadingDegrees>
    <GPano:InitialViewPitchDegrees>0.0</GPano:InitialViewPitchDegrees>
    <GPano:InitialViewRollDegrees>0.0</GPano:InitialViewRollDegrees>
    <GPano:InitialHorizontalFOVDegrees>75.0</GPano:InitialHorizontalFOVDegrees>
    <GPano:CroppedAreaLeftPixels>90</GPano:CroppedAreaLeftPixels>
    <GPano:CroppedAreaTopPixels>128</GPano:CroppedAreaTopPixels>
    <GPano:CroppedAreaImageWidthPixels>2300</GPano:CroppedAreaImageWidthPixels>
    <GPano:CroppedAreaImageHeightPixels>1042</GPano:CroppedAreaImageHeightPixels>
    <GPano:FullPanoWidthPixels>4000</GPano:FullPanoWidthPixels>
    <GPano:FullPanoHeightPixels>2000</GPano:FullPanoHeightPixels>
    <GPano:FirstPhotoDate>2012-11-07T21:03:13.465Z</GPano:FirstPhotoDate>
    <GPano:LastPhotoDate>2012-11-07T21:04:10.897Z</GPano:LastPhotoDate>
    <GPano:SourcePhotosCount>50</GPano:SourcePhotosCount>
    <GPano:ExposureLockUsed>False</GPano:ExposureLockUsed>
</rdf:Description>

Resim düzenlemede dayanıklılık

Bir görüntüleyicide fotoğraf küreleri görüntüleyen programların, sağlam olmaları için, orijinal fotoğraf küresi, bir uygulama tarafından meta verilerdir. Bunu aşağıdaki adımlarla yapabilirsiniz:

  1. ClippedAreaImageWidthPixels etiketinin gerçek resim genişliğine eşit olduğundan emin olun
  2. KırpılmışAreaImageHeightPixels etiketinin gerçek resim yüksekliğine eşit olduğundan emin olun
  3. 1. veya 2. adım başarısız olursa resmin en boy oranının korunup korunmadığını kontrol edin.
  4. 3. adım başarısız olursa, görüntü kötü distorsiyonlara yol açacak şekilde uyumsuz bir şekilde dönüştürüldüğü için görüntüyü bir fotoğraf küresi olarak görüntülemeyin
  5. 3. adım başarılı olursa en boy oranı eşdeğer olur ve aşağıdaki ilişkili etiket değerlerinin tümünün yeni resim boyutuna sığacak şekilde ölçeklendirilmesi gerekir:
    KırpılmışAlanResimGenişlikPikselleri, KırpılmışAlanGörüntüYükseklikPikselleri, TamPanoGenişliğiPikselleri, TamPanoYükseklikPikselleri, KırpılmışAlanSolSolPikseller, KırpılmışAlanSağPikseller.

Euler Açılarına Genel Bakış

Fotoğraf küresinin dünya çerçevesindeki yönü Euler tarafından belirlenir açın. Euler açıları birçok şekilde tanımlanabilir. Bir programın doğru olması için burada açıklanan Euler açı kurallarını uygulayın.

Dünya yüzeyinin üzerindeki konum, sabit bir "yerel çerçeve" Z yukarı ve dünyanın yüzeyine dik konumda olan XYZ, X doğru Doğu, Y ise kuzeydir. Yön, buna göre tanımlanır sabit "yerel çerçeve"dir; Euler açıları ise bu çerçevelerin sabit XYZ eksenleridir. Bu nedenle kutuplarda duruş yönü tanımlanmamıştır. Bu açıları (0, 0, 0) olan bir fotoğraf küresinin, tam olarak o açılardan kuzeye doğru fotoğraf küresinin ekvatoruyla paralel ortadaki piksel dünyanın yüzeyini andırır.

Euler açıları, (döndürülmüş) "fotoğraftaki" noktalardan bir eşleme sağlar küre çerçeve" (sabit) "yerel çerçeve"deki noktalara ekleyin:
 
Euler açılarından bir döndürme matrisi (bu sıralamanın korunması önemlidir):

R = R_Z(-başlık) * R_X(eğim) * R_Y(yuvarlama)

burada: R_*(t), adlandırılmış eksen etrafında sağ el hareketidir:











Bu durumda: Z = Yukarı, X = Doğu, Y = Kuzey.

Bu sıralamanın korunması önemlidir:

R = R_Z(-başlık) * R_X(eğim) * R_Y(yuvarlama)

çünkü döndürmeler değişmeli değildir.

Yön açısının standart bir pusula yönüyle aynı olduğuna dikkat edin.

Referanslar

Adobe XMP standardı: http://www.adobe.com/devnet/xmp.html