Arcfelismerési modell megadása
Figyelemfelhívás
A Face Service hozzáférése a jogosultsági és használati feltételek alapján korlátozott a felelős AI-alapelvek támogatása érdekében. A Face service csak a Microsoft által felügyelt ügyfelek és partnerek számára érhető el. A Hozzáférés igényléséhez használja a Face Recognition beviteli űrlapot . További információt a Face korlátozott hozzáférésű oldalán talál.
Ez az útmutató bemutatja, hogyan adhat meg arcfelismerési modellt az arcfelismeréshez, az azonosításhoz és a hasonlóság kereséséhez az Azure AI Face szolgáltatással.
A Face szolgáltatás gépi tanulási modellek használatával végez műveleteket a képeken látható emberi arcokon. 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 az arcfelismerési modell melyik verzióját szeretnék használni, és kiválaszthatják a használati esetnek leginkább megfelelő modellt.
Modellkompatibilitás
Az Azure AI Face szolgáltatás négy felismerési modellel rendelkezik. A recognition_01 (2017-ben közzétett), recognition_02 (2019-ben közzétett) és a recognition_03 (2020-ban közzétett) modellek folyamatosan támogatottak, hogy a FaceLists vagy a PersonGroupe modellekkel létrehozott felhasználói visszamenőleges kompatibilitást biztosítsanak. A FaceList vagy a PersonGroup mindig azt a felismerési modellt használja, amellyel létrejött, és új arcok lesznek társítva ehhez a modellhez a hozzáadásukkor. Ez a létrehozás után nem módosítható, és az ügyfeleknek a megfelelő felismerési modellt kell használniuk a megfelelő FaceListvagy PersonGroup használatával.
A későbbi felismerési modellekre a saját kényelme szerint válthat; Azonban létre kell hoznia új FaceLists- és PersonGroups-csoportokat a választott felismerési modellel.
Ajánlott modell
A recognition_04 modell (közzétéve: 2021) a jelenleg elérhető legpontosabb modell. Ha Ön új ügyfél, javasoljuk, hogy használja ezt a modellt. Recognition_04 jobb pontosságot biztosít a hasonlóságok és a személyegyeztetés összehasonlításához. Recognition_04 javítja az arcfedőt viselő regisztrált felhasználók (sebészeti maszkok, N95 maszkok, ruhamaszkok) felismerését. Mostantól biztonságos és zökkenőmentes felhasználói élményeket hozhat létre, amelyek a legújabb detection_03 modellt használják annak észlelésére, hogy egy regisztrált felhasználó arcvédőt visel-e. Ezután a legújabb recognition_04 modell használatával felismerheti az identitásukat. Minden modell a többitől függetlenül működik, és az egyik modellhez beállított megbízhatósági küszöbértéket nem kell összehasonlítani a többi felismerési modellben.
Ebből a cikkből megtudhatja, hogyan adhat meg egy kiválasztott modellt különböző Face-műveletekben, miközben elkerülheti a modellütközéseket. Ha Ön haladó felhasználó, és szeretné meghatározni, hogy a legújabb modellre kell-e váltania, ugorjon a Különböző modellek kiértékelése szakaszra. Kiértékelheti az új modellt, és összehasonlíthatja az eredményeket az aktuális adatkészlettel.
Előfeltételek
Ismernie kell az AI arcészlelés és -azonosítás fogalmait. Ha nem, először tekintse meg az alábbi útmutatókat:
Arcok észlelése megadott modellel
Az arcfelismerés azonosítja az emberi arcok vizuális nevezetességeit, és megkeresi a határolókeret helyét. Emellett kinyeri az arc funkcióit, és ideiglenesen, legfeljebb 24 órán át tárolja őket azonosítás céljából. Mindezek az információk egy arc ábrázolását alkotják.
A felismerési modell az arcfunkciók kinyerésekor használatos, így az Észlelés művelet végrehajtásakor megadhatja a modellverziót.
Az Detect API használatakor rendelje hozzá a modellverziót a recognitionModel
paraméterhez. A rendelkezésre álló értékek a következők:
recognition_01
recognition_02
recognition_03
recognition_04
Opcionálisan megadhatja a returnRecognitionModel paramétert (alapértelmezett hamis), hogy jelezze, hogy a recognitionModel-t válaszként kell-e visszaadni. A REST API észlelése kérési URL-címe így fog kinézni:
https://westus.api.cognitive.microsoft.com/face/v1.0/detect[?returnFaceId][&returnFaceLandmarks][&returnFaceAttributes][&recognitionModel][&returnRecognitionModel]&subscription-key=<Subscription key>
Ha az ügyfélkódtárat használja, hozzárendelheti az értéket recognitionModel
egy, a verziót jelképező sztring átadásával. Ha nem rendeli hozzá, a rendszer egy alapértelmezett modellverziót recognition_01
használ. 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: true, returnFaceLandmarks: true, recognitionModel: "recognition_01", returnRecognitionModel: true);
Feljegyzés
A returnFaceId paramétert be kell állítani true
az arcfelismerési forgatókönyvek későbbi lépésekben való engedélyezéséhez.
Arcok azonosítása a megadott modellel
A Face szolgáltatás képes kinyerni az arcadatokat egy képből, és társítani egy Személy objektummal (például a Személycsoport hozzáadása Face API-hívással), és több Személy objektum együtt tárolható egy PersonGroupban. Ezután össze lehet hasonlítani egy új arcot egy Személycsoporttal (a Személycsoportból való azonosítás hívással), és azonosítható az adott csoporton belüli egyező személy.
A PersonGroup-nak egyetlen egyedi felismerési modellel kell rendelkeznie az összes személyhez, és ezt a paraméterrel megadhatja a recognitionModel
csoport létrehozásakor (Személycsoport létrehozása vagy Nagy személycsoport létrehozása). Ha nem adja meg ezt a paramétert, a rendszer az eredeti recognition_01
modellt használja. A csoportok mindig azt a felismerési modellt használják, amellyel létrehozták, és új arcok lesznek társítva ehhez a modellhez, amikor hozzáadják őket. Ez a csoport létrehozása után nem módosítható. Annak megtekintéséhez, hogy a PersonGroup milyen modellel van konfigurálva, használja a Get Person Group API-t a returnRecognitionModel paraméterrel igazként.
Tekintse meg a .NET-ügyfélkódtár alábbi kód példáját.
// Create an empty PersonGroup with "recognition_04" model
string personGroupId = "mypersongroupid";
await faceClient.PersonGroup.CreateAsync(personGroupId, "My Person Group Name", recognitionModel: "recognition_04");
Ebben a kódban létrejön egy azonosítóval mypersongroupid
rendelkező PersonGroup, és úgy van beállítva, hogy a recognition_04 modellt használja az arcfunkciók kinyeréséhez.
Ennek megfelelően meg kell adnia, hogy melyik modellt használja az arcok észlelésekor az ehhez a PersonGrouphoz (a Detect API-n keresztül). A használt modellnek mindig összhangban kell lennie a PersonGroup konfigurációjával; ellenkező esetben a művelet nem kompatibilis modellek miatt meghiúsul.
Az Azonosítás személycsoport API-ban nincs változás, csak a modellverziót kell megadnia az észlelés során.
Hasonló arcok keresése a megadott modellel
A hasonlóság kereséséhez megadhat egy felismerési modellt is. A modellverziót recognitionModel
hozzárendelheti a FaceList létrehozásakor a Face List API-val vagy a Nagy arclista létrehozása lehetőséggel. Ha nem adja meg ezt a paramétert, a rendszer alapértelmezés szerint a recognition_01
modellt használja. A FaceList mindig azt a felismerési modellt használja, amellyel létrejött, és új arcok lesznek társítva ehhez a modellhez, amikor hozzáadják őket a listához. Ezt a létrehozás után nem módosíthatja. Annak megtekintéséhez, hogy a FaceList milyen modellel van konfigurálva, használja a Get Face List API-t a returnRecognitionModel paraméterrel igazként.
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");
Ez a kód létrehoz egy FaceList nevű, My face collection
recognition_04-modellt a funkciók kinyeréséhez. Amikor a FaceList-ben egy új archoz hasonló arcokat keres, az arcot a recognition_04 modellel kell észlelni (észlelni). Az előző szakaszhoz hasonlóan a modellnek konzisztensnek kell lennie.
A Hasonló keresés API-ban nincs változás, csak a modellverziót adja meg az észlelés során.
Arcok ellenőrzése a megadott modellel
A Face To Face API ellenőrzi, hogy két arc ugyanahhoz a személyhez tartozik-e. A felismerési modellek tekintetében nincs változás a Verify API-ban, de csak az azonos modellel észlelt arcokat hasonlíthatja össze.
Különböző modellek kiértékelése
Ha össze szeretné hasonlítani a különböző felismerési modellek teljesítményét a saját adatain, a következőket kell elvégeznie:
- Hozzon létre négy PersonGroup-csoportotrecognition_01, recognition_02, recognition_03 és recognition_04 használatával.
- A képadatok segítségével észlelheti az arcokat, és regisztrálhatja őket a Persons-be ebben a négy PersonGroup-csoportban.
- A PersonGroup-csoportokbetanítása a Személycsoport betanítása API-val.
- Tesztelje mind a négy PersonGroup-csoportazonosuló személycsoportját, és hasonlítsa össze az eredményeket.
Ha általában egy megbízhatósági küszöbértéket határoz meg (egy nulla és egy közötti értéket, amely meghatározza, hogy a modellnek mennyire kell magabiztosnak lennie az arc azonosításához), előfordulhat, hogy különböző küszöbértékeket kell használnia a különböző modellekhez. Az egyik modell küszöbértékét nem a másiknak kell megosztani, és nem feltétlenül ugyanazokat az eredményeket fogja eredményezni.
Következő lépések
Ebben a cikkben megtanulta, hogyan adhatja meg a különböző Face service API-khoz használandó felismerési modellt. Ezután kövesse az arcészlelés első lépéseit ismertető rövid útmutatót.