mirror of
https://github.com/283375/arcaea-offline-ocr.git
synced 2025-04-15 19:40:17 +00:00
impr: __all__
for modules, style improvements
This commit is contained in:
parent
ea31aaf00c
commit
b823339986
14
.pre-commit-config.yaml
Normal file
14
.pre-commit-config.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
repos:
|
||||||
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||||
|
rev: v4.4.0
|
||||||
|
hooks:
|
||||||
|
- id: end-of-file-fixer
|
||||||
|
- id: trailing-whitespace
|
||||||
|
- repo: https://github.com/psf/black
|
||||||
|
rev: 23.1.0
|
||||||
|
hooks:
|
||||||
|
- id: black
|
||||||
|
- repo: https://github.com/PyCQA/isort
|
||||||
|
rev: 5.12.0
|
||||||
|
hooks:
|
||||||
|
- id: isort
|
@ -24,6 +24,9 @@ classifiers = [
|
|||||||
"Homepage" = "https://github.com/283375/arcaea-offline-ocr"
|
"Homepage" = "https://github.com/283375/arcaea-offline-ocr"
|
||||||
"Bug Tracker" = "https://github.com/283375/arcaea-offline-ocr/issues"
|
"Bug Tracker" = "https://github.com/283375/arcaea-offline-ocr/issues"
|
||||||
|
|
||||||
|
[tool.black]
|
||||||
|
extend-exclude = 'src/arcaea_offline_ocr/_builtin_templates.py'
|
||||||
|
|
||||||
[tool.isort]
|
[tool.isort]
|
||||||
profile = "black"
|
profile = "black"
|
||||||
src_paths = ["src/arcaea_offline_ocr"]
|
src_paths = ["src/arcaea_offline_ocr"]
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
from .crop import *
|
||||||
|
from .device import *
|
||||||
|
from .mask import *
|
||||||
|
from .ocr import *
|
||||||
|
from .recognize import *
|
||||||
|
from .template import *
|
@ -4,6 +4,18 @@ from cv2 import Mat
|
|||||||
|
|
||||||
from .device import Device
|
from .device import Device
|
||||||
|
|
||||||
|
__all__ = [
|
||||||
|
"crop_img",
|
||||||
|
"crop_from_device_attr",
|
||||||
|
"crop_to_pure",
|
||||||
|
"crop_to_far",
|
||||||
|
"crop_to_lost",
|
||||||
|
"crop_to_max_recall",
|
||||||
|
"crop_to_rating_class",
|
||||||
|
"crop_to_score",
|
||||||
|
"crop_to_title",
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
def crop_img(img: Mat, *, top: int, left: int, bottom: int, right: int):
|
def crop_img(img: Mat, *, top: int, left: int, bottom: int, right: int):
|
||||||
return img[top:bottom, left:right]
|
return img[top:bottom, left:right]
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
from dataclasses import dataclass
|
from dataclasses import dataclass
|
||||||
from typing import Any, Dict, Tuple
|
from typing import Any, Dict, Tuple
|
||||||
|
|
||||||
|
__all__ = ["Device"]
|
||||||
|
|
||||||
|
|
||||||
@dataclass(kw_only=True)
|
@dataclass(kw_only=True)
|
||||||
class Device:
|
class Device:
|
||||||
|
@ -1,6 +1,28 @@
|
|||||||
from cv2 import BORDER_CONSTANT, BORDER_ISOLATED, Mat, bitwise_or, dilate, inRange
|
from cv2 import BORDER_CONSTANT, BORDER_ISOLATED, Mat, bitwise_or, dilate, inRange
|
||||||
from numpy import array, uint8
|
from numpy import array, uint8
|
||||||
|
|
||||||
|
__all__ = [
|
||||||
|
"GRAY_MIN_HSV",
|
||||||
|
"GRAY_MAX_HSV",
|
||||||
|
"WHITE_MIN_HSV",
|
||||||
|
"WHITE_MAX_HSV",
|
||||||
|
"PST_MIN_HSV",
|
||||||
|
"PST_MAX_HSV",
|
||||||
|
"PRS_MIN_HSV",
|
||||||
|
"PRS_MAX_HSV",
|
||||||
|
"FTR_MIN_HSV",
|
||||||
|
"FTR_MAX_HSV",
|
||||||
|
"BYD_MIN_HSV",
|
||||||
|
"BYD_MAX_HSV",
|
||||||
|
"mask_gray",
|
||||||
|
"mask_white",
|
||||||
|
"mask_pst",
|
||||||
|
"mask_prs",
|
||||||
|
"mask_ftr",
|
||||||
|
"mask_byd",
|
||||||
|
"mask_rating_class",
|
||||||
|
]
|
||||||
|
|
||||||
GRAY_MIN_HSV = array([0, 0, 70], uint8)
|
GRAY_MIN_HSV = array([0, 0, 70], uint8)
|
||||||
GRAY_MAX_HSV = array([0, 70, 200], uint8)
|
GRAY_MAX_HSV = array([0, 70, 200], uint8)
|
||||||
|
|
||||||
|
@ -11,6 +11,19 @@ from .template import (
|
|||||||
matchTemplateMultiple,
|
matchTemplateMultiple,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
__all__ = [
|
||||||
|
"group_numbers",
|
||||||
|
"FilterDigitResultDict",
|
||||||
|
"filter_digit_results",
|
||||||
|
"ocr_digits",
|
||||||
|
"ocr_pure",
|
||||||
|
"ocr_far_lost",
|
||||||
|
"ocr_score",
|
||||||
|
"ocr_max_recall",
|
||||||
|
"ocr_rating_class",
|
||||||
|
"ocr_title",
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
def group_numbers(numbers: List[int], threshold: int) -> List[List[int]]:
|
def group_numbers(numbers: List[int], threshold: int) -> List[List[int]]:
|
||||||
"""
|
"""
|
||||||
|
@ -8,6 +8,19 @@ from .device import Device
|
|||||||
from .mask import *
|
from .mask import *
|
||||||
from .ocr import *
|
from .ocr import *
|
||||||
|
|
||||||
|
__all__ = [
|
||||||
|
"process_digits_ocr_img",
|
||||||
|
"process_tesseract_ocr_img",
|
||||||
|
"recognize_pure",
|
||||||
|
"recognize_far_lost",
|
||||||
|
"recognize_score",
|
||||||
|
"recognize_max_recall",
|
||||||
|
"recognize_rating_class",
|
||||||
|
"recognize_title",
|
||||||
|
"RecognizeResult",
|
||||||
|
"recognize",
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
def process_digits_ocr_img(img_hsv_cropped: Mat, mask=Callable[[Mat], Mat]):
|
def process_digits_ocr_img(img_hsv_cropped: Mat, mask=Callable[[Mat], Mat]):
|
||||||
img_hsv_cropped = mask(img_hsv_cropped)
|
img_hsv_cropped = mask(img_hsv_cropped)
|
||||||
|
@ -32,6 +32,13 @@ from numpy import uint8
|
|||||||
|
|
||||||
from ._builtin_templates import GeoSansLight_Italic, GeoSansLight_Regular
|
from ._builtin_templates import GeoSansLight_Italic, GeoSansLight_Regular
|
||||||
|
|
||||||
|
__all__ = [
|
||||||
|
"load_digit_template",
|
||||||
|
"load_builtin_digit_template",
|
||||||
|
"MatchTemplateMultipleResult",
|
||||||
|
"matchTemplateMultiple",
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
def load_digit_template(filename: str) -> Dict[int, Mat]:
|
def load_digit_template(filename: str) -> Dict[int, Mat]:
|
||||||
"""
|
"""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user