coordinate transformer wip
This commit is contained in:
parent
4d86e78307
commit
c1c3f541d4
@ -21,3 +21,5 @@ PyMuPDF==1.19.6
|
||||
fpdf==1.7.2
|
||||
coverage==6.3.2
|
||||
Pillow==9.1.0
|
||||
PDFNetPython3~=9.1.0
|
||||
pdf2image==1.16.0
|
||||
51
test/unit_tests/coordinate_transformer_test.py
Normal file
51
test/unit_tests/coordinate_transformer_test.py
Normal file
@ -0,0 +1,51 @@
|
||||
import numpy as np
|
||||
import pytest
|
||||
from fpdf import fpdf
|
||||
from pdf2image import pdf2image
|
||||
|
||||
from image_prediction.image_extractor.extractor import ImageMetadataPair
|
||||
from image_prediction.info import Info
|
||||
from test.conftest import array_to_image, add_image
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def coordinate_test_image():
|
||||
return array_to_image(np.zeros(shape=(100, 100, 3)))
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def coordinate_test_fpdf():
|
||||
pdf = fpdf.FPDF(unit="pt", format=(200, 200))
|
||||
return pdf
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def position_metadata(corner):
|
||||
metadata = {Info.X1: 0, Info.Y1: 0, Info.WIDTH: 100, Info.HEIGHT: 100, Info.PAGE_IDX: 0}
|
||||
|
||||
if corner == "top left":
|
||||
metadata.update({Info.X1: 0, Info.Y1: 0})
|
||||
|
||||
elif corner == "bottom left":
|
||||
metadata.update({Info.X1: 0, Info.Y1: 100})
|
||||
|
||||
return metadata
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def coordinate_test_pdf(position_metadata, coordinate_test_image, coordinate_test_fpdf):
|
||||
add_image(coordinate_test_fpdf, ImageMetadataPair(coordinate_test_image, position_metadata))
|
||||
return coordinate_test_fpdf.output(dest="S").encode("latin1")
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def coordinate_test_page_image(coordinate_test_pdf):
|
||||
return pdf2image.convert_from_bytes(coordinate_test_pdf)[0]
|
||||
|
||||
|
||||
@pytest.mark.parametrize("corner", ["top left", "bottom left"])
|
||||
def test_coordinate_transformer(position_metadata, coordinate_test_page_image):
|
||||
# coordinate_test_pdf.output("/tmp/x.pdf")
|
||||
# coordinate_test_page_image.show()
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user