QR Kodlar Nasıl Çalışır: Kara Kutusunun İçine Bakış

QR kod ilk bakışta rastgele siyah-beyaz kareler gibi görünse de, her bir kare bir işi yapıyor. Telefonun kamerası deseni okur, içindeki veriyi yeniden inşa eder ve yaklaşık bir saniyede linki ya da mesajı açar.

QR kodun temeli basit: iki boyutlu bir barkod. Geleneksel barkodlar veriyi tek bir çizgi halinde tutuyor, ama QR kodlar tüm ızgarayı kullanıyor. Böylece çok daha fazla bilgiyi küçük bir kareye sıkıştırabiliyor. QR, Quick Response anlamına geliyor ve 1994'te Denso Wave tarafından Japonya'da fabrika hattında araba parçalarını izlemek için icat edildi.

Kodun yapısı üç ana parçadan oluşuyor. Köşelerde yer alan üç büyük kare, kameranın kodu bulmasını ve doğru açıdan okumasını sağlıyor. Aralarındaki ince çizgiler (timing patterns) karesel yapıyı doğru şekilde ayırtmaya yardımcı oluyor. Geriye kalan alan ise asıl veriyi tutuyor: link, metin, Wi-Fi şifresi, hatta bir iletişim kartı.

Veri kodlanırken hata düzeltme katmanı ekleniyor. Kodun yüzde 30'u kadar hasar görmüş olsa bile, kamera yine de okuyor. Bu yüzden bir QR kodun üzerine logo yapıştırabilir ya da kodu kağıda yazdırırken biraz bulanıklaşsa dahi çalışır.

Kameran kodu okuduğunda, önce köşelerdeki kalibrasyon karelerini tanıyor. Sonra ızgarayı tarayarak her modülün (kare) siyah mı beyaz mı olduğunu kaydediyor. Veri binary formatında saklandığı için, bu siyah-beyaz desen aslında 0 ve 1'lerden oluşuyor. Son adımda, hata düzeltme algoritması eksik ya da yanlış okunan bitleri onarıyor.

Bir QR kod ne kadar büyük olursa o kadar fazla veri taşıyabilir. Versiyon 1 (21×21 modül) sadece 41 sayı ya da 25 harf tutuyor. Versiyon 40 (177×177 modül) ise 7 bin sayı ya da 4 bin karakter taşıyabiliyor.

Pratik bir not: Eğer kendi QR kodlarını oluşturacaksan, hata düzeltme seviyesini yüksek tutmak iyi bir fikir. Kodun üzerine bir logo koymak istiyorsan, merkezi yüzde 20'ye kadar kaplayabilirsin. Kodun kontrastı (siyah ve beyaz arasındaki fark) ne kadar keskin olursa, kamera o kadar hızlı okuyor. Teknik detayları burada bulabilirsin.

konu hakkında tepkinizi verebilirsiniz