LSS (Layout Segmentation Simplifier)
Install
pip install https://github.com/PonteIneptique/lss/archive/refs/heads/main.zip
or
pip install layouts-segmentation-simplifier
Use
Generic use
from lss.parsers import PageXML
file = PageXML.from_file(
"data/0002_Main_frame.xml",
namespace="http://schema.primaresearch.org/PAGE/gts/pagecontent/2019-07-15"
)
file.simplify_lines(ratio=.10)
file.simplify_masks(ratio=.15)
file.dump(filepath="file.xml")
Qualitatively search for best parameters
You can also get it to make multiple simulation, to chose the best value (highest ratio = bigger simplification)
from lss.parsers import PageXML
page = PageXML.from_file("./data/0002_Main_frame.xml")
page.find_namespace()
page.test_values(
[(.05, .05), (.1, .1), (.15, .15), (.20, .20)],
image="./data/0002_Main_frame.jpg",
basename_output="./data/0002_Main_frame"
)
In this context, lines will be simplified by a ratio of 0.05, 0.10, 0.15 and 0.20. Mask will be as well.
Few files will be saved. Each test will create test files with overlays (cf. folder data for all examples):
Original | 15% ratio on both line and masks |
---|
| |
10% | 20% |
---|
| |