Üç farklı fikir
Claude’un metin filigranı yazısında izin kelime seçimlerine saklandığını anlatmıştık. Görselde durum farklı: Saklayacak kelime yok, sadece pikseller var. Videoda Dr Mike Pound önce üç kavramı ayırıyor.
- Steganografi: Amaç, bir mesaj olduğunu bile belli etmemek. Mümkün olduğunca çok veri saklamak istersin.
- Filigran (watermark): Amaç gizlilik değil, “bu görseli şu kişi ya da şu süreç üretti” diyebilmek. Birkaç düzine bit yeter, ama iz görsel düzenlense bile yaşamalı.
- Meta veri: Fotoğrafın enstantane gibi bilgileri dosyaya ayrıca yazılır. Kolay düzenlenir, çoğu site yüklemede zaten siler.
Son bitler neden işe yaramıyor?
Her piksel kırmızı, yeşil ve mavi için 8 bitlik değerler taşır. En kolay yol, her değerin son bir iki bitine mesaj yazmak. Değer en fazla 3/255 değişir, göz fark etmez. Sorun şu: Aynı bitleri rastgele değiştiren biri filigranı tek hamlede siler. JPEG sıkıştırması da bu ince ayrıntıları zaten atar.
İki ağ birlikte eğitiliyor
Modern yöntemler sinir ağı kullanıyor. Bir kodlayıcı (encoder) görseli ve kısa bir kodu alır, neredeyse aynı görünen filigranlı bir kopya üretir. Bir çözücü (decoder) bu kopyadan kodu geri okumaya çalışır. İkisi birlikte eğitilir: Kod doğru okunmalı, ama görsel olabildiğince az değişmeli. TrustMark makalesi bunu GAN tabanlı bir yapıyla, yani görselin değiştiğini fark etmeye çalışan üçüncü bir ağla dengeliyor.
Dayanıklılığın sırrı eğitimde. Filigranlı görsel çözücüye gitmeden önce rastgele hırpalanır: kırpılır, döndürülür, rengi oynanır, küçültülür, sıkıştırılır. Çözücü bu bozuk kopyalardan bile kodu bulmayı öğrenir.
TrustMark her boyuttaki görseli şöyle işliyor: Görseli 256 x 256’ya küçültüyor, filigranı orada ekliyor ve sadece aradaki farkı (residual) çıkarıyor. Bu farkı büyütüp asıl görsele ekliyor. Okurken de görseli yine 256’ya küçültüyor. Resmi belgelere göre yük 100 bit. Bunun bir kısmı hata düzeltmeye (BCH) gidiyor, sana seçtiğin moda göre 40 ile 75 bit arası veri kalıyor.
Ne kadar dayanıklı?
Videoya göre filigranlı fotoğraf JPEG kalitesi 75’e düşürülüp küçültüldüğünde kod sorunsuz okundu. Kırpma ve renk doygunluğu artırma da onu silmedi. Görselin yaklaşık yarısı kesilip atılınca ise filigran kayboldu.
Bir de sahtecilik riski var. Filigranlı ve filigransız sürüme sahipsen farkı alıp başka bir fotoğrafa basabilirsin. Gerçek bir fotoğrafı böylece “yapay zekâ üretimi” gibi gösterebilirsin. Videoya göre yeni sistemler buna karşı çözücüye, başka bir görsele taşınmış filigranı reddetmeyi de öğretiyor. TrustMark ayrıca filigranı bilerek silen bir model de yayınladı (TrustMark-RM). Amaç, bir görseli eski izi temizleyip yeniden filigranlayabilmek.
Filigran neyi kanıtlar?
Filigran sadece “bu görsel şu süreçten geçti” der. Yokluğu bir şey kanıtlamaz: Filigransız bir görsel yine yapay zekâ ürünü olabilir. TrustMark açık kaynak olduğu için de herkes görseline kod gömebilir. Yani bu iz tek başına “fotoğraf gerçek” demeye yetmez.
Güven için dijital imza gerekiyor. C2PA (Content Credentials) standardında görselin kökeni, X.509 sertifikasıyla imzalanmış bir manifestte tutuluyor. Meta veri silinirse filigran devreye giriyor: Standart buna “soft binding” diyor, yani görseli kayıtlı manifestiyle yeniden eşleştirmenin yolu. TrustMark’ın Q, C ve P varyantları C2PA’nın onaylı algoritma listesinde. Google’ın SynthID’si benzer bir iş yapıyor, ama kodu açık değil. Bir görseli Google’ın kendi araçlarıyla kontrol edebiliyorsun.
Düşün
- Bir fotoğraf yarışması “yapay zekâ kullanılmadı” kanıtı isterse, filigran mı yoksa imza mı işe yarar? Neden?
- Filigranı açık kaynak yapmak onu atlatmayı kolaylaştırır mı, yoksa güvenilirliğini mi artırır?
Videoyu izle
Kaynaklar (8, İngilizce)
- Computerphile: How Image Watermarking Works (video) (yeni sekmede açılır)
- Bui, Agarwal, Collomosse: TrustMark: Universal Watermarking for Arbitrary Resolution Images (arXiv) (yeni sekmede açılır)
- Bui, Agarwal, Collomosse: TrustMark: Robust Watermarking and Watermark Removal for Arbitrary Resolution Images (ICCV 2025) (yeni sekmede açılır)
- GitHub: adobe/trustmark (yeni sekmede açılır)
- TrustMark configuration (model variants, error correction, 256 x 256 residual) (yeni sekmede açılır)
- C2PA Technical Specification 2.2 (hard and soft bindings) (yeni sekmede açılır)
- C2PA: Soft binding algorithm list (yeni sekmede açılır)
- Google DeepMind: SynthID (yeni sekmede açılır)
Kendi cümlelerimizle yazılmış bir özettir, çeviri değildir. Tüm kaynaklar yukarıda.