Telefon fotoğrafından optik form okuma
Erkan Ulu Ortaokulu'nda öğretmenler optik formların fotoğrafını çeker; YOLO cevap satırlarını bulur, özel eğitilmiş bir görsel-dil modeli işaretleri okur, emin olunamayanlar öğretmene gider.
- Müşteri Erkan Ulu Ortaokulu
- Sektör Eğitim (ortaokul)
- Konum İstanbul
- Geliştiren Savaş Tutumlu
- Durum Okulda kullanımda
Kısaca
- Girdi
- Okulun kullandığı cevap kâğıtlarının telefon fotoğrafları ya da taramaları
- Okuma
- YOLO ile satır tespiti, ardından vLLM üzerinde çalışan, özel eğitilmiş açık kaynak bir görsel-dil modeli
- Güvence
- Güven eşiğinin altında kalan okumalar öğretmenin inceleme listesinde bekler
- Çıktı
- Her öğrencinin cevapları okul portalında
Çözülmesi gereken sorun
Öğretmenler her sınav haftasında öğrencilerin cevaplarını okul portalına tek tek elle giriyordu ve bu iş saatler sürüyordu.
Elle veri girişi
Cevaplar kâğıtlardan öğrenci öğrenci giriliyordu. Bu hem yavaştı hem de notlara yazım hataları karışıyordu.
Gerçek telefon fotoğrafları
Fotoğraflar eğik, gölgeli ya da kırışık kâğıtlarla gelir; öğrenciler cevaplarını silip yeniden işaretler.
Okulun kendi formları
Okul, optik okuyucu için özel form bastırmak yerine kendi cevap kâğıdı düzenini korumak istedi.
Nasıl çalışır
Fotoğraftan portala dört adım. Her adım, kendi kontrolü olan ayrı bir araçtır.
1. Fotoğraf
Öğretmen formları telefonla çeker ya da tarar. Özel form ya da optik okuyucu cihazı gerekmez.
2. Satırları bulma
Bir YOLO modeli her cevap satırını bulur ve kırpar; eğik çekimi, gölgeyi ve kırışık kâğıdı hesaba katar.
3. İşaretleri okuma
vLLM üzerinde çalışan, özel eğitilmiş açık kaynak bir görsel-dil modeli, yarım silinmiş işaretler ve düzeltmeler dahil, öğrencinin hangi seçeneği işaretlemek istediğini okur.
4. Kontrol, sonra kayıt
Her okumanın bir güven puanı vardır. Emin olunan sonuçlar okul portalına gider; diğerleri öğretmenin inceleme listesine düşer.
Neden ajan yapısı: İşi araçlara bölmek her parçanın ayrı ayrı kontrol edilmesini sağlar, böylece daha az hata fark edilmeden geçer. Geometriyi tespit modeli, okumayı görsel-dil modeli üstlenir; hiçbir sonuç kaydedilmeden önce form düzenine göre bir doğrulama adımı çalışır. Okuma belirsiz çıkarsa sistem, öğretmene sormadan önce satırı farklı bir istemle yeniden okur.
Teknik mimari
Hattın parçaları ve her form grubu için çalışan döngü.
Bileşenler
- Tarama web uygulaması: okul portalından belirli bir öğrenci ve sınav için açılır; formu çeker, okumaya gönderir ve sonuçları portala geri yazar.
- Ön işleme: yön düzeltme, Hough çizgileriyle eğiklik düzeltme ve uyarlamalı eşikleme.
- Satır tespit modeli: cevap satırlarının bantlarını bulan ve kırpmaları sabitleyen bir YOLO modeli.
- Okuyucu: vLLM üzerinde çalışan, özel eğitilmiş açık kaynak bir görsel-dil modeli.
- Son işleme: güven eşiği ve beklenen form düzenine göre kontroller.
- İş kuyruğu: formlar arka planda, gerektiğinde yeniden denenerek okunur; uygulama beklerken ilerlemeyi gösterir.
- İnceleme listesi: güveni düşük okumalar tahmin edilmez, öğretmeni bekler.
Test
Hat, gerçek koşullarda çekilmiş ve elle etiketlenmiş cevap kâğıtlarıyla test edilir: farklı ışık, eğik sayfalar, farklı kalemler ve kâğıttaki fazladan işaretler.
Sistem akışı
+--------------------+ +--------------------+
| Tarama uygulaması |----->| Ön işleme |
| (portaldan açılır) | | eğiklik, gürültü |
+--------------------+ +--------------------+
| |
v v
+--------------------+ +--------------------+
| YOLO tespit modeli | | Satır kırpmaları |
+--------------------+ +--------------------+
| |
v v
+--------------------+ +--------------------+
| vLLM VLM |<---->| Ajan/doğrulayıcı |
| seçenek okuma | | istemler, kurallar |
+--------------------+ +--------------------+
| |
v v
+--------------------+ +--------------------+
| Sonuçlar |----->| Okul portalı |
+--------------------+ +--------------------+
İşleme döngüsü (sadeleştirilmiş)
for (sheet in batch) {
img = preprocess(sheet)
rows = yolo_detect_rows(img)
answers = []
for (r in rows) {
crop = smart_crop(img, r)
read = vlm_read_options(crop, prompt_schema)
if (read.conf < CONF_MIN) {
read = vlm_read_options(crop, prompt_alt)
}
answers.push(resolve(read))
}
checked = verify_and_align(answers, layout_map)
if (checked.status == "ok") {
persist(checked, portal_api)
} else {
enqueue_review(sheet, checked.issues)
}
}
Okulda ne değişti
- Öğretmenler her cevabı portala yazmak yerine cevap kâğıtlarının fotoğrafını çeker.
- Modelin emin olmadığı okumalar tahmin edilmez, öğretmene gider.
- Okul kendi cevap kâğıtlarını kullanmaya devam eder: özel form ya da optik okuyucu cihazı gerekmez.
- 2026'dan beri aynı sonuçlar, LGS için öğrenci ve konu bazında analize de kaynak olur.
Rol: Projenin sahibi Savaş Tutumlu'dur. İlk prototip Mayıs 2025'te bir proje ortağıyla birlikte başlatıldı.
Zaman çizelgesi
- Mayıs 2025 İlk sürüm: çoktan seçmeli sınavların telefon fotoğrafları okul portalında sonuçlara dönüştü.
- 2026 LGS için öğrenci ve konu bazında performans panelleri sunan bir sınav analizine genişletildi.
- Bugün Okulda kullanımda.
İlgili hizmetler ve yazılar
Bu sistemin arkasındaki hizmetler ve konuyu daha ayrıntılı anlatan yazılar.
Görüntü işleme ve OCR
Kendi belgelerinizle eğitilen ve yayına çıkmadan önce test edilen görüntü modelleri.
HizmetYapay zekâ entegrasyonu
Kendi işini kontrol eden ve emin olmadığında insana soran yapay zekâ ajanları.
HizmetÖzel yazılım geliştirme
Okulun portalı gibi, kullanmakta olduğunuz sistemlere bağlanan yeni araçlar.
Yazılar (İngilizce)
Yapay zekâ ile cevap kâğıdı değerlendirme nasıl çalışır
Bu projenin arkasındaki hat, adım adım.
YazıOptik okuyucu mu, yapay zekâ ile okuma mı?
Klasik optik form okuyucularla görsel modellerin karşılaştırması ve hangisinin ne zaman uygun olduğu.
YazıBir modeli kendi verinizle eğitmenin maliyeti
GPU fiyatları ve kendi verinizle ince ayar yapmanın hesabı.