Vision Framework ile El Takibi ve Vücut Pozisyonu Algılama

IOS 14’ün gelmesiyle birlikte, Apple’ın Vision Framework’üne de yeni geliştirmeler ve özellikler eklendi. Apple Vision’ın ne olduğu hakkında bilginiz yoksa buradan bilgi alabilirsiniz: https://developer.apple.com/documentation/vision/
Vision Framework’e yeni eklenen özelliklere değinecek olursak; video ve fotoğraflar içerisindeki kişilerin el takibi ve vücut pozisyon tahmini yapılabilmektedir. Orangeloops makalesinde Vision framework’ün bu yeni özelliği incelenmiş ve test edilmiş. Bu yazımızda Orangeloops makalesinde yapılan incelemeden bahsedeceğiz.
iOS 14’teki Vision’da Neler Yeni?
Vision Framework’ündeki yenilikleri Apple ilk olarak WWDC 2020 (World-Wide-Developer-Conference)’da duyurmuştu. El ve vücut takibi yapabildiğinden bu etkinlikte bahsedilmişti. Güncellenen Vision Framework’teki yenilikler ise şunlar;
Yol Tahmini: Verilen video sahnesindeki bir objenin hareketin devamında gideceği yönü analiz etme ve algılama yeteneği bulunmaktadır. iOS 14 ile duyurulan VNDetectTrajectoriesRequest ile spor karşılaşmalarındaki topun hareketi tespit edilip, analiz edilebilmektedir.
Şekil Algılama: Bir görselin içindeki şekilleri algılayabilmektedir. Yapılabilecek işlemler VNDetectContoursRequest class'ı altında tanımlanmıştır. Özel nesneleri tanıyıp algılayabilmek için kullanışlı senaryolar sunulmaktadır.
Optik Akış: Verilen sahne içerisindeki hareketin algılanması ve yönü değiştirilmesi ile ilgili değişiklikler tespit edilebilmektedir. VNGenerateOpticalFlowRequest class’ı altında yapılabilecek işlemler yer almaktadır.
Vision ile El Takibi ve Vücut Pozisyon Algılama
Vision Framework’ü insanların vücut ve el pozisyonlarını algılayabilmenize izin verir. İnsan vücudundaki belirli eklem noktalarını sanal verilere dönüştürür. Görselde görüldüğü gibi vücut üzerinde 19 nokta tespit edilmektedir. Uygulamanızda kullanabileceğiniz bu 19 nokta sayısal değerlere dönüştürülmektedir. Vücut noktalarının algılanması ile ilgili işlemleri VNDetectHumanBodyPoseRequest class’ı altında görebilirsiniz.

El ve parmakların algılanması ile ilgil işlemleri de VNDetectHumanHandPoseRequest class’ı altında görebilirsiniz. Her parmak için 4 kırılım noktası, bilek için bir kırılım noktası ve el için toplamda 21 kırılım noktası sayısal verilere dönüştürülebilmektedir.

Avantajlar & Dezavantajlar
Kullanımı ve projeye entegre etmesi gayet basit. AVFoundation bilgisi olan bir geliştirici kolaylıkla kodları anlayabilir ve özellik geliştirebilir.
Vücudun tamamı görselde yer alıyorsa, vücut pozisyonu net olarak algılanmakta ve iyi bir şekilde yüksek doğrulukla çalışmaktadır.
Vücudun yana baktığı durumlarda veya vücudun herhangi bir bölgesinin görünmediği durumlarda görünmeyen kısım Vision tarafından tahmin edilmeye çalışıyor.
Düşük ışıklı veya karanlık ortamda doğruluğu düşüktür.
Vision & Vücut Pozisyon Algılama Kullanım Alanları
Alışveriş Esnasında Vücut İzleme
Vücut tanıma uygulaması dendiğinde ilk akla gelen genelde sihirli ayna uygulaması oluyor. Son yıllarda sanal gerçeklik teknolojisinin gelişmesiyle birlikte popülerliği artmıştır. Kıyafet satın almak isteyen bir kişi mağazaya gider ve kıyafeti sanal olarak giyer.
Spor ve Vücut Geliştirme Analizi
Vision’ın CoreML yeteneği ile spor analizi için geniş çalışma alanları mevcut. Kişiler performanslarını üst seviyeye çıkarabilmek ve geri bildirim alabilmektedir. Örnek olarak, Vision ve CoreML futbol ve basketbol’da topa vuruşları analiz edebilmektedir. Oyuncular topun yönünü, hızını ve açısını gerçek zamanlı olarak görebilmektedir. Apple CoreML ve Vision’ın yeteneklerinin sergilendiği bir örnek uygulama bile geliştirmiş. https://developer.apple.com/documentation/vision/building_a_feature-rich_app_for_sports_analysis
Oyun ve Eğlence
Vücut algılama’nın sıklıkla kullanıldığı bir diğer sektör de oyun ve eplence sektörüdür. Sanal gerçeklik deneyimi ile birleştirildiğinde vücut ile birlikte sanal oyun deneyimi bir üst seviyeye çıkmaktadır. Atari oynadığımız zamanlardan Duck Hunt(Ördek Avı) oyununu hatırlayın. Vision ile elleriniz algılanabilir ve elinizi silah olarak kullanabilirsiniz.
Konu ile ilgili daha fazla bilgi için:
#AppleVision #VisionCoreML #VisionFramework #BodyandHandDetection