Adapt ocrd-eynollah-segment for release

This commit is contained in:
kba 2025-09-25 20:11:48 +02:00
parent 5e15c4f248
commit 11de8a025d
2 changed files with 16 additions and 5 deletions

View file

@ -82,13 +82,23 @@
} }
}, },
"resources": [ "resources": [
{
"url": "https://zenodo.org/records/17194824/files/models_layout_v0_5_0.tar.gz?download=1",
"name": "eynollah_layout_v0_5_0",
"type": "archive",
"path_in_archive": "eynollah_layout_v0_5_0",
"size": 3525684179,
"description": "Models for layout detection, reading order detection, textline detection, page extraction, column classification, table detection, binarization, image enhancement",
"version_range": ">= v0.5.0"
},
{ {
"description": "models for eynollah (TensorFlow SavedModel format)", "description": "models for eynollah (TensorFlow SavedModel format)",
"url": "https://github.com/qurator-spk/eynollah/releases/download/v0.3.1/models_eynollah.tar.gz", "url": "https://github.com/qurator-spk/eynollah/releases/download/v0.3.1/models_eynollah.tar.gz",
"name": "default", "name": "default",
"size": 1894627041, "size": 1894627041,
"type": "archive", "type": "archive",
"path_in_archive": "models_eynollah" "path_in_archive": "models_eynollah",
"version_range": ">= v0.3.0, < v0.5.0"
} }
] ]
}, },

View file

@ -1,6 +1,7 @@
from functools import cached_property
from typing import Optional from typing import Optional
from ocrd_models import OcrdPage from ocrd_models import OcrdPage
from ocrd import Processor, OcrdPageResult from ocrd import OcrdPageResultImage, Processor, OcrdPageResult
from .eynollah import Eynollah, EynollahXmlWriter from .eynollah import Eynollah, EynollahXmlWriter
@ -9,8 +10,8 @@ class EynollahProcessor(Processor):
# already employs GPU (without singleton process atm) # already employs GPU (without singleton process atm)
max_workers = 1 max_workers = 1
@property @cached_property
def executable(self): def executable(self) -> str:
return 'ocrd-eynollah-segment' return 'ocrd-eynollah-segment'
def setup(self) -> None: def setup(self) -> None:
@ -20,7 +21,6 @@ class EynollahProcessor(Processor):
"and parameter 'light_version' (faster+simpler method for main region detection and deskewing)") "and parameter 'light_version' (faster+simpler method for main region detection and deskewing)")
self.eynollah = Eynollah( self.eynollah = Eynollah(
self.resolve_resource(self.parameter['models']), self.resolve_resource(self.parameter['models']),
logger=self.logger,
allow_enhancement=self.parameter['allow_enhancement'], allow_enhancement=self.parameter['allow_enhancement'],
curved_line=self.parameter['curved_line'], curved_line=self.parameter['curved_line'],
right2left=self.parameter['right_to_left'], right2left=self.parameter['right_to_left'],
@ -33,6 +33,7 @@ class EynollahProcessor(Processor):
headers_off=self.parameter['headers_off'], headers_off=self.parameter['headers_off'],
tables=self.parameter['tables'], tables=self.parameter['tables'],
) )
self.eynollah.logger = self.logger
self.eynollah.plotter = None self.eynollah.plotter = None
def shutdown(self): def shutdown(self):