Neden çoğu kamera PNG formatını desteklemiyor?


56

PNG formatını JPG'ye tercih ederim çünkü JPG kayıplı sıkıştırma kullanıyor .

Bilgisayarımda bir ekran yakaladığımda veya tarayıcımda bir resim veya belge taradığımda, onları daima PNG formatı olarak kaydederim.
Bir kamera verilerini PNG formatı olarak kaydedebilseydi, daha fazla hafıza kartı satın almam gerekse bile bu özelliği kullanırdım.

Ama bunu yapan hiçbir kamera görmedim. Neden olmasın? Neden çoğu kamera (veya hiçbiri) PNG formatını desteklemiyor?

PS Kameram RAW özelliğini desteklemiyor.


7
Birçoğu kayıpsız sıkıştırmayı da destekleyen TIFF'i destekler. Ama sonra soru şu, "Neden çoğu web tarayıcısı TIFF'i desteklemiyor?"
mattdm

3
PNG'yi fotoğrafçılıkta JPG'ye mi tercih edersiniz? Daha önce bunun için bir tartışma görmedim.
dpollitt

1
Verdiğiniz bağlantının örnek olarak kayıplı bir sıkıştırma örneği olarak png kullanması ironiktir :)
Toby Allen

6
@JZL PNG renk paletlerini (dizine alınmış renk) desteklerken, onları gerektirmez. Eminim buradaki 24 ya da 48 bit RGB renklerinden bahsediyoruz. GIF, diğer taraftan, yalnızca dizine alınmış renkleri destekledi ve paletteki 256 renkle sınırlıydı.
coneslayer

2
@Pacerier Çoğu. Listeleme yerine , wikipedia'daki bu tabloya göz atın .
mattdm

Yanıtlar:


58

JPEG formatı küçük dosyalar verme avantajına sahiptir. RAW formatları, çekimde toplanan tüm verileri koruma avantajına sahiptir.

PNG formatı bu avantajların hiçbirini vermez, bu nedenle diğer formatlar arasında bir uzlaşma bile olmaz, neredeyse her iki formatta sadece dezavantajlara sahip olursunuz.


3
Burada dikkat edilmesi gereken bir nokta, "RAW formatı" yok. Eğer Benjamin bir standart için isteseydi, RAW'ını DNG'ye dönüştürmek zorunda kalırdı.
Leonidas

Evet, RAW sadece kameraların dahili formatı anlamına gelir ve kameradan kameraya değişir. Geçenlerde, ham formatı piksel başına iki bayt ve birkaç bin ekstra üstbilgi / alt bayt (ugh) içeren bir kamera kullandım.
John Robertson

Burada Leonidas ile aynı fikirdeyim. Asıl mesele, DNG'nin daha fazla kamera üreticisi tarafından benimsenmemesi. Fotoğrafçılar olarak negatiflerimize sahibiz, ancak dijital negatiflerimiz genellikle NDA kapsamında gizlenmiş detaylarla birlikte özel dosya formatlarında kilitlendi. DNG'nin Canon veya Nikon tarafından kabul edilmesi, bunu çözme yönünde uzun bir yol izler. Olmayacak, yine de.
RBerteig

2
@John, 2 byte / piksel kullanmak anormal mi? Sensörün her bir piksel için sağladığı 12 veya 14 bit değerine başka nasıl uyursunuz? Daha sonra küçük bir sıkıştırma yapabilirsiniz, ancak daha fazla veya daha az rastgele veri için, buna bile değmeyebilir.
Nick T,

1
@John Robertson: Çoğu yonga, piksel başına yalnızca bir renk kaydeder, üç değil, yani 14 bit RAW, piksel başına iki renk bileşeni çevreleyen piksellerden enterpolasyondan sonra, 42 bit RGB'ye karşılık gelir.
Guffa

44

Görüntü boyutu bir yana, büyük bir neden, PNG'nin standart bir EXIF ​​gömme yöntemine sahip olmaması ve kamera üreticilerini derhal uzak tutacağı yönünde. Sonuç olarak, kamerada PNG'ye görüntü dönüşümü yaparak kaybolan çok fazla bilgi olacak ve çoğu zaman çoğu fotoğrafçı tarafından olumsuz olarak görülecektir.


7
+1 PNG için standart bir EXIF ​​gömme işlemi olmadığını asla anlamadım. Bilmek güzel.
coneslayer

5
Büyük olasılıkla. Meta veri güzel.
Leonidas

3
Wiki : iTXt, isteğe bağlı bir dil etiketiyle birlikte sıkıştırılmış veya sıkıştırılmış UTF-8 metni içerir. iTXt, 'XML: com.adobe.xmp' anahtar kelimesi ile öbek olarak Genişletilebilir Meta Veri Platformu (XMP)
Kevin Peno

6
EXIF verilerinin eksikliği fotoğrafçılar tarafından "olumsuz olarak görülüyor"? Bah! Bu genç dijital fotoğrafçı kırbaç yakalayıcılar! Benim günümde, fotoğrafçılar filmi kullandılar ve negatiflerin gerçekte nasıl göründüğünü biliyorlardı! :-)
Gardthinking

4
@Oddthinging En azından olumsuz kenarlarında küçük bir meta veri vardı!
coneslayer

27

PNG kayıpsız bir sıkıştırma algoritması kullanabilir, ancak ham verilere kıyasla kayıplıdır. Bit derinliğini kaybedersiniz, fotoğraf makinesi kaçakçılık eserleri ortaya çıkarabilir, kötü bir renk dengesi oluşturabilir, fotoğraf makinesi uygun olmayan netleştirme uygulayabilir, fotoğraf makinesindeki gürültü azaltma ayrıntıyı temizleyebilir vb. Büyük bir talep olduğunu sanmıyorum. ham kadar büyük, ancak daha sonra işlemden geçirilemeyecek kadar az olan bir format için.


3
.Png, png bir ham örnek yerine piksel başına üç renk değeri saklamak zorunda kalacağından, kesinlikle ham üründen daha büyük olacaktır, bu nedenle ham için 12 veya 14 bpp'ye karşılık piksel başına 24 bit olan 8 bitlik bir png için.
Matt Grum

3
@John Ama bu hamden daha kötü, bu da düzenleme için kullanmanız gereken şey. PNG, JPEG ve raw arasında mutsuz bir ortam gibi görünüyor.
Coneslayer

5
@Matt PNG sıkıştırma kullandığı için (çok), sonucun daha büyük olması gerekmez (algoritmalara bağlıdır). Bunu bir soruya söylemek gerekirse: Bir ASCII dosyasını (karakter başına 8 bit) bir UTF16 dosyasına dönüştürürseniz, sıkıştırılmış bir sonuç önemli ölçüde büyür mü? Bunu "evet" olarak yanıtlarsanız, lütfen sıkıştırma algoritmalarını tekrar okuyun.
Leonidas

1
@Leonidas Haklısınız, ancak PNG çıkışını isteyen herkesin (çiğ yerine) sonucun fotoğraf makinesinden derhal kullanılabilir olmasını bekleyeceğini umuyorum; bu, keskinleştirme gibi şeyleri önleyici filtreyi ve muhtemelen gürültü azaltmayı azaltmak için istediğiniz anlamına gelir. Teknik olarak gerekli değildir, ancak PNG dosyalarınız daha fazla düzenleme gerektiriyorsa , o zaman, yine de ham üzerinden fayda göremiyorum.
Coneslayer

2
@coneslayer Benjanmin'in resimleri yeniden işlerken yaşadığım / yaşadığım aynı sorunu olduğunu tahmin ediyorum: (1) JPG zaten bazı resim verilerini kaybetti ve (2a) RAW özel bir yazılım (sadece bir süredir yazılımı kullanabiliyor), (2b) her kamera için değil RAW sunar. Birkaç yıl önce, CD'mde TIFF ya da PNG'ye umutsuzca dileğim oldu.
Leonidas


2

PNG, taşınabilir grafikleridir . Web için hedeflenir ve oldukça basit (renkli) görüntüler. Bir kamerayla çekim yapacağınız için sıkıştırması gerçekçi grafikler için çok etkisizdir , bu nedenle sonuçlar neredeyse sıkıştırılmamıştır. Böylece, daha sonra, RGB renk alanına kayıtsız bir dönüşüm olmadığı avantajını ekleyen RAW dosyalarını kullanabilirsiniz.

JPEG'in kullanılmasının nedeni, sıkıştırmasının çok iyi olması ve bireysel eserlerin insan gözüyle göremediği daha gerçekçi grafiklerle çok iyi çalışmasıdır. Buna ek olarak, JPEG hemen hemen her cihaz tarafından desteklenir ve renk profilleri de dahil olmak üzere ek meta veri eklemek için birçok yol sunar.

Tek bir RGB dosya formatı görüntüyü tam olarak kamera sensörü gördüğü gibi kaydedemez; Bu dönüşümde her zaman bir çeşit kayıp olur. Bu nedenle, görüntüye tam olarak zarar vermeyen, iyi bir sıkıştırma olan bir format kullanmak mantıklıdır. Gerçek bir kayıpsız format arıyorsanız, RAW, gidebileceğiniz tek yöndür, bundan sonra istediğiniz dosyayı oluşturabilirsiniz.


RGB renk alanına kayıplı dönüşüm? Nasıl yani? Bayer-sensor verisini (ilave veri) RGB versiyonlarının bir şekline dönüştürürken tam olarak ne kaybediyorsunuz? (Btw: PNG ilke olarak ICC-profilleri sunar, FF desteklemeyi planlıyor, okudum.)
Leonidas

@ Leonidas: “” RGB renk alanı yok. Fotoğraf makinesi, herhangi bir RGB renk alanında (sRGB, Adobe RGB vb.) Yorumlanabilecek olandan çok daha fazla bilgi toplar. Dolayısıyla, bir RGB dosyasına dönüştürme yapıldığında, her zaman bazı bilgiler / renkler kaybedilir. Bunu korumanın tek yolu, verileri kameranın gördüğü şekilde kaydetmektir, yani RAW.
dürtmek

@poke Tipik bir RGGB sensörünün, herhangi bir RGB formatında kayıpsız bir şekilde dönüştürülemeyen verileri nasıl ürettiğini açıklayabilir misiniz? (Birden fazla olduğunun farkındayım, "RGB sürümlerinin bir şekli" ni not edin.)
Leonidas

@Leonidas: Yanlış olabilir ve daha iyisini biliyorsanız (veya burada yanlış bir şey söylemem için beni kandırıyorsanız), lütfen beni düzeltin, ancak sensörün ışığı ayırmaması durumunda, her renk için 256 adımda gördüğü , Normal bir RGB dosya formatının veya RGB renk alanının tüm bu bilgileri içerebileceğini sanmıyorum. Sensörün verileri RGB bilgisi olarak yakaladığının farkındayım, bu nedenle teoride, görüntünün gerçekte olduğu kadar bilgi tutabilecek bir tane varsa RGB renk alanı olabilir.
dürtmek

@poke Burada hile yok, sadece sensör gamını sunan hiçbir RGB formatının olmayacağından şüpheliyim. Ayrımcılıkla ilgili - 16 bit / kanal formatının onu almak için yeterli alan sağladığını düşünüyorum. Örneğin, photo.stackexchange.com/questions/8707/raw-processing-software/… adresinde jrista, Bayer Drizzle adında bir bilgiyi gerçekten mevcut kılmak için tasarlanan bir demosaicing'ten bahseder.
Leonidas

1

Her iki formatın da Artıları ve Eksileri.

Ancak JPEG’in PNG’den daha yaygın olmasının asıl nedeni, JPEG’in ardındaki kişilerin PNG’nin sahip olmadığı agresif lisanslar alması . (www.libpng.org/pub/png/)

Bu MP3'e karşı OGG'ye karşı FLAC'a çok benzer. MP3 Yapımcıları başlangıçta agresif lisans aldı ... popülerliğe öncülük etti. Bundan dolayı, üreticiler lisans almak için MP3’e yaklaşıyor!


0

IMO, her zaman RAW ile çekim yapmalısınız, hafıza maliyetleri konusunda endişelenmiyorsanız, RAW gitmenin yoludur. Bu size işlem sonrası görüntüleri düzeltmek için en iyi fırsatı verir.

Aşağıda bir alıntı: http://www.hackerfactor.com/blog/index.php?/archives/252-PNG-and-Cameras.html

PNG, gerçek 24 bit renkli görüntüleri saklamak için kesinlikle harika. PNG dosyalarını işlemek çok basittir ve uygulamaya özgü alan gerektirmez. Bununla birlikte, hesaplama açısından pahalıdır, birden fazla görüntü saklama kabiliyetinden yoksundur ve meta verilerini yönetmek için pek çok standartlaştırılmış metin alanına sahip değildir.

JPEG, özel alanlarla dolu, boşa harcanan bir dosya formatıdır. Aynı zamanda gerçek renk gösterimi için kötü bir seçimdir. Bununla birlikte, hesaplama açısından ucuzdur, çoklu görüntü depolamayı destekler ve görüntüleri ölçeklendirmek önemsizdir. Ve ne yazık ki, yaygın olarak fiili standart olarak kabul edildi.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.