Share via


Arcfelismerési modell megadása

Ez az útmutató bemutatja, hogyan adhat meg arcészlelési modellt az Azure AI Face szolgáltatáshoz.

A Face szolgáltatás gépi tanulási modellek használatával végez műveleteket az emberi arcokon képeken. Továbbra is fejlesztjük modelljeink pontosságát az ügyfelek visszajelzései és a kutatás terén végzett előrelépések alapján, és ezeket a fejlesztéseket modellfrissítésekként biztosítjuk. A fejlesztők megadhatja, hogy az arcészlelési modell melyik verzióját szeretnék használni; kiválaszthatják a használati esetnek leginkább megfelelő modellt.

A cikkből megtudhatja, hogyan adhatja meg az arcészlelési modellt bizonyos arcműveletek során. A Face szolgáltatás arcfelismerést használ, amikor egy arc képét más adatformává alakítja.

Ha nem biztos abban, hogy a legújabb modellt használja-e, ugorjon a Különböző modellek kiértékelése szakaszra az új modell kiértékeléséhez és az eredmények összehasonlításához az aktuális adatkészlet használatával.

Előfeltételek

Ismernie kell az AI-arcészlelés fogalmát. Ha nem, tekintse meg az arcészlelés fogalmi útmutatóját vagy útmutatóját:

Különböző modellek kiértékelése

A különböző arcészlelési modellek különböző feladatokhoz vannak optimalizálva. A különbségek áttekintéséhez tekintse meg az alábbi táblázatot.

Modell Leírás Teljesítményjegyzetek Attribútumok Arcrészek
detection_01 Alapértelmezett választás az arcfelismerési műveletekhez. Nem kis, oldalnézetes vagy homályos arcokhoz optimalizálva. Az észlelési hívásban megadott fő arcattribútumokat (fej póz, életkor, érzelem stb.) adja vissza. Arc-tájékozódási pontok visszaadása, ha az észlelési hívásban vannak megadva.
detection_02 2019 májusában jelent meg, és opcionálisan elérhető minden arcészlelési műveletben. Jobb pontosság kis, oldalnézetes és homályos arcokon. Nem ad vissza arcattribútumokat. Nem ad vissza arcjelzőket.
detection_03 2021 februárjában jelent meg, és opcionálisan minden arcészlelési műveletben elérhető. További jobb pontosság, beleértve a kisebb arcokat (64x64 képpont) és az elforgatott arc tájolást. Maszk- és fej-póz attribútumokat ad vissza, ha az észlelési hívásban meg van adva. Arc-tájékozódási pontok visszaadása, ha az észlelési hívásban vannak megadva.

Az észlelési modellek teljesítményének összehasonlítására a legjobb módszer az, ha egy mintaadatkészleten használja őket. Javasoljuk, hogy az Detect API-t különböző képeken hívja meg, különösen a sok arcot vagy nehezen látható arcot ábrázoló képeket az egyes észlelési modellek használatával. Ügyeljen arra, hogy az egyes modellek hány arcot ad vissza.

Arcok észlelése megadott modellel

Az arcészlelés megkeresi az emberi arcok határolókeret-helyét, és azonosítja a vizuális nevezetességeiket. Kinyeri az arc funkcióit, és tárolja őket későbbi használatra a felismerési műveletekben.

Az Detect API használatakor hozzárendelheti a modellverziót a detectionModel paraméterhez. A rendelkezésre álló értékek a következők:

  • detection_01
  • detection_02
  • detection_03

A DETECT REST API kérési URL-címe a következőképpen fog kinézni:

https://westus.api.cognitive.microsoft.com/face/v1.0/detect[?returnFaceId][&returnFaceLandmarks][&returnFaceAttributes][&recognitionModel][&returnRecognitionModel][&detectionModel]&subscription-key=<Subscription key>

Ha az ügyfélkódtárat használja, hozzárendelheti az értéket detectionModel egy megfelelő sztringben való átadással. Ha nem rendeli hozzá, az API az alapértelmezett modellverziót használja (detection_01). Tekintse meg a .NET-ügyfélkódtár alábbi kód példáját.

string imageUrl = "https://news.microsoft.com/ceo/assets/photos/06_web.jpg";
var faces = await faceClient.Face.DetectWithUrlAsync(url: imageUrl, returnFaceId: false, returnFaceLandmarks: false, recognitionModel: "recognition_04", detectionModel: "detection_03");

Arc hozzáadása megadott modellel rendelkező személyhez

A Face szolgáltatás képes kinyerni az arcadatokat egy képből, és társítani egy Személy objektummal a Személycsoport hozzáadása Face API-val. Ebben az API-hívásban az észlelési modellt ugyanúgy adhatja meg, mint az Detectben.

Tekintse meg a .NET-ügyfélkódtár alábbi kód példáját.

// Create a PersonGroup and add a person with face detected by "detection_03" model
string personGroupId = "mypersongroupid";
await faceClient.PersonGroup.CreateAsync(personGroupId, "My Person Group Name", recognitionModel: "recognition_04");

string personId = (await faceClient.PersonGroupPerson.CreateAsync(personGroupId, "My Person Name")).PersonId;

string imageUrl = "https://news.microsoft.com/ceo/assets/photos/06_web.jpg";
await client.PersonGroupPerson.AddFaceFromUrlAsync(personGroupId, personId, imageUrl, detectionModel: "detection_03");

Ez a kód létrehoz egy személycsoportot azonosítóvalmypersongroupid, és hozzáad hozzá egy személyt. Ezután hozzáad egy arcot ehhez a személyhez a detection_03 modell használatával. Ha nem adja meg az detectionModel paramétert, az API az alapértelmezett modellt fogja használni. detection_01

Feljegyzés

Nem kell ugyanazt az észlelési modellt használnia egy Személy objektum összes arcához, és nem kell ugyanazt az észlelési modellt használnia, amikor új arcokat észlel egy Személy objektummal való összehasonlításhoz (például a Személycsoport API-ban).

Arc hozzáadása a FaceListhez megadott modellel

Az észlelési modellt akkor is megadhatja, ha arcot ad hozzá egy meglévő FaceList-objektumhoz . Tekintse meg a .NET-ügyfélkódtár alábbi kód példáját.

await faceClient.FaceList.CreateAsync(faceListId, "My face collection", recognitionModel: "recognition_04");

string imageUrl = "https://news.microsoft.com/ceo/assets/photos/06_web.jpg";
await client.FaceList.AddFaceFromUrlAsync(faceListId, imageUrl, detectionModel: "detection_03");

Ez a kód létrehoz egy FaceList nevű nevet My face collection , és hozzáad egy Face-t a detection_03 modellhez. Ha nem adja meg az detectionModel paramétert, az API az alapértelmezett modellt fogja használni. detection_01

Feljegyzés

Nem kell ugyanazt az észlelési modellt használnia egy FaceList-objektum összes arcához, és nem kell ugyanazt az észlelési modellt használnia az új arcok észlelésekor, hogy összehasonlíthassa őket egy FaceList-objektummal .

Következő lépések

Ebben a cikkben megtanulta, hogyan adhatja meg a különböző Face API-khoz használandó észlelési modellt. Ezután kövesse az arcfelismerés és -elemzés első lépéseit ismertető rövid útmutatót.