fix tests according to offset
This commit is contained in:
parent
e131f8b197
commit
d170cbeda0
|
|
@ -13,7 +13,7 @@ from supervision.dataset.formats.pascal_voc import (
|
|||
)
|
||||
|
||||
|
||||
def are_xml_elements_equal(elem1, elem2):
|
||||
def are_xml_elements_equal_with_offset(elem1, elem2):
|
||||
if (
|
||||
elem1.tag != elem2.tag
|
||||
or elem1.attrib != elem2.attrib
|
||||
|
|
@ -23,7 +23,7 @@ def are_xml_elements_equal(elem1, elem2):
|
|||
return False
|
||||
|
||||
for child1, child2 in zip(elem1, elem2):
|
||||
if not are_xml_elements_equal(child1, child2):
|
||||
if not are_xml_elements_equal_with_offset(child1, child2):
|
||||
return False
|
||||
|
||||
return True
|
||||
|
|
@ -33,20 +33,20 @@ def are_xml_elements_equal(elem1, elem2):
|
|||
"xyxy, name, polygon, expected_result, exception",
|
||||
[
|
||||
(
|
||||
[0, 0, 10, 10],
|
||||
np.array([0, 0, 10, 10]),
|
||||
"test",
|
||||
None,
|
||||
ET.fromstring(
|
||||
"""<object><name>test</name><bndbox><xmin>0</xmin><ymin>0</ymin><xmax>10</xmax><ymax>10</ymax></bndbox></object>"""
|
||||
"""<object><name>test</name><bndbox><xmin>1</xmin><ymin>1</ymin><xmax>11</xmax><ymax>11</ymax></bndbox></object>"""
|
||||
),
|
||||
DoesNotRaise(),
|
||||
),
|
||||
(
|
||||
[0, 0, 10, 10],
|
||||
np.array([0, 0, 10, 10]),
|
||||
"test",
|
||||
[[0, 0], [10, 0], [10, 10], [0, 10]],
|
||||
np.array([[0, 0], [10, 0], [10, 10], [0, 10]]),
|
||||
ET.fromstring(
|
||||
"""<object><name>test</name><bndbox><xmin>0</xmin><ymin>0</ymin><xmax>10</xmax><ymax>10</ymax></bndbox><polygon><x1>0</x1><y1>0</y1><x2>10</x2><y2>0</y2><x3>10</x3><y3>10</y3><x4>0</x4><y4>10</y4></polygon></object>"""
|
||||
"""<object><name>test</name><bndbox><xmin>1</xmin><ymin>1</ymin><xmax>11</xmax><ymax>11</ymax></bndbox><polygon><x1>1</x1><y1>1</y1><x2>11</x2><y2>1</y2><x3>11</x3><y3>11</y3><x4>1</x4><y4>11</y4></polygon></object>"""
|
||||
),
|
||||
DoesNotRaise(),
|
||||
),
|
||||
|
|
@ -61,7 +61,7 @@ def test_object_to_pascal_voc(
|
|||
):
|
||||
with exception:
|
||||
result = object_to_pascal_voc(xyxy=xyxy, name=name, polygon=polygon)
|
||||
assert are_xml_elements_equal(result, expected_result)
|
||||
assert are_xml_elements_equal_with_offset(result, expected_result)
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
|
|
@ -86,13 +86,13 @@ def test_parse_polygon_points(
|
|||
assert result == expected_result
|
||||
|
||||
|
||||
ONE_CLASS_N_BBOX = """<annotation><object><name>test</name><bndbox><xmin>0</xmin><ymin>0</ymin><xmax>10</xmax><ymax>10</ymax></bndbox></object><object><name>test</name><bndbox><xmin>10</xmin><ymin>10</ymin><xmax>20</xmax><ymax>20</ymax></bndbox></object></annotation>"""
|
||||
ONE_CLASS_N_BBOX = """<annotation><object><name>test</name><bndbox><xmin>1</xmin><ymin>1</ymin><xmax>11</xmax><ymax>11</ymax></bndbox></object><object><name>test</name><bndbox><xmin>11</xmin><ymin>11</ymin><xmax>21</xmax><ymax>21</ymax></bndbox></object></annotation>"""
|
||||
|
||||
|
||||
ONE_CLASS_ONE_BBOX = """<annotation><object><name>test</name><bndbox><xmin>0</xmin><ymin>0</ymin><xmax>10</xmax><ymax>10</ymax></bndbox></object></annotation>"""
|
||||
ONE_CLASS_ONE_BBOX = """<annotation><object><name>test</name><bndbox><xmin>1</xmin><ymin>1</ymin><xmax>11</xmax><ymax>11</ymax></bndbox></object></annotation>"""
|
||||
|
||||
|
||||
N_CLASS_N_BBOX = """<annotation><object><name>test</name><bndbox><xmin>0</xmin><ymin>0</ymin><xmax>10</xmax><ymax>10</ymax></bndbox></object><object><name>test</name><bndbox><xmin>20</xmin><ymin>30</ymin><xmax>30</xmax><ymax>40</ymax></bndbox></object><object><name>test2</name><bndbox><xmin>10</xmin><ymin>10</ymin><xmax>20</xmax><ymax>20</ymax></bndbox></object></annotation>"""
|
||||
N_CLASS_N_BBOX = """<annotation><object><name>test</name><bndbox><xmin>1</xmin><ymin>1</ymin><xmax>11</xmax><ymax>11</ymax></bndbox></object><object><name>test</name><bndbox><xmin>21</xmin><ymin>31</ymin><xmax>31</xmax><ymax>41</ymax></bndbox></object><object><name>test2</name><bndbox><xmin>11</xmin><ymin>11</ymin><xmax>21</xmax><ymax>21</ymax></bndbox></object></annotation>"""
|
||||
|
||||
NO_DETECTIONS = """<annotation></annotation>"""
|
||||
|
||||
|
|
@ -138,7 +138,7 @@ NO_DETECTIONS = """<annotation></annotation>"""
|
|||
),
|
||||
],
|
||||
)
|
||||
def test_detections_from_xml_obj(
|
||||
def test_detections_from_xml_obj_with_offset(
|
||||
xml_string, classes, resolution_wh, force_masks, expected_result, exception
|
||||
):
|
||||
with exception:
|
||||
|
|
|
|||
Loading…
Reference in New Issue