ML Image Recognition, iOS üzerinde CoreML ve Vision framework’lerini kullanarak fotoğraf kütüphanesinden seçilen görsellerin içeriklerini sınıflandıran bir uygulamadır.
Proje, MobileNetV2 modelini kullanarak nesne tanıma gerçekleştirir ve sonuçları güven yüzdesiyle birlikte kullanıcıya gösterir.
- 📷 Fotoğraf seçimi: Kullanıcı cihazın fotoğraf kütüphanesinden görsel seçebilir.
- 🧠 CoreML + Vision entegrasyonu: Görseller MobileNetV2 modeli ile sınıflandırılır.
- 📊 Sonuç gösterimi: En yüksek olasılıklı sınıflandırma sonucu, güven yüzdesi ile birlikte kullanıcıya gösterilir.
- ⚡ Asenkron çalışma: Model çalıştırma işlemleri DispatchQueue.global üzerinde yapılır, UI güncellemeleri ana thread’de gerçekleştirilir.
- Kullanıcı Change butonuna tıklayarak fotoğraf kütüphanesini açar.
- Seçilen görsel
UIImagePickerController
aracılığıyla alınır veUIImageView
üzerinde gösterilir. - Görsel CIImage formatına dönüştürülür.
VNCoreMLModel
aracılığıyla MobileNetV2 modeli yüklenir.VNCoreMLRequest
oluşturulur ve görsel üzerinde sınıflandırma yapılır.- En yüksek güven yüzdesine sahip sınıflandırma sonucu kullanıcıya label üzerinden gösterilir.
- UIKit → UI bileşenleri (UIImageView, UILabel, UIButton)
- CoreML → Makine öğrenmesi modelini çalıştırma
- Vision → Görselleri işleme ve CoreML entegrasyonu
- MobileNetV2 → Önceden eğitilmiş görüntü sınıflandırma modeli
- UIImagePickerController → Fotoğraf kütüphanesinden görsel seçme
- DispatchQueue → Model çalıştırma işlemleri için çoklu thread kullanımı
- Uygulamayı başlatın ve Change butonuna dokunun.
- Fotoğraf kütüphanenizden bir görsel seçin (örneğin bir uçak fotoğrafı).
- CoreML modeli görseli işler ve sonucu ekranda gösterir.
- 📤 Yüklenen görsel:
✈️ (bir uçak fotoğrafı) - 📊 Çıktı: 90% it's airplane
- Yani model, seçilen görselin %90 olasılıkla bir uçak olduğunu tahmin etmiştir.