mirror of
https://github.com/RapidAI/RapidOCR.git
synced 2026-11-10 21:10:55 +08:00
test: update PP-OCRv4/v5 unit testings
This commit is contained in:
1 parent
1be3e8980c
commit
92c2d93a40
7 files changed
+85
-19
No files matched your search
@@ -127,8 +127,8 @@ EngineConfig:
|
||||
Det:
|
||||
engine_type: "onnxruntime"
|
||||
lang_type: "ch"
|
||||
model_type: "mobile"
|
||||
ocr_version: "PP-OCRv4"
|
||||
model_type: "small"
|
||||
ocr_version: "PP-OCRv6"
|
||||
|
||||
task_type: "det"
|
||||
|
||||
@@ -166,8 +166,8 @@ Cls:
|
||||
Rec:
|
||||
engine_type: "onnxruntime"
|
||||
lang_type: "ch"
|
||||
model_type: "mobile"
|
||||
ocr_version: "PP-OCRv4"
|
||||
model_type: "small"
|
||||
ocr_version: "PP-OCRv6"
|
||||
|
||||
task_type: "rec"
|
||||
|
||||
|
||||
@@ -35,13 +35,6 @@ root_dir = Path(__file__).resolve().parent
|
||||
DEFAULT_CFG_PATH = root_dir / "config.yaml"
|
||||
|
||||
|
||||
def normalize_cli_lang_type(lang_type: str) -> Union[LangRec, str]:
|
||||
try:
|
||||
return LangRec(lang_type)
|
||||
except ValueError:
|
||||
return lang_type
|
||||
|
||||
|
||||
class RapidOCR:
|
||||
def __init__(
|
||||
self, config_path: Optional[str] = None, params: Optional[Dict[str, Any]] = None
|
||||
@@ -425,6 +418,13 @@ def parse_args(arg_list: Optional[List[str]] = None):
|
||||
return args
|
||||
|
||||
|
||||
def normalize_cli_lang_type(lang_type: str) -> Union[LangRec, str]:
|
||||
try:
|
||||
return LangRec(lang_type)
|
||||
except ValueError:
|
||||
return lang_type
|
||||
|
||||
|
||||
def main(arg_list: Optional[List[str]] = None):
|
||||
args = parse_args(arg_list)
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ PP_OCRV6_LANGS = frozenset(
|
||||
"nl",
|
||||
"no",
|
||||
"oc",
|
||||
"pi",
|
||||
"pl",
|
||||
"pt",
|
||||
"qu",
|
||||
"rm",
|
||||
|
||||
@@ -9,7 +9,7 @@ from pytest import mark
|
||||
root_dir = Path(__file__).resolve().parent.parent
|
||||
sys.path.append(str(root_dir))
|
||||
|
||||
from rapidocr import EngineType, ModelType, OCRVersion, RapidOCR
|
||||
from rapidocr import EngineType, LangRec, ModelType, OCRVersion, RapidOCR
|
||||
from rapidocr.utils.utils import import_package
|
||||
|
||||
tests_dir = root_dir / "tests" / "test_files"
|
||||
@@ -90,8 +90,13 @@ def test_engine_paddle(ocr_version, gt):
|
||||
params={
|
||||
"Det.engine_type": EngineType.PADDLE,
|
||||
"Det.ocr_version": ocr_version,
|
||||
"Det.lang_type": LangRec.CH,
|
||||
"Det.model_type": ModelType.MOBILE,
|
||||
"Cls.engine_type": EngineType.PADDLE,
|
||||
"Rec.engine_type": EngineType.PADDLE,
|
||||
"Rec.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Rec.lang_type": LangRec.CH,
|
||||
"Rec.model_type": ModelType.MOBILE,
|
||||
}
|
||||
)
|
||||
|
||||
@@ -103,9 +108,15 @@ def test_engine_paddle(ocr_version, gt):
|
||||
def test_engine_torch():
|
||||
engine = RapidOCR(
|
||||
params={
|
||||
"Det.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Det.model_type": ModelType.MOBILE,
|
||||
"Det.lang_type": LangRec.CH,
|
||||
"Det.engine_type": EngineType.TORCH,
|
||||
"Cls.engine_type": EngineType.TORCH,
|
||||
"Rec.engine_type": EngineType.TORCH,
|
||||
"Rec.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Rec.model_type": ModelType.MOBILE,
|
||||
"Rec.lang_type": LangRec.CH,
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -12,7 +12,14 @@ from pytest import mark
|
||||
root_dir = Path(__file__).resolve().parent.parent
|
||||
sys.path.append(str(root_dir))
|
||||
|
||||
from rapidocr import LoadImageError, RapidOCR
|
||||
from rapidocr import (
|
||||
EngineType,
|
||||
LangRec,
|
||||
LoadImageError,
|
||||
ModelType,
|
||||
OCRVersion,
|
||||
RapidOCR,
|
||||
)
|
||||
from rapidocr.utils.parse_parameters import ParseParams
|
||||
|
||||
test_dir = root_dir / "tests" / "test_files"
|
||||
@@ -22,7 +29,20 @@ config_path = root_dir / "rapidocr" / "config.yaml"
|
||||
|
||||
@pytest.fixture()
|
||||
def engine():
|
||||
engine = RapidOCR()
|
||||
engine = RapidOCR(
|
||||
params={
|
||||
"Det.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Det.model_type": ModelType.MOBILE,
|
||||
"Det.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Cls.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Cls.model_type": ModelType.MOBILE,
|
||||
"Cls.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Rec.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Rec.model_type": ModelType.MOBILE,
|
||||
"Rec.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Rec.lang_type": LangRec.CH,
|
||||
}
|
||||
)
|
||||
return engine
|
||||
|
||||
|
||||
|
||||
@@ -138,7 +138,18 @@ def test_en_lang(ocr_version):
|
||||
|
||||
def test_ch_doc_server():
|
||||
engine = RapidOCR(
|
||||
params={"Rec.lang_type": LangRec.CH_DOC, "Rec.model_type": ModelType.SERVER}
|
||||
params={
|
||||
"Det.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Det.model_type": ModelType.MOBILE,
|
||||
"Det.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Cls.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Cls.model_type": ModelType.MOBILE,
|
||||
"Cls.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Rec.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Rec.model_type": ModelType.SERVER,
|
||||
"Rec.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Rec.lang_type": LangRec.CH_DOC,
|
||||
}
|
||||
)
|
||||
|
||||
img_path = tests_dir / "ch_doc_server.png"
|
||||
@@ -149,7 +160,18 @@ def test_ch_doc_server():
|
||||
|
||||
def test_server_rec():
|
||||
engine = RapidOCR(
|
||||
params={"Rec.lang_type": LangRec.CH, "Rec.model_type": ModelType.SERVER}
|
||||
params={
|
||||
"Det.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Det.model_type": ModelType.MOBILE,
|
||||
"Det.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Cls.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Cls.model_type": ModelType.MOBILE,
|
||||
"Cls.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Rec.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Rec.model_type": ModelType.SERVER,
|
||||
"Rec.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Rec.lang_type": LangRec.CH_DOC,
|
||||
}
|
||||
)
|
||||
result = engine(img_path)
|
||||
assert result.txts is not None
|
||||
|
||||
@@ -11,14 +11,27 @@ from pytest import mark
|
||||
root_dir = Path(__file__).resolve().parent.parent
|
||||
sys.path.append(str(root_dir))
|
||||
|
||||
from rapidocr import RapidOCR
|
||||
from rapidocr import EngineType, LangRec, ModelType, OCRVersion, RapidOCR
|
||||
|
||||
test_dir = root_dir / "tests" / "test_files"
|
||||
|
||||
|
||||
@pytest.fixture()
|
||||
def engine():
|
||||
engine = RapidOCR()
|
||||
engine = RapidOCR(
|
||||
params={
|
||||
"Det.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Det.model_type": ModelType.MOBILE,
|
||||
"Det.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Cls.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Cls.model_type": ModelType.MOBILE,
|
||||
"Cls.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Rec.ocr_version": OCRVersion.PPOCRV4,
|
||||
"Rec.model_type": ModelType.MOBILE,
|
||||
"Rec.engine_type": EngineType.ONNXRUNTIME,
|
||||
"Rec.lang_type": LangRec.CH,
|
||||
}
|
||||
)
|
||||
return engine
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user