Yüz tanıma veri yapıları

Bu makalede yüz tanıma işlemleri için Yüz Tanıma hizmetinde kullanılan veri yapıları açıklanmaktadır. Bu veri yapıları yüzlerde ve kişilerde veri tutar.

Dikkat

Yüz tanıma hizmeti erişimi, Sorumlu yapay zeka ilkelerimizi desteklemek için uygunluk ve kullanım ölçütlerine göre sınırlıdır. Yüz tanıma hizmeti yalnızca Microsoft tarafından yönetilen müşteriler ve iş ortakları tarafından kullanılabilir. Erişim için başvurmak üzere Yüz Tanıma başvuru formunu kullanın. Daha fazla bilgi için Kısıtlı Erişim sayfasına bakın.

Tanımla ile kullanılan veri yapıları

Yüz Tanıma API'si, yüz tanıma verilerini Kişi nesneleri biçiminde tutmak için kapsayıcı veri yapılarını kullanır. Bu amaçla en eskiden en yeniye kadar listelenen üç tür kapsayıcı vardır. Her zaman en yenisini kullanmanızı öneririz.

Kişi Grubu

PersonGroup en küçük kapsayıcı veri yapısıdır.

  • PersonGroup oluştururken bir tanıma modeli belirtmeniz gerekir. Bu PersonGroup'a herhangi bir yüz eklendiğinde, bunları işlemek için bu modeli kullanır. Bu modelin, detect API'deki Face ID ile eşleşen bir model sürümüne sahip olması gerekir.
  • Yeni yüz verilerinin Tanımlama API'si sonuçlarına yansıtılabilmesi için Train API'sini çağırmanız gerekir. Buna yüz ekleme/kaldırma ve kişi ekleme/kaldırma dahildir.
  • Ücretsiz katman aboneliği için en fazla 1.000 Kişi barındırabilir. S0 ücretli abonelikte en fazla 10.000 kişi olabilir.

PersonGroupPerson , tanımlanacak bir kişiyi temsil eder. En fazla 248 yüz barındırabilir.

Büyük Kişi Grubu

LargePersonGroup , 1 milyona kadar varlığı (S0 katman aboneliği için) desteklemeye yönelik daha sonraki bir veri yapısıdır. Büyük ölçekli verileri destekleyecek şekilde iyileştirilmiştir. PersonGroup özelliklerinin çoğunu paylaşır: Tanıma modelinin oluşturulma aşamasında belirtilmesi ve kullanılmadan önce Eğitim API'sinin çağrılması gerekir.

Kişi Dizini

PersonDirectory , bu türdeki en yeni veri yapısıdır. Daha büyük bir ölçeği ve daha yüksek doğruluğu destekler. Her Azure Yüz Tanıma kaynağının tek bir varsayılan PersonDirectory veri yapısı vardır. PersonDirectoryPerson nesnelerinin düz bir listesidir ve 20 milyona kadar tutabilir.

PersonDirectoryPerson , tanımlanacak bir kişiyi temsil eder. Eski PersonGroupPerson modeline bağlı olarak, farklı tanıma modellerinden yüzleri aynı kişiye eklemenize olanak tanır. Ancak, Tanımla işlemi yalnızca aynı tanıma modeliyle elde edilen yüzleri eşleştirebilir.

DynamicPersonGroup, bir PersonDirectoryPerson'a dinamik olarak başvurmanızı sağlayan basit bir veri yapısıdır. Eğitme işlemini gerektirmez: Veriler güncelleştirildikten sonra Tanımlama API'siyle kullanılmaya hazır olur.

Tanımlama işlemi için yerinde bir kişi kimliği listesi de kullanabilirsiniz. Bu, tanımlayacak daha dar bir grup belirtmenize olanak tanır. Büyük gruplarda tanımlama performansını geliştirmek için bunu el ile yapabilirsiniz.

Yukarıdaki veri yapıları birlikte kullanılabilir. Örneğin:

  • Erişim denetim sisteminde, PersonDirectory bir şirketin tüm çalışanlarını temsil edebilir, ancak daha küçük bir DynamicPersonGroup yalnızca binanın tek bir katına erişimi olan çalışanları temsil edebilir.
  • Bir uçuş ekleme sisteminde PersonDirectory, havayolu şirketinin tüm müşterilerini temsil edebilir, ancak DynamicPersonGroup yalnızca belirli bir uçuştaki yolcuları temsil eder. Dahili bir kişi kimlik listesi, son dakika değişikliği yapan yolcuları temsil edebilir.

Daha fazla bilgi için lütfen PersonDirectory nasıl yapılır kılavuzuna bakın. LargePersonGroup ile PersonDirectory arasında hızlı bir karşılaştırma:

Ayrıntı BüyükKişiGrubu Kişi Rehberi
Kapasite LargePersonGroup en fazla 1 milyon PersonGroupPerson nesnesi barındırabilir. Koleksiyon en fazla 20 milyon PersonDirectoryPerson kimliği depolayabilir.
PersonURI /largepersongroups/{groupId}/persons/{personId} (/v1.0-preview-or-above)/persons/{personId}
Sahiplik PersonGroupPerson nesneleri yalnızca ait oldukları LargePersonGroup'a aittir. Aynı kimliğin birden çok grupta tutulmasını istiyorsanız, her grup için Büyük Kişi Grubu Kişisi Oluştur ve Büyük Kişi Grubu Kişi Yüzü Ekle işlemlerini ayrı ayrı yapmalısınız, böylece birkaç grupta farklı kişi kimlikleri setine sahip olursunuz. PersonDirectoryPerson nesneleri doğrudan PersonDirectory içinde düz bir liste olarak depolanır. Kişi Dizininden Tanımlamak için yerinde bir kişi kimliği listesi kullanabilir veya isteğe bağlı olarak Dinamik Kişi Grubu Oluştur ve gruba karma olarak bir kişi ekleyebilirsiniz. Oluşturulan PersonDirectoryPerson nesnesine, yineleme olmaksızın birden çok DynamicPersonGroup tarafından referans verilebilir.
Model Tanıma modeli LargePersonGroup tarafından belirlenir. Tüm PersonGroupPerson nesnelerinin yeni yüzleri, bu modele eklendiklerinde bu modelle ilişkilendirildi. PersonDirectoryPerson nesnesi, tanıma modeli başına ayrı depolamayı hazırlar. Yeni yüzler eklediğinizde modeli belirtebilirsiniz, ancak Tanımlama API'si yalnızca sorgu yüzleriyle ilişkili aynı tanıma modeliyle elde edilen yüzlerle eşleşebilir.
Eğitim Yeni yüz/kişi verilerinin Tanımlama API'si sonuçlarına yansıtılabilmesi için Eğitim API'sini çağırmanız gerekir. Eğitme çağrıları yapmanıza gerek yoktur, ancak Kişi Yüzü Ekle API’si gibi bir API uzun süre çalışan bir işlem olur, bu nedenle güncelleştirmenin tamamlanıp tamamlanmadığını kontrol etmek için yanıt üst bilgisinde yer alan "İşlem-Konum"u kullanmanız gerekir.
Cleanup Büyük Kişi Grubunu Sil, yüz verileriyle birlikte içerdiği tüm PersonGroupPerson nesnelerini de siler. Dinamik Kişi Grubunu Sil seçeneği yalnızca PersonDirectoryPerson üzerindeki referansı kaldıracaktır. Gerçek kişiyi ve yüz verilerini silmek için bkz . Kişi Silme.

Benzerlerini Bul ile kullanılan veri yapıları

Tanımla API'sinden farklı olarak Benzerini Bul API'si, bir Kişinin kaydının ayarlanmasının zor olduğu uygulamalarda (örneğin, video analizinden veya fotoğraf albümü analizinden yakalanan yüz resimleri) kullanılır.

FaceList

FaceList kalıcı yüzlerin düz bir listesini temsil eder. 1000'e kadar yüzü barındırabilir.

LargeFaceList

LargeFaceList, 1.000.000'e kadar yüzü tutabilen daha yeni bir sürümdür.

Sonraki adım

Yüz verisi yapılarını artık bildiğinize göre, Tanımla işleminde bunları kullanan bir betik yazın.