Skip to content

Commit 8ca7c9b

Browse files
dangostDanila.Kislitsynhleb-albau
authored
image qa result type
Co-authored-by: Danila.Kislitsyn <danila.kislitsyn@regula.by> Co-authored-by: Hleb Albau <hleb.albau@gmail.com>
1 parent 2f14448 commit 8ca7c9b

File tree

17 files changed

+1054
-8
lines changed

17 files changed

+1054
-8
lines changed

.openapi-generator/FILES

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ src/Regula.DocumentReader.WebClient/Client/GlobalConfiguration.cs
99
src/Regula.DocumentReader.WebClient/Client/IApiAccessor.cs
1010
src/Regula.DocumentReader.WebClient/Client/IReadableConfiguration.cs
1111
src/Regula.DocumentReader.WebClient/Client/OpenAPIDateConverter.cs
12+
src/Regula.DocumentReader.WebClient/Model/AreaArray.cs
1213
src/Regula.DocumentReader.WebClient/Model/AreaContainer.cs
1314
src/Regula.DocumentReader.WebClient/Model/AuthenticityCheckList.cs
1415
src/Regula.DocumentReader.WebClient/Model/AuthenticityResult.cs
@@ -33,6 +34,9 @@ src/Regula.DocumentReader.WebClient/Model/GraphicsResult.cs
3334
src/Regula.DocumentReader.WebClient/Model/IdentResult.cs
3435
src/Regula.DocumentReader.WebClient/Model/ImageData.cs
3536
src/Regula.DocumentReader.WebClient/Model/ImageQA.cs
37+
src/Regula.DocumentReader.WebClient/Model/ImageQualityCheck.cs
38+
src/Regula.DocumentReader.WebClient/Model/ImageQualityCheckList.cs
39+
src/Regula.DocumentReader.WebClient/Model/ImageQualityResult.cs
3640
src/Regula.DocumentReader.WebClient/Model/Images.cs
3741
src/Regula.DocumentReader.WebClient/Model/ImagesAvailableSource.cs
3842
src/Regula.DocumentReader.WebClient/Model/ImagesField.cs
@@ -45,6 +49,7 @@ src/Regula.DocumentReader.WebClient/Model/OneCandidate.cs
4549
src/Regula.DocumentReader.WebClient/Model/OriginalSymbol.cs
4650
src/Regula.DocumentReader.WebClient/Model/PhotoIdentResult.cs
4751
src/Regula.DocumentReader.WebClient/Model/Point.cs
52+
src/Regula.DocumentReader.WebClient/Model/PointArray.cs
4853
src/Regula.DocumentReader.WebClient/Model/PointsContainer.cs
4954
src/Regula.DocumentReader.WebClient/Model/ProcessParams.cs
5055
src/Regula.DocumentReader.WebClient/Model/ProcessRequest.cs

src/Regula.DocumentReader.NetCoreExample/Program.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public static void Main()
2828
var uvPage0 = File.ReadAllBytes("UV.jpg");
2929

3030
var requestParams = new RecognitionParams()
31-
.WithScenario(Scenario.FULL_AUTH)
31+
.WithScenario(Scenario.FULL_PROCESS)
3232
.WithResultTypeOutput(new List<int>
3333
{
3434
// actual results
@@ -37,7 +37,7 @@ public static void Main()
3737
// legacy results
3838
Result.MRZ_TEXT, Result.VISUAL_TEXT, Result.BARCODE_TEXT, Result.RFID_TEXT,
3939
Result.VISUAL_GRAPHICS, Result.BARCODE_GRAPHICS, Result.RFID_GRAPHICS,
40-
Result.LEXICAL_ANALYSIS
40+
Result.LEXICAL_ANALYSIS, Result.IMAGE_QUALITY
4141
});
4242

4343
var request = new RecognitionRequest(requestParams, new List<ProcessRequestImage>{
@@ -71,6 +71,8 @@ public static void Main()
7171
var docImagePattern = docAuthenticity.ImagePatternChecks();
7272
var docImagePatternBlank = docImagePattern?.ChecksByElement(SecurityFeatureType.BLANK);
7373

74+
var docImageQuality = response.ImageQualityChecks();
75+
7476
Console.WriteLine("-----------------------------------------------------------------");
7577
Console.WriteLine($" Document Overall Status: {docOverallStatus}");
7678
Console.WriteLine($" Document Optical Text Status: {docOpticalTextStatus}");

src/Regula.DocumentReader.WebClient/Api/ProcessApi.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/*
1+
/*
22
* Regula Document Reader Web API
33
*
44
* Documents recognition as easy as reading two bytes. # Clients: * [JavaScript](https://github.com/regulaforensics/DocumentReader-web-js-client) client for the browser and node.js based on axios * [Java](https://github.com/regulaforensics/DocumentReader-web-java-client) client compatible with jvm and android * [Python](https://github.com/regulaforensics/DocumentReader-web-python-client) 3.5+ client * [C#](https://github.com/regulaforensics/DocumentReader-web-csharp-client) client for .NET & .NET Core
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
/*
2+
* Regula Document Reader Web API
3+
*
4+
* Documents recognition as easy as reading two bytes. # Clients: * [JavaScript](https://github.com/regulaforensics/DocumentReader-web-js-client) client for the browser and node.js based on axios * [Java](https://github.com/regulaforensics/DocumentReader-web-java-client) client compatible with jvm and android * [Python](https://github.com/regulaforensics/DocumentReader-web-python-client) 3.5+ client * [C#](https://github.com/regulaforensics/DocumentReader-web-csharp-client) client for .NET & .NET Core
5+
*
6+
* The version of the OpenAPI document: 5.5.0
7+
*
8+
* Generated by: https://github.com/openapitools/openapi-generator.git
9+
*/
10+
11+
using System;
12+
using System.Linq;
13+
using System.IO;
14+
using System.Text;
15+
using System.Text.RegularExpressions;
16+
using System.Collections;
17+
using System.Collections.Generic;
18+
using System.Collections.ObjectModel;
19+
using System.Runtime.Serialization;
20+
using Newtonsoft.Json;
21+
using Newtonsoft.Json.Converters;
22+
using System.ComponentModel.DataAnnotations;
23+
using OpenAPIDateConverter = Regula.DocumentReader.WebClient.Client.OpenAPIDateConverter;
24+
25+
namespace Regula.DocumentReader.WebClient.Model
26+
{
27+
/// <summary>
28+
/// AreaArray
29+
/// </summary>
30+
[DataContract]
31+
public partial class AreaArray : IEquatable<AreaArray>, IValidatableObject
32+
{
33+
/// <summary>
34+
/// Initializes a new instance of the <see cref="AreaArray" /> class.
35+
/// </summary>
36+
/// <param name="list">list.</param>
37+
/// <param name="points">points.</param>
38+
public AreaArray(List<RectangleCoordinates> list = default(List<RectangleCoordinates>), PointArray points = default(PointArray))
39+
{
40+
this.List = list;
41+
this.Points = points;
42+
}
43+
44+
/// <summary>
45+
/// Gets or Sets List
46+
/// </summary>
47+
[DataMember(Name="List", EmitDefaultValue=false)]
48+
public List<RectangleCoordinates> List { get; set; }
49+
50+
/// <summary>
51+
/// Gets or Sets Points
52+
/// </summary>
53+
[DataMember(Name="Points", EmitDefaultValue=false)]
54+
public PointArray Points { get; set; }
55+
56+
/// <summary>
57+
/// Returns the string presentation of the object
58+
/// </summary>
59+
/// <returns>String presentation of the object</returns>
60+
public override string ToString()
61+
{
62+
var sb = new StringBuilder();
63+
sb.Append("class AreaArray {\n");
64+
sb.Append(" List: ").Append(List).Append("\n");
65+
sb.Append(" Points: ").Append(Points).Append("\n");
66+
sb.Append("}\n");
67+
return sb.ToString();
68+
}
69+
70+
/// <summary>
71+
/// Returns the JSON string presentation of the object
72+
/// </summary>
73+
/// <returns>JSON string presentation of the object</returns>
74+
public virtual string ToJson()
75+
{
76+
return JsonConvert.SerializeObject(this, Formatting.Indented);
77+
}
78+
79+
/// <summary>
80+
/// Returns true if objects are equal
81+
/// </summary>
82+
/// <param name="input">Object to be compared</param>
83+
/// <returns>Boolean</returns>
84+
public override bool Equals(object input)
85+
{
86+
return this.Equals(input as AreaArray);
87+
}
88+
89+
/// <summary>
90+
/// Returns true if AreaArray instances are equal
91+
/// </summary>
92+
/// <param name="input">Instance of AreaArray to be compared</param>
93+
/// <returns>Boolean</returns>
94+
public bool Equals(AreaArray input)
95+
{
96+
if (input == null)
97+
return false;
98+
99+
return
100+
(
101+
this.List == input.List ||
102+
this.List != null &&
103+
input.List != null &&
104+
this.List.SequenceEqual(input.List)
105+
) &&
106+
(
107+
this.Points == input.Points ||
108+
(this.Points != null &&
109+
this.Points.Equals(input.Points))
110+
);
111+
}
112+
113+
/// <summary>
114+
/// Gets the hash code
115+
/// </summary>
116+
/// <returns>Hash code</returns>
117+
public override int GetHashCode()
118+
{
119+
unchecked // Overflow is fine, just wrap
120+
{
121+
int hashCode = 41;
122+
if (this.List != null)
123+
hashCode = hashCode * 59 + this.List.GetHashCode();
124+
if (this.Points != null)
125+
hashCode = hashCode * 59 + this.Points.GetHashCode();
126+
return hashCode;
127+
}
128+
}
129+
130+
/// <summary>
131+
/// To validate all properties of the instance
132+
/// </summary>
133+
/// <param name="validationContext">Validation context</param>
134+
/// <returns>Validation Result</returns>
135+
IEnumerable<System.ComponentModel.DataAnnotations.ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
136+
{
137+
yield break;
138+
}
139+
}
140+
141+
}

src/Regula.DocumentReader.WebClient/Model/Ext/RecognitionResponse.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,18 @@ public AuthenticityCheckList Authenticity(int pageIdx=0)
3333
var result = ResultByType<AuthenticityResult>(Result.AUTHENTICITY, pageIdx);
3434
return result?.AuthenticityCheckList;
3535
}
36+
37+
public ImageQualityCheckList ImageQualityChecks(int pageIdx=0)
38+
{
39+
var result = ResultByType<ImageQualityResult>(Result.IMAGE_QUALITY, pageIdx);
40+
return result?.ImageQualityCheckList;
41+
}
3642

3743
public T ResultByType<T>(int type, int pageIdx=0) where T: ResultItem
3844
{
3945
foreach(var item in OriginalResponse.ContainerList.List)
4046
{
41-
if (item.ResultType == type) {
47+
if (item.ResultType == type && item.PageIdx == pageIdx) {
4248
return (T) item;
4349
}
4450
}

0 commit comments

Comments
 (0)