Skip to content

Commit eb9080d

Browse files
committed
use images document image, instead of own rt
1 parent 5755af3 commit eb9080d

File tree

3 files changed

+17
-36
lines changed

3 files changed

+17
-36
lines changed

example/example.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222

2323
params = ProcessParams(
2424
scenario=Scenario.FULL_PROCESS,
25-
result_type_output=[Result.DOCUMENT_IMAGE, Result.STATUS, Result.TEXT, Result.IMAGES]
25+
result_type_output=[Result.STATUS, Result.TEXT, Result.IMAGES]
2626
)
2727
request = RecognitionRequest(process_params=params, images=[input_image])
2828
response = api.process(request)
@@ -40,9 +40,8 @@
4040
doc_number_mrz_visual_matching = doc_number_field.cross_source_comparison(Source.MRZ, Source.VISUAL)
4141

4242
# images fields example
43-
document_image = response.images.document_image()
44-
portrait_field = response.images.get_field(GraphicFieldType.PORTRAIT)
45-
portrait_from_visual = portrait_field.get_value(Source.VISUAL)
43+
document_image = response.images.get_field(GraphicFieldType.DOCUMENT_FRONT).get_value()
44+
portrait_from_visual = response.images.get_field(GraphicFieldType.PORTRAIT).get_value(Source.VISUAL)
4645
with open('portrait.jpg', 'wb') as f:
4746
f.write(portrait_from_visual)
4847
with open('document-image.jpg', 'wb') as f:

regula/documentreader/webclient/ext/models/images.py

Lines changed: 14 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -7,51 +7,34 @@
77
class ImagesField(GetImagesField):
88

99
def get_value(self, source: str = None, original=False) -> Optional[bytes]:
10-
field_value = None
10+
1111
if not source:
12-
field_value = self.get_value(Source.RFID)
13-
if not field_value: field_value = self.get_value(Source.VISUAL)
14-
if not field_value: field_value = self.get_value(Source.BARCODE)
12+
value = self.get_value(Source.RFID)
13+
if not value: value = self.get_value(Source.VISUAL)
14+
if not value: value = self.get_value(Source.BARCODE)
15+
if not value: value = self.get_value("UNKNOWN") # temp fix, will be removed
16+
return value
1517
else:
18+
field_value = None
1619
for v in self.value_list:
1720
if v.source == source:
1821
field_value = v
1922

20-
if not field_value:
21-
return None
23+
if not field_value:
24+
return None
2225

23-
if original:
24-
return base64.b64decode(field_value.original_value)
25-
return base64.b64decode(field_value.value)
26+
if original:
27+
return base64.b64decode(field_value.original_value)
28+
return base64.b64decode(field_value.value)
2629

2730

2831
class Images(GenImages):
29-
_document_images_results = None
3032

3133
def get_field(self, field_type: int) -> Optional[ImagesField]:
3234
for field in self.field_list:
3335
if field.field_type == field_type:
3436
return field
3537
return None
3638

37-
def document_image(self) -> Optional[bytes]:
38-
"""
39-
Contains cropped and rotated with perspective compensation image of document.
40-
Single input image can contain multiple document side/pages, which will be returned as separated results.
41-
Most coordinates in other types defined on that image.
42-
"""
43-
images = self.document_images()
44-
if not images:
45-
return None
46-
return images.pop()
47-
48-
def document_images(self) -> Optional[List[bytes]]:
49-
"""
50-
Contains cropped and rotated with perspective compensation image of document.
51-
Single input image can contain multiple document side/pages, which will be returned as separated results.
52-
Most coordinates in other types defined on that image.
53-
"""
54-
if self._document_images_results:
55-
return [base64.b64decode(image.raw_image_container.image)
56-
for image in self._document_images_results]
57-
return None
39+
def get_fields(self, field_type: int) -> List[ImagesField]:
40+
return [field for field in self.field_list if field.field_type == field_type]

regula/documentreader/webclient/ext/models/recognition_response.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ def status(self) -> Optional[Status]:
3131
def images(self) -> Optional[Images]:
3232
result = self.result_by_type(Result.IMAGES)
3333
if result:
34-
result.images._document_images_results = self.results_by_type(Result.DOCUMENT_IMAGE)
3534
return result.images
3635
return None
3736

0 commit comments

Comments
 (0)