Eye tracking dışarıdan çok hassas bir teknoloji gibi görünür: sistem kişinin nereye baktığını tahmin eder, biz de bu sinyali dikkat verisine dönüştürürüz. Pratikte ise tablo biraz daha dağınık. Doğruluk bir katılımcıdan diğerine, bir odadan diğerine, hatta bazen iki kalibrasyon denemesi arasında bile ciddi şekilde değişebilir.

Bu durum özellikle webcam tabanlı eye-tracking için geçerli. Ticari eye tracker cihazları doğrudan ölçüm için tasarlanırken, WebGazer gibi tarayıcı tabanlı araçlar erişilebilirlik tarafında güçlüdür. Özel donanım gerektirmez, maliyeti düşüktür ve normal bir web uygulaması içinde deney yürütmeyi mümkün kılar. Bunun karşılığında sinyal kalitesi konusunda daha dürüst olmamız gerekir.

Sonucu etkileyen çok fazla faktör var: ışık, kamera açısı, ekran boyutu, baş hareketi, gözlük kullanımı, kalibrasyon kalitesi, tarayıcı davranışı ve kullanıcının görev boyunca ne kadar stabil oturduğu. Bir kurulumda kabul edilebilir görünen gaze noktası, başka bir kurulumda oldukça gürültülü olabilir. Bunu görmezden gelirsek sonraki analizler kırılgan hale gelir.

Bu yüzden Web-Based Eye Tracker Accuracy Finder'ı geliştirdim. Amaç yeni bir black-box eye-tracking demosu yapmak değildi. Amaç bir ölçüm katmanı kurmaktı: gaze verisi araştırma veya AI pipeline'ında kullanılmadan önce, mevcut sinyalin yeterince güvenilir olup olmadığını ölçmek.

Fikir basit. Kullanıcı önce tarayıcıda kalibrasyon akışını tamamlıyor. Ardından sistem ekranda bilinen hedef hücreleri sırayla gösteriyor. Kullanıcı bu hedefleri takip ederken uygulama WebGazer'dan gaze koordinatlarını ve zaman damgalarını kaydediyor. Backend her gaze noktasını 7x7 ekran ızgarasına eşliyor ve beş saniyelik pencerelerde bakışın beklenen hedef hücreye düşüp düşmediğini kontrol ediyor.

Sistem yalnızca ham x-y koordinatlarını saklamak yerine yorumlanabilir bir doğruluk skoru üretiyor. Şu soruları cevaplayabiliyoruz: Bu zaman penceresinde gaze verisinin ne kadarı hedef hücreye düştü? Sinyal komşu hücrelere kaydı mı? Dağılım tek bir bölgede yoğunlaştı mı, yoksa ekrana dağılmış mı?

Ayrıca I-VT ve I-DT tarzı fixation-processing yardımcıları ekledim. Bu önemli, çünkü ham gaze akışlarında hızlı geçişler, gürültü ve kararsız örnekler bulunur. Fixation filtering, saccade benzeri hareketlerin etkisini azaltır ve sonucu gerçekten ilgilendiğimiz daha stabil görsel dikkat sinyaline yaklaştırır.

Çıktı olarak hedef pencereleri için pie chart diagnostikleri üretiliyor. Bunlar sadece dekoratif figürler değil; hatanın nerede oluştuğunu görünür hale getiriyor. Beklenen hücrenin baskın olması gerekirken dağılım birçok hücreye yayılıyorsa, bu kalibrasyonun veya ortamın sonraki kullanım için yeterince güvenilir olmayabileceğini gösterir.

Bu tür validasyon her web tabanlı eye-tracking projesi için önemli, ama hassas uygulamalarda daha da kritik. Gaze özellikleri daha sonra cognitive modeling, sağlıkla ilişkili screening desteği veya machine learning içinde kullanılacaksa, pipeline giriş sinyaline körü körüne güvenmemeli. Veri kalitesi modelin bir parçasıdır.

Benim için bu proje küçük ama önemli bir mühendislik dersi: yorumdan önce ölçüm gelir. Gaze verisi ne anlama geliyor diye sormadan önce, eye tracker bu soruyu destekleyecek kadar iyi ölçüyor mu diye sormalıyız.