Skip to content

Commit bd10ea9

Browse files
feat: regenerate azure.ai.vision.face
1 parent dc5cea7 commit bd10ea9

File tree

77 files changed

+4073
-4457
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+4073
-4457
lines changed

sdk/face/Azure.AI.Vision.Face/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,10 @@
55
### Features Added
66

77
- Exposed `JsonModelWriteCore` for model serialization procedure.
8+
- Added support for service versions `v1.2` and `v1.3-preview.1`.
89

910
### Breaking Changes
11+
- Removed deprecated operations prior to service version `v1.2`.
1012

1113
### Bugs Fixed
1214

sdk/face/Azure.AI.Vision.Face/README.md

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -252,7 +252,6 @@ Here is an example to create the session for liveness detection.
252252

253253
```C# Snippet:CreateLivenessSession
254254
var createContent = new CreateLivenessSessionContent(LivenessOperationMode.Passive) {
255-
SendResultsToClient = true,
256255
DeviceCorrelationId = Guid.NewGuid().ToString(),
257256
};
258257

@@ -268,16 +267,8 @@ After you've performed liveness detection, you can retrieve the result by provid
268267
```C# Snippet:GetLivenessSessionResult
269268
var getResultResponse = sessionClient.GetLivenessSessionResult(sessionId);
270269
var sessionResult = getResultResponse.Value;
271-
Console.WriteLine($"Id: {sessionResult.Id}");
272-
Console.WriteLine($"CreatedDateTime: {sessionResult.CreatedDateTime}");
273-
Console.WriteLine($"SessionExpired: {sessionResult.SessionExpired}");
274-
Console.WriteLine($"DeviceCorrelationId: {sessionResult.DeviceCorrelationId}");
275-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {sessionResult.AuthTokenTimeToLiveInSeconds}");
270+
Console.WriteLine($"Id: {sessionResult.SessionId}");
276271
Console.WriteLine($"Status: {sessionResult.Status}");
277-
Console.WriteLine($"SessionStartDateTime: {sessionResult.SessionStartDateTime}");
278-
if (sessionResult.Result != null) {
279-
WriteLivenessSessionAuditEntry(sessionResult.Result);
280-
}
281272
```
282273

283274
For more information, see [Liveness Detection Sample][face_sample_liveness_session].

sdk/face/Azure.AI.Vision.Face/api/Azure.AI.Vision.Face.net8.0.cs

Lines changed: 231 additions & 198 deletions
Large diffs are not rendered by default.

sdk/face/Azure.AI.Vision.Face/api/Azure.AI.Vision.Face.netstandard2.0.cs

Lines changed: 231 additions & 198 deletions
Large diffs are not rendered by default.

sdk/face/Azure.AI.Vision.Face/assets.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
"AssetsRepo": "Azure/azure-sdk-assets",
33
"AssetsRepoPrefixPath": "net",
44
"TagPrefix": "net/face/Azure.AI.Vision.Face",
5-
"Tag": "net/face/Azure.AI.Vision.Face_3208a2f5ac"
5+
"Tag": "net/face/Azure.AI.Vision.Face_a00e23f72f"
66
}

sdk/face/Azure.AI.Vision.Face/samples/Sample2_DetectLivenessWithSession.md

Lines changed: 1 addition & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Before you can detect liveness in a face, you need to create a liveness detectio
3030

3131
```C# Snippet:CreateLivenessSession
3232
var createContent = new CreateLivenessSessionContent(LivenessOperationMode.Passive) {
33-
SendResultsToClient = true,
3433
DeviceCorrelationId = Guid.NewGuid().ToString(),
3534
};
3635

@@ -56,70 +55,8 @@ After you've performed liveness detection, you can retrieve the result by provid
5655
```C# Snippet:GetLivenessSessionResult
5756
var getResultResponse = sessionClient.GetLivenessSessionResult(sessionId);
5857
var sessionResult = getResultResponse.Value;
59-
Console.WriteLine($"Id: {sessionResult.Id}");
60-
Console.WriteLine($"CreatedDateTime: {sessionResult.CreatedDateTime}");
61-
Console.WriteLine($"SessionExpired: {sessionResult.SessionExpired}");
62-
Console.WriteLine($"DeviceCorrelationId: {sessionResult.DeviceCorrelationId}");
63-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {sessionResult.AuthTokenTimeToLiveInSeconds}");
58+
Console.WriteLine($"Id: {sessionResult.SessionId}");
6459
Console.WriteLine($"Status: {sessionResult.Status}");
65-
Console.WriteLine($"SessionStartDateTime: {sessionResult.SessionStartDateTime}");
66-
if (sessionResult.Result != null) {
67-
WriteLivenessSessionAuditEntry(sessionResult.Result);
68-
}
69-
```
70-
71-
```C# Snippet:WriteLivenessSessionAuditEntry
72-
public void WriteLivenessSessionAuditEntry(LivenessSessionAuditEntry auditEntry)
73-
{
74-
Console.WriteLine($"Id: {auditEntry.Id}");
75-
Console.WriteLine($"SessionId: {auditEntry.SessionId}");
76-
Console.WriteLine($"RequestId: {auditEntry.RequestId}");
77-
Console.WriteLine($"ClientRequestId: {auditEntry.ClientRequestId}");
78-
Console.WriteLine($"ReceivedDateTime: {auditEntry.ReceivedDateTime}");
79-
Console.WriteLine($"Digest: {auditEntry.Digest}");
80-
81-
Console.WriteLine($" Request Url: {auditEntry.Request.Url}");
82-
Console.WriteLine($" Request Method: {auditEntry.Request.Method}");
83-
Console.WriteLine($" Request ContentLength: {auditEntry.Request.ContentLength}");
84-
Console.WriteLine($" Request ContentType: {auditEntry.Request.ContentType}");
85-
Console.WriteLine($" Request UserAgent: {auditEntry.Request.UserAgent}");
86-
87-
Console.WriteLine($" Response StatusCode: {auditEntry.Response.StatusCode}");
88-
Console.WriteLine($" Response LatencyInMilliseconds: {auditEntry.Response.LatencyInMilliseconds}");
89-
Console.WriteLine($" Response Body LivenessDecision: {auditEntry.Response.Body.LivenessDecision}");
90-
Console.WriteLine($" Response Body ModelVersionUsed: {auditEntry.Response.Body.ModelVersionUsed}");
91-
Console.WriteLine($" Response Body Target FaceRectangle: {auditEntry.Response.Body.Target.FaceRectangle.Top}, {auditEntry.Response.Body.Target.FaceRectangle.Left}, {auditEntry.Response.Body.Target.FaceRectangle.Width}, {auditEntry.Response.Body.Target.FaceRectangle.Height}");
92-
Console.WriteLine($" Response Body Target FileName: {auditEntry.Response.Body.Target.FileName}");
93-
Console.WriteLine($" Response Body Target TimeOffsetWithinFile: {auditEntry.Response.Body.Target.TimeOffsetWithinFile}");
94-
Console.WriteLine($" Response Body Target FaceImageType: {auditEntry.Response.Body.Target.ImageType}");
95-
}
96-
```
97-
98-
If there are multiple liveness calls, you can retrieve the result by getting liveness audit entries.
99-
100-
```C# Snippet:GetLivenessSessionAuditEntries
101-
var getAuditEntriesResponse = sessionClient.GetLivenessSessionAuditEntries(sessionId);
102-
foreach (var auditEntry in getAuditEntriesResponse.Value)
103-
{
104-
WriteLivenessSessionAuditEntry(auditEntry);
105-
}
106-
```
107-
108-
## List all liveness sessions
109-
110-
All existing sessions can be listed by sending a request to the service.
111-
112-
```C# Snippet:GetLivenessSessions
113-
var listResponse = sessionClient.GetLivenessSessions();
114-
foreach (var session in listResponse.Value)
115-
{
116-
Console.WriteLine($"SessionId: {session.Id}");
117-
Console.WriteLine($"CreatedDateTime: {session.CreatedDateTime}");
118-
Console.WriteLine($"SessionExpired: {session.SessionExpired}");
119-
Console.WriteLine($"DeviceCorrelationId: {session.DeviceCorrelationId}");
120-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {session.AuthTokenTimeToLiveInSeconds}");
121-
Console.WriteLine($"SessionStartDateTime: {session.SessionStartDateTime}");
122-
}
12360
```
12461

12562
## Delete session

sdk/face/Azure.AI.Vision.Face/samples/Sample2_DetectLivenessWithSessionAsync.md

Lines changed: 2 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ Before you can detect liveness in a face, you need to create a liveness detectio
3030

3131
```C# Snippet:CreateLivenessSessionAsync
3232
var createContent = new CreateLivenessSessionContent(LivenessOperationMode.Passive) {
33-
SendResultsToClient = true,
3433
DeviceCorrelationId = Guid.NewGuid().ToString(),
3534
};
3635

@@ -56,70 +55,9 @@ After you've performed liveness detection, you can retrieve the result by provid
5655
```C# Snippet:GetLivenessSessionResultAsync
5756
var getResultResponse = await sessionClient.GetLivenessSessionResultAsync(sessionId);
5857
var sessionResult = getResultResponse.Value;
59-
Console.WriteLine($"Id: {sessionResult.Id}");
60-
Console.WriteLine($"CreatedDateTime: {sessionResult.CreatedDateTime}");
61-
Console.WriteLine($"SessionExpired: {sessionResult.SessionExpired}");
62-
Console.WriteLine($"DeviceCorrelationId: {sessionResult.DeviceCorrelationId}");
63-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {sessionResult.AuthTokenTimeToLiveInSeconds}");
58+
Console.WriteLine($"Id: {sessionResult.SessionId}");
6459
Console.WriteLine($"Status: {sessionResult.Status}");
65-
Console.WriteLine($"SessionStartDateTime: {sessionResult.SessionStartDateTime}");
66-
if (sessionResult.Result != null) {
67-
WriteLivenessSessionAuditEntry(sessionResult.Result);
68-
}
69-
```
70-
71-
```C# Snippet:WriteLivenessSessionAuditEntry
72-
public void WriteLivenessSessionAuditEntry(LivenessSessionAuditEntry auditEntry)
73-
{
74-
Console.WriteLine($"Id: {auditEntry.Id}");
75-
Console.WriteLine($"SessionId: {auditEntry.SessionId}");
76-
Console.WriteLine($"RequestId: {auditEntry.RequestId}");
77-
Console.WriteLine($"ClientRequestId: {auditEntry.ClientRequestId}");
78-
Console.WriteLine($"ReceivedDateTime: {auditEntry.ReceivedDateTime}");
79-
Console.WriteLine($"Digest: {auditEntry.Digest}");
80-
81-
Console.WriteLine($" Request Url: {auditEntry.Request.Url}");
82-
Console.WriteLine($" Request Method: {auditEntry.Request.Method}");
83-
Console.WriteLine($" Request ContentLength: {auditEntry.Request.ContentLength}");
84-
Console.WriteLine($" Request ContentType: {auditEntry.Request.ContentType}");
85-
Console.WriteLine($" Request UserAgent: {auditEntry.Request.UserAgent}");
86-
87-
Console.WriteLine($" Response StatusCode: {auditEntry.Response.StatusCode}");
88-
Console.WriteLine($" Response LatencyInMilliseconds: {auditEntry.Response.LatencyInMilliseconds}");
89-
Console.WriteLine($" Response Body LivenessDecision: {auditEntry.Response.Body.LivenessDecision}");
90-
Console.WriteLine($" Response Body ModelVersionUsed: {auditEntry.Response.Body.ModelVersionUsed}");
91-
Console.WriteLine($" Response Body Target FaceRectangle: {auditEntry.Response.Body.Target.FaceRectangle.Top}, {auditEntry.Response.Body.Target.FaceRectangle.Left}, {auditEntry.Response.Body.Target.FaceRectangle.Width}, {auditEntry.Response.Body.Target.FaceRectangle.Height}");
92-
Console.WriteLine($" Response Body Target FileName: {auditEntry.Response.Body.Target.FileName}");
93-
Console.WriteLine($" Response Body Target TimeOffsetWithinFile: {auditEntry.Response.Body.Target.TimeOffsetWithinFile}");
94-
Console.WriteLine($" Response Body Target FaceImageType: {auditEntry.Response.Body.Target.ImageType}");
95-
}
96-
```
97-
98-
If there are multiple liveness calls, you can retrieve the result by getting liveness audit entries.
99-
100-
```C# Snippet:GetLivenessSessionAuditEntriesAsync
101-
var getAuditEntriesResponse = await sessionClient.GetLivenessSessionAuditEntriesAsync(sessionId);
102-
foreach (var auditEntry in getAuditEntriesResponse.Value)
103-
{
104-
WriteLivenessSessionAuditEntry(auditEntry);
105-
}
106-
```
107-
108-
## List all liveness sessions
109-
110-
All existing sessions can be listed by sending a request to the service.
111-
112-
```C# Snippet:GetLivenessSessionsAsync
113-
var listResponse = await sessionClient.GetLivenessSessionsAsync();
114-
foreach (var session in listResponse.Value)
115-
{
116-
Console.WriteLine($"SessionId: {session.Id}");
117-
Console.WriteLine($"CreatedDateTime: {session.CreatedDateTime}");
118-
Console.WriteLine($"SessionExpired: {session.SessionExpired}");
119-
Console.WriteLine($"DeviceCorrelationId: {session.DeviceCorrelationId}");
120-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {session.AuthTokenTimeToLiveInSeconds}");
121-
Console.WriteLine($"SessionStartDateTime: {session.SessionStartDateTime}");
122-
}
60+
var results = sessionResult.Results;
12361
```
12462

12563
## Delete session

sdk/face/Azure.AI.Vision.Face/samples/Sample3_DetectLivenessWithVerifyWithSession.md

Lines changed: 16 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -29,20 +29,24 @@ var sessionClient = new FaceSessionClient(endpoint, credential);
2929
Before you can detect liveness in a face, you need to create a liveness detection session with Azure AI Face Service. The service creates a liveness-session and responds back with a session-authorization-token.
3030

3131
```C# Snippet:CreateLivenessWithVerifySession
32-
var parameters = new CreateLivenessWithVerifySessionContent(LivenessOperationMode.Passive) {
33-
SendResultsToClient = true,
32+
using var fileStream = new FileStream(FaceTestConstant.LocalSampleImage, FileMode.Open, FileAccess.Read);
33+
var parameters = new CreateLivenessWithVerifySessionContent(LivenessOperationMode.Passive, fileStream)
34+
{
3435
DeviceCorrelationId = Guid.NewGuid().ToString(),
3536
};
3637

37-
using var fileStream = new FileStream(FaceTestConstant.LocalSampleImage, FileMode.Open, FileAccess.Read);
38-
39-
var createResponse = sessionClient.CreateLivenessWithVerifySession(parameters, fileStream);
38+
var createResponse = sessionClient.CreateLivenessWithVerifySession(parameters);
4039

4140
var sessionId = createResponse.Value.SessionId;
4241
Console.WriteLine($"Session created, SessionId: {sessionId}");
4342
Console.WriteLine($"AuthToken: {createResponse.Value.AuthToken}");
44-
Console.WriteLine($"VerifyImage.FaceRectangle: {createResponse.Value.VerifyImage.FaceRectangle.Top}, {createResponse.Value.VerifyImage.FaceRectangle.Left}, {createResponse.Value.VerifyImage.FaceRectangle.Width}, {createResponse.Value.VerifyImage.FaceRectangle.Height}");
45-
Console.WriteLine($"VerifyImage.QualityForRecognition: {createResponse.Value.VerifyImage.QualityForRecognition}");
43+
var results = createResponse.Value.Results;
44+
if (results.VerifyReferences.Count > 0)
45+
{
46+
var verifyReference = results.VerifyReferences[0];
47+
Console.WriteLine($"VerifyImage.FaceRectangle: {verifyReference.FaceRectangle.Top}, {verifyReference.FaceRectangle.Left}, {verifyReference.FaceRectangle.Width}, {verifyReference.FaceRectangle.Height}");
48+
Console.WriteLine($"VerifyImage.QualityForRecognition: {verifyReference.QualityForRecognition}");
49+
}
4650
```
4751

4852
## 3. Pass the AuthToken to client device
@@ -61,75 +65,14 @@ After you've performed liveness detection with verification , you can retrieve t
6165
```C# Snippet:GetLivenessWithVerifySessionResult
6266
var getResultResponse = sessionClient.GetLivenessWithVerifySessionResult(sessionId);
6367
var sessionResult = getResultResponse.Value;
64-
Console.WriteLine($"Id: {sessionResult.Id}");
65-
Console.WriteLine($"CreatedDateTime: {sessionResult.CreatedDateTime}");
66-
Console.WriteLine($"SessionExpired: {sessionResult.SessionExpired}");
67-
Console.WriteLine($"DeviceCorrelationId: {sessionResult.DeviceCorrelationId}");
68-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {sessionResult.AuthTokenTimeToLiveInSeconds}");
68+
Console.WriteLine($"Id: {sessionResult.SessionId}");
6969
Console.WriteLine($"Status: {sessionResult.Status}");
70-
Console.WriteLine($"SessionStartDateTime: {sessionResult.SessionStartDateTime}");
71-
if (sessionResult.Result != null) {
72-
WriteLivenessWithVerifySessionAuditEntry(sessionResult.Result);
73-
}
74-
```
75-
76-
```C# Snippet:WriteLivenessWithVerifySessionAuditEntry
77-
public void WriteLivenessWithVerifySessionAuditEntry(LivenessSessionAuditEntry auditEntry)
78-
{
79-
Console.WriteLine($"Id: {auditEntry.Id}");
80-
Console.WriteLine($"SessionId: {auditEntry.SessionId}");
81-
Console.WriteLine($"RequestId: {auditEntry.RequestId}");
82-
Console.WriteLine($"ClientRequestId: {auditEntry.ClientRequestId}");
83-
Console.WriteLine($"ReceivedDateTime: {auditEntry.ReceivedDateTime}");
84-
Console.WriteLine($"Digest: {auditEntry.Digest}");
85-
86-
Console.WriteLine($" Request Url: {auditEntry.Request.Url}");
87-
Console.WriteLine($" Request Method: {auditEntry.Request.Method}");
88-
Console.WriteLine($" Request ContentLength: {auditEntry.Request.ContentLength}");
89-
Console.WriteLine($" Request ContentType: {auditEntry.Request.ContentType}");
90-
Console.WriteLine($" Request UserAgent: {auditEntry.Request.UserAgent}");
91-
92-
Console.WriteLine($" Response StatusCode: {auditEntry.Response.StatusCode}");
93-
Console.WriteLine($" Response LatencyInMilliseconds: {auditEntry.Response.LatencyInMilliseconds}");
94-
Console.WriteLine($" Response Body LivenessDecision: {auditEntry.Response.Body.LivenessDecision}");
95-
Console.WriteLine($" Response Body ModelVersionUsed: {auditEntry.Response.Body.ModelVersionUsed}");
96-
Console.WriteLine($" Response Body Target FaceRectangle: {auditEntry.Response.Body.Target.FaceRectangle.Top}, {auditEntry.Response.Body.Target.FaceRectangle.Left}, {auditEntry.Response.Body.Target.FaceRectangle.Width}, {auditEntry.Response.Body.Target.FaceRectangle.Height}");
97-
Console.WriteLine($" Response Body Target FileName: {auditEntry.Response.Body.Target.FileName}");
98-
Console.WriteLine($" Response Body Target TimeOffsetWithinFile: {auditEntry.Response.Body.Target.TimeOffsetWithinFile}");
99-
Console.WriteLine($" Response Body Target FaceImageType: {auditEntry.Response.Body.Target.ImageType}");
100-
101-
Console.WriteLine($" Response Body VerifyResult IsIdentical: {auditEntry.Response.Body.VerifyResult.IsIdentical}");
102-
Console.WriteLine($" Response Body VerifyResult MatchConfidence: {auditEntry.Response.Body.VerifyResult.MatchConfidence}");
103-
Console.WriteLine($" Response Body VerifyResult VerifyImage.FaceRectangle: {auditEntry.Response.Body.VerifyResult.VerifyImage.FaceRectangle.Top}, {auditEntry.Response.Body.VerifyResult.VerifyImage.FaceRectangle.Left}, {auditEntry.Response.Body.VerifyResult.VerifyImage.FaceRectangle.Width}, {auditEntry.Response.Body.VerifyResult.VerifyImage.FaceRectangle.Height}");
104-
Console.WriteLine($" Response Body VerifyResult VerifyImage.QualityForRecognition: {auditEntry.Response.Body.VerifyResult.VerifyImage.QualityForRecognition}");
105-
}
106-
```
107-
108-
If there are multiple liveness calls, you can retrieve the result by getting liveness audit entries.
109-
110-
```C# Snippet:GetLivenessWithVerifySessionAuditEntries
111-
var getAuditEntriesResponse = sessionClient.GetLivenessWithVerifySessionAuditEntries(sessionId);
112-
foreach (var auditEntry in getAuditEntriesResponse.Value)
113-
{
114-
WriteLivenessWithVerifySessionAuditEntry(auditEntry);
115-
}
116-
```
117-
118-
## List all liveness sessions
11970

120-
All existing sessions can be listed by sending a request to the service.
121-
122-
```C# Snippet:GetLivenessWithVerifySessions
123-
var listResponse = sessionClient.GetLivenessWithVerifySessions();
124-
foreach (var session in listResponse.Value)
71+
var results = sessionResult.Results;
72+
if (results.VerifyReferences.Count > 0)
12573
{
126-
Console.WriteLine($"SessionId: {session.Id}");
127-
Console.WriteLine($"CreatedDateTime: {session.CreatedDateTime}");
128-
Console.WriteLine($"SessionExpired: {session.SessionExpired}");
129-
Console.WriteLine($"DeviceCorrelationId: {session.DeviceCorrelationId}");
130-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {session.AuthTokenTimeToLiveInSeconds}");
131-
Console.WriteLine($"SessionStartDateTime: {session.SessionStartDateTime}");
132-
}
74+
var verifyReference = results.VerifyReferences[0];
75+
Console.WriteLine($"VerifyImage.FaceRectangle: {verifyReference.FaceRectangle.Top}, {verifyReference.FaceRectangle.Left}, {verifyReference.FaceRectangle.Width}, {verifyReference.FaceRectangle.Height}");
13376
```
13477

13578
## Delete session

0 commit comments

Comments
 (0)