Xamarin.Forms Görüntü İşleme (Image Processing) – 3. Bölüm

Xamarin

Evet kaldığımız yerden devam edelim. Baya uzun bir ara oldu, dediklerimin tümünden vazgeçtim ve çok farklı bir yöne yöneldim. Alın OpenCV’si de EmguCV’de sizin olsun dedim (gerçi bana verdikleri örneği hala incelemedim 🙂 🙂 ). 

Bu bölümün çıkış noktası bu Blog oldu.

Bu blog’da kullanılan araçları kullanıp tabi sıfırdan; araçların kendi kaynaklarından yola çıkıp uygulamayı oluşturacağız (tabi bizde öyle beleş yok!).

İlk olarak Mobile Vision’un bu yazısı üzerinden gideceğim. Ne güzel anlatmışlar adamlar, bir sorun çıkarsa Github’da sorunsuz çalışan proje de var yani çok iyi (tabi Github’da ki dosyayı indirip denemedim bile inşallah çalışan bir şeydir ve dediğim gibi bizde beleş yok!).

Şimdi proje türü olarak Shared Project’de Xamarin.Forms mu yoksa Native mi yoksa sadece Xamarin.Android’de mi oluşturup çalışsam? Mobile Vision iki işletime destek veriyor: 1. Android   2. IOS. Ama ben ilk ilk ilk önce kesin olması için Xamarin.Android’den devam edeceğim sonra birde Shared Project’de denerim.

NuGet’e gelip Xamarin Google Play Services Vision yazıp resimdekini indiriyoruz. İndirebildiyseniz ne ala, yoksa benim gibi “Target” versiyon hatası aldıysanız ve her ne kadar bunu properties’den değiştirmeye çalışıp hala indirmede hata aldıysanız gelin bi sarılalım.

He tamam, sorun oradan halledilmeyecekmiş, tee nereden sonra anladım. 🙂 Android SDK’yi açın ve Android 6.0 ve Android 7.0’ı indirin. 

(Bunlar inesiye kadar kalkın hadi, gidin mutfağa ve kendinize bir kahve yapın, zira ben öyle yapacağım.)

(Kalkmasaydım. 🙁 4 kişiye birden kahve yapmak zorunda kaldım.)

Tamamdır; NuGet’ten paketimiz indi. Birde References’ı kontrol ettim ve paketler tam.

Şimdi kodlarını yazmaya başlayacağım ama AppCompat diye bir kütüphanede lazım olabilir, bunu yazdıkça çıkan hatalarla değerlendirmemiz lazım.

En son üst paragrafı yazdıktan 1 saat sonra Face Recognition yapmayı başardım. Aynı kütüphaneyi kullandım ve Mobil Vision’un hazır sınıflarını kullandım. Şunu diyebilirsiniz: “sınıf kullandıysan neden kütüphaneleri de indirdin?” diye sorabilirsiniz bende şöyle derim: “Sınıf ile kütüphanedeki diğer sınıflar uyum içinde çalışacağı için biri olmadan biri olmuyor.” derim. (Ve siz de diyeceksiniz ki: “Beceremedim demiyor da” 😀 😀 ). Yok ama gerçekten dediğim gibi. Zaten hazır kullandığım sınıfta kütüphaneden yine import işlemlerinin olduğunu göreceksiniz. Şimdi adım adım anlatacağım nasıl yapacağımızı:

Öncelikle size vereceğim üç (isimleri aşağıda) .cs dosyaları projeye ekleyeceksiniz: (Buraya tıklayarak gidebilirsiniz!)

CameraSourcePreview

FaceGraphic

GraphicOverlay

MainActivity.cs’i de attım ben ama isteyen birazdan Gist’ten de kodları alabilir, kodlar çok uzun o yüzden MainActivity’de projedeki MainActivity ile yerini değiştirin :). 

Dediğim gibi kod çok uzun ama Gist’ten bakmak isterseniz aşağıdaki linke tıklayın.

https://gist.github.com/SamedBll/6ffeeef2efb355fa72fdc4d8a5a487ce

Sonuçta dosyalarınız aşağıda ki gibi olacaktır:

Tabi ki Main.axml kodlarını unutmamak lazım. Direkt Source’a bu kodları koyun:

 


Ve sonunda Designer da böyle olmalı:

Son son son olarak yapmamız gereken bir şey kaldı; o da kamera izinini açmak. Çok basit:

  1. Solution Explorer’da “Properties”e çift tıklayın
  2. “Android Manifest” sekmesine gelin
  3. “Required permissions” kısmından “CAMERA” kısmını işaretleyin

TAMAMDIR! 🙂 Artık projenizi başlatıp deneyebilirsiniz.

Ben birkaç örnek resim koyuyorum:

                      

Birkaç sorunu var, bunları diğer bölümlerde düzeltmiş olacağız. Diğer bölümde görüşmek üzere. 🙂 

Previous
Xamarin.Forms Farklı Cihazlarda Gerçek Boyutlar – Bölüm 22
Next
Xamarin.Forms Sığdırma İşlemleri – 23. Bölüm

Leave a comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir