From a2e11df528b7f488a8718ee695d9d77506390b6e Mon Sep 17 00:00:00 2001 From: SWHL Date: Tue, 30 Jan 2024 22:10:35 +0800 Subject: [PATCH] Fixed the PR #150 in rapidocr_vino and rapidocr_paddle module --- python/rapidocr_openvino/main.py | 2 +- python/rapidocr_paddle/main.py | 2 +- python/tests/test_files/test_without_det.png | Bin 0 -> 52002 bytes python/tests/test_ort.py | 7 +++++++ python/tests/test_paddle.py | 7 +++++++ python/tests/test_vino.py | 7 +++++++ 6 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 python/tests/test_files/test_without_det.png diff --git a/python/rapidocr_openvino/main.py b/python/rapidocr_openvino/main.py index 9cdfa0305..269b95202 100644 --- a/python/rapidocr_openvino/main.py +++ b/python/rapidocr_openvino/main.py @@ -126,7 +126,7 @@ def auto_text_det( def get_boxes_img_without_det(self, h, w): x0, y0, x1, y1 = 0, 0, w, h - dt_boxes = np.array([[x0, y0], [x1, y0], [x1, y1], [x0, y1]]) + dt_boxes = np.float32([[x0, y0], [x1, y0], [x1, y1], [x0, y1]]) dt_boxes = dt_boxes[np.newaxis, ...] return dt_boxes diff --git a/python/rapidocr_paddle/main.py b/python/rapidocr_paddle/main.py index 9cdfa0305..269b95202 100644 --- a/python/rapidocr_paddle/main.py +++ b/python/rapidocr_paddle/main.py @@ -126,7 +126,7 @@ def auto_text_det( def get_boxes_img_without_det(self, h, w): x0, y0, x1, y1 = 0, 0, w, h - dt_boxes = np.array([[x0, y0], [x1, y0], [x1, y1], [x0, y1]]) + dt_boxes = np.float32([[x0, y0], [x1, y0], [x1, y1], [x0, y1]]) dt_boxes = dt_boxes[np.newaxis, ...] return dt_boxes diff --git a/python/tests/test_files/test_without_det.png b/python/tests/test_files/test_without_det.png new file mode 100644 index 0000000000000000000000000000000000000000..f3b13ea2ca4fa37fdca46a0b35ff6ea0cf718433 GIT binary patch literal 52002 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 literal 0 HcmV?d00001 diff --git a/python/tests/test_ort.py b/python/tests/test_ort.py index 86f48a34e..da4fa539b 100644 --- a/python/tests/test_ort.py +++ b/python/tests/test_ort.py @@ -20,6 +20,13 @@ package_name = "rapidocr_onnxruntime" +def test_without_det(): + img_path = tests_dir / "test_without_det.png" + result, _ = engine(img_path) + assert result[0][1] == "の持、持场所无。" + assert len(result) == 1 + + def test_only_det(): result, _ = engine(img_path, use_det=True, use_cls=False, use_rec=False) diff --git a/python/tests/test_paddle.py b/python/tests/test_paddle.py index c60d117fb..73a0b4305 100644 --- a/python/tests/test_paddle.py +++ b/python/tests/test_paddle.py @@ -20,6 +20,13 @@ package_name = "rapidocr_paddle" +def test_without_det(): + img_path = tests_dir / "test_without_det.png" + result, _ = engine(img_path) + assert result[0][1] == "の持、持场所无。" + assert len(result) == 1 + + def test_only_det(): result, _ = engine(img_path, use_det=True, use_cls=False, use_rec=False) diff --git a/python/tests/test_vino.py b/python/tests/test_vino.py index 44528f1d5..69cb14698 100644 --- a/python/tests/test_vino.py +++ b/python/tests/test_vino.py @@ -20,6 +20,13 @@ package_name = "rapidocr_openvino" +def test_without_det(): + img_path = tests_dir / "test_without_det.png" + result, _ = engine(img_path) + assert result[0][1] == "の持、持场所无。" + assert len(result) == 1 + + def test_only_det(): result, _ = engine(img_path, use_det=True, use_cls=False, use_rec=False)