Skip to main content

A package to extract player names and scores from MK8DX tables using YOLO and ONNX-based EasyOCR.

Project description

MK8DX Table Reader

A Python package to extract player names and scores from Mario Kart 8 Deluxe end-game tables using YOLO object detection and ONNX-based EasyOCR.

Installation

Option 1: Lightweight ONNX Version (Recommended)

# Install the package (without heavy PyTorch dependencies)
pip install mk8dx-table-reader

# Download ONNX EasyOCR models (~17 MB)
python download_easyocr_models.py

Total size: ~50 MB

Option 2: PyTorch Version (Fallback)

# Install with PyTorch-based EasyOCR
pip install mk8dx-table-reader[pytorch-ocr]

Total size: ~2 GB

Features

  • Extract player names from MK8DX end-game screenshots
  • Read scores and positions from tables
  • Uses YOLO for object detection
  • NEW: ONNX-based EasyOCR for lightweight inference (3-4x faster, 97% smaller)
  • Fallback to PyTorch EasyOCR if ONNX models not available
  • OCR powered by optimized ONNX models and Keras models

Requirements

Core Requirements

  • Python >= 3.11.11
  • OpenCV
  • ONNXRuntime
  • Ultralytics YOLO
  • NumPy
  • Pillow

Optional Requirements

  • EasyOCR (PyTorch-based, only if not using ONNX models)

Usage

from mk8dx_table_reader import Fullreader
import PIL

# Initialize reader (automatically uses ONNX if models are available)
reader = Fullreader()

# Load an image
img = PIL.Image.open("screenshot.png")

# Extract player names and scores
names, scores = reader.fullOCR(img)

print("Players:", names)
print("Scores:", scores)

ONNX EasyOCR Benefits

Feature PyTorch EasyOCR ONNX EasyOCR
Package Size ~2 GB ~17 MB
Inference Speed Baseline 3-4x faster
Memory Usage ~2 GB RAM ~50 MB RAM
Accuracy 100% >95%

See EASYOCR_ONNX_GUIDE.md for more details.

License

See LICENSE.md for details.

Author

Julien ABADIE - julien.abadie@etu.uca.fr

GitHub

https://github.com/PrizeWhipser/shortcat.tips

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mk8dx_table_reader-0.6.2.tar.gz (54.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mk8dx_table_reader-0.6.2-py3-none-any.whl (54.6 MB view details)

Uploaded Python 3

File details

Details for the file mk8dx_table_reader-0.6.2.tar.gz.

File metadata

  • Download URL: mk8dx_table_reader-0.6.2.tar.gz
  • Upload date:
  • Size: 54.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for mk8dx_table_reader-0.6.2.tar.gz
Algorithm Hash digest
SHA256 6fe65c0603eebe8223a7908325813b30a80bfd60df212d1f539a8950878f026b
MD5 825885d2b0fdcac2f79a0738001de65a
BLAKE2b-256 8aadb862fad112a5a15e9f002e5e3e42fea8e4b4e84888fc1926bd13f05ca113

See more details on using hashes here.

File details

Details for the file mk8dx_table_reader-0.6.2-py3-none-any.whl.

File metadata

File hashes

Hashes for mk8dx_table_reader-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bb67753c2f87a33a9e620617f8da5bcc01f49ee65eabd70ce64bc8bd7f5a5b8f
MD5 587fc82e0dfcb7e1f06728eab512ab08
BLAKE2b-256 bc437217f3490dd4d8fe41156913f660a7ec788b622e5296544e8d067006f819

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page