scoresight
scoresight copied to clipboard
ScoreSight is a powerful scoreboard OCR software for live broadcasts
ScoreSight - Real-time OCR For Scoreboards, Apps, Games and more
ScoreSight is an OCR (Optical Character Recognition) application designed to extract text from real-time updating streams like scoreboards, applications, videos and games. It is written in Python and utilizes the following technologies:
- Qt6: A cross-platform GUI toolkit for creating graphical user interfaces.
- OpenCV: A computer vision library for image and video processing.
- Tesseract OCR: An open-source OCR engine for recognizing text from images.
It is the best free real-time OCR tool on planet Earth for scoreboards and games.
If you'd like to donate to help support the project, you can do so on GitHub or Patreon.
Features
- Works natively on Windows, Mac and Linux (the only scoreboard OCR tool that does it)
- Input/Capture: USB, NDI, Screen Capture, URL / RTSP, Video Files, etc.
- Perspective correction
- Image processing and binarization techniques, local, global etc.
- Output to text files (.txt, .csv, .xml)
- HTTP output via local server: HTML, JSON, XML and CSV endpoints
- Import & Export configuration profiles
- Integrations: OBS (websocket), vMix (API), NewBlue FX Titler (API)
- Up to 30 updates/s
- Unlimited detection boxes
- Camera bump and drift correction with stabilization algorithm
- Unlimited devices or open instances on the same device
- Detect any scoreboard fonts, general fonts and even "dot" indicators
- Translated to 12 languages (English, German, Spanish, French, Italian, Japanese, Korean, Dutch, Polish, Portugese, Russian, Chinese)
Price: FREE.
Usage
Very short video tutorials:
Additional guides:
- How to use the internal HTTP server
- How to connect to vMix
Installation
See the releases page for downloadable executables and installers.
See the Install Guide for help with installation.
Running and Building from Source
Prerequisites
- Python 3.11
- git
Procedure
- Clone the repository:
git clone https://github.com/occ-ai/scoresight.git
- Install the required dependencies:
pip install -r requirements.txt
For Mac and Windows there are further dependencies in requirements-mac.txt
and requirements-win.txt
- Create a
.env
file. See the contents of the file in the.github/worksflows/build.yaml
file
Windows
There are some extra steps for installation on Windows:
- Download and install https://visualstudio.microsoft.com/visual-cpp-build-tools/ C++ Build Tools
- Build the win32DeviceEnum pyd by
$ cd win32DeviceEnum && python.exe setup.py build_ext --inplace
Running from source
-
Compile the UI files into Python:
./scripts/compile_ui.ps1
-
Launch the application:
python main.py
-
Follow the on-screen instructions to load an image of the scoreboard and extract the text.
Build an executable
You may want to build a distributable .exe or .app or even an installer, this is possible with PyInstaller.
To build the executable run PyInstaller.
MacOS
pyinstaller --clean --noconfirm scoresight.spec -- --mac_osx
Windows
pyinstaller --clean --noconfirm scoresight.spec -- --win
Linux
pyinstaller --clean --noconfirm scoresight.spec
Contributing
Contributions are welcome! If you would like to contribute to this project, please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes and commit them.
- Push your changes to your forked repository.
- Submit a pull request.
License
This project is released under the MIT license.
Contact
If you have any questions or suggestions, feel free to leave an issue on the repository. You may also email [email protected].
Business Inquiries
If you wish to contract the development team to productionize ScoreSight for your needs, please contact [email protected].