A Screen Translator/OCR Translator made by using Python and Tesseract, the user interface are made using Tkinter. All code written in python.

Overview

About

An OCR translator tool. Made by me by utilizing Tesseract, compiled to .exe using pyinstaller. I made this program to learn more about python.

Inspired by Visual Novel Reader (VNR), Visual Novel OCR, and QTranslate

Requirements

For User

  • tesseract, You only need to install it and its language tessdata
  • Internet connection Obviously

For Dev

  • Python 3.5+, checked using vermin (I am using python 3.9.6)
  • Libraries from python: os, sys, functools, json, webbrowser, subprocess, datetime, Mbox, tkinter, pathlib, asyncio
  • External libraries: pyperclip, pytesseract, pyautogui, pillow, deepl_scraper_pp, deep_translator, keyboard

You can install them by running pip_install.bat or by installing them yourself, full details are located at requirements.txt.
*If i miss anything please let me know.

Tutorial on How To Install and Setup

For User

  1. Download the latest release of this program

  2. Install tesseract, make sure to select install all language pack when prompted

  3. Open the ScreenTranslate.exe

  4. Check settings, make sure tesseract location is correct

  5. Set monitor scaling to 100% so that image is captured accurately (If scaling is not set to 100% you will need to set offset in setting) (Recommended)

  6. Set offset if on multiple monitors. (Optional)

  7. Try capturing image and see if it works or not, if it doesn't, go check the image captured in img_cache folder. If it still doesn't work, try to change the offset.

  8. Now that you have set everything, the app should be ready. Feel free to submit new issue on the github repository if you encounter any bugs.

For Dev

  1. Clone the repo or download the source code of the latest release

  2. Install tesseract, make sure select install all language pack when prompted

  3. Install all the dependencies used for the project

  4. Run and test the source code

  5. If everything works, you can run the app normally running the ScreenTranslate.py file or using the TempRun.bat

if everything works and you have a suggestion or improvement, you can submit a pull request on the github repository. I will check if it's a good idea to add it.

How To Compile It To .exe Yourself

You can use p2exe or many other stuff. I use pyinstaller to compile it.
Command used are

# On Source Code Directory
pyinstaller ScreenTranslate.spec

Read this stackoverflow post to learn more on how to do it.

Tutorial on How To Use

  1. Select Language
  2. Translate or Capture Image using the capture window
  3. Set hotkeys and delays as needed
  4. Set offset if needed (Usually when scaling is not 100% or when using multiple monitors)
  5. Done

Disclaimer

This is a free open source software, you can use it for any purpose. However, I am not responsible for any damage caused by this software. Use it at your own risk. (Not that it will do anything to you, it's just a tool to help you translate text lol)

This is also non profit, I gain no money from creating this.

Comments
  • Thank you for creating the software. But can you help me to solve the following problems.

    Thank you for creating the software. But can you help me to solve the following problems.

    I tried translating the game tales of arise. doesn't seem to work well with large fonts. And often appear "Please enter some text". Does (Opacity) affect the effectiveness of text detection in the game? How should I adjust the Offset X , Y , W , H, for the software to work best image

    opened by nonamebatbai 25
  • Multiple improvements, view comment

    Multiple improvements, view comment

    • Add hotkey for capture and translate
      • Uses python module 'keyboard'
      • Example: Set hotkey to 'Enter' such that pressing enter can both advance the VN and capture
      • User is able to set the hotkey in settings by pressing button and press desired hotkey
    • Instead of reading Setting.json everytime the screen is captured, cached settings in memory is read to reduce read from hard drive
    • Auto copy resource and user_manual from source through .spec file; Removed redundant files from copy_after_compiling
    • Fix typo
    • Add files to .gitignore
    opened by laggykiller 8
  • Changing directory structure

    Changing directory structure

    • Change directory structure
    • Use os.path.join() instead of string joining for handling paths
    • Use variables of paths instead of joining path everytime it is used
    opened by laggykiller 4
  • i have an idea

    i have an idea

    hfg

    pretty good results. so my idea is you can create an extra window. and darken the surroundings. to see the text better and the "Text Capture Area" will work better and the "Text Capture Area" window must be overlaid on the new window to darken the surroundings to work properly. hfg12 I darkened the "Text Capture Area" and used "Capture Area Settings" to translate and got the exact same result as the picture above.

    opened by nonamebatbai 3
  •  Can you add more OCR engines to your software?

    Can you add more OCR engines to your software?

    Untitled This dialogue with black border translates very accuratel Untitled1 y or the dark scene, the translation is also very accurat Untitled 2 e but the light scene cannot be translated. Can you solve this problem? Why does the software not work when the scene is bright?

    opened by nonamebatbai 3
  • thank you very much

    thank you very much

    thank you very much . The software is considered complete. I'm so grateful for your hard work to create great software like this. And this is also the last version you updated?

    opened by nonamebatbai 0
Releases(V1.8.5)
Owner
Fauzan F A
An Informatics Engineering Student at UIN Syarif Hidayatullah Jakarta
Fauzan F A
Select range and every time the screen changes, OCR is activated.

ASOCR(Auto Screen OCR) Select range and every time you press Space key, OCR is activated. 範囲を選ぶと、あなたがスペースキーを押すたびに、画面が変わる度にOCRが起動します。 usage1: simple OC

1 Feb 13, 2022
[ICCV, 2021] Cloud Transformers: A Universal Approach To Point Cloud Processing Tasks

Cloud Transformers: A Universal Approach To Point Cloud Processing Tasks This is an official PyTorch code repository of the paper "Cloud Transformers:

Visual Understanding Lab @ Samsung AI Center Moscow 27 Dec 15, 2022
2 telegram-bots: for image recognition and for text generation

💻 📱 Telegram_Bots 🔎 & 📖 2 telegram-bots: for image recognition and for text generation. About Image recognition bot: User sends a photo and bot de

Marina Polukoshko 1 Jan 27, 2022
Image Smoothing and Blurring Using OpenCV

Image-Smoothing-and-Blurring-Using-OpenCV This repository contains codes for performing image smoothing and blurring using OpenCV. There are different

Happy N. Monday 3 Feb 15, 2022
An expandable and scalable OCR pipeline

Overview Nidaba is the central controller for the entire OGL OCR pipeline. It oversees and automates the process of converting raw images into citable

81 Jan 04, 2023
A post-processing tool for scanned sheets of paper.

unpaper Originally written by Jens Gulden — see AUTHORS for more information. Licensed under GNU GPL v2 — see COPYING for more information. Overview u

27 Dec 07, 2022
Detect textlines in document images

Textline Detection Detect textlines in document images Introduction This tool performs border, region and textline detection from document image data

QURATOR-SPK 70 Jun 30, 2022
SemTorch

SemTorch This repository contains different deep learning architectures definitions that can be applied to image segmentation. All the architectures a

David Lacalle Castillo 154 Dec 07, 2022
Détection de créneaux de vaccination disponibles pour l'outil ViteMaDose

Vite Ma Dose ! est un outil open source de CovidTracker permettant de détecter les rendez-vous disponibles dans votre département afin de vous faire v

CovidTracker 239 Dec 13, 2022
Morphological edge detection or object's boundary detection using erosion and dialation in OpenCV python

Morphologycal-edge-detection-using-erosion-and-dialation the task is to detect object boundary using erosion or dialation . Here, use the kernel or st

Tamzid hasan 3 Nov 25, 2022
Handwritten Number Recognition using CNN and Character Segmentation

Handwritten-Number-Recognition-With-Image-Segmentation Info About this repository This Repository is aimed at reading handwritten images of numbers an

Sparsha Saha 17 Aug 25, 2022
This project proposes a camera vision based cursor control system, using hand moment captured from a webcam through a landmarks of hand by using Mideapipe module

This project proposes a camera vision based cursor control system, using hand moment captured from a webcam through a landmarks of hand by using Mideapipe module

Chandru 2 Feb 20, 2022
A python screen recorder for low-end computers, provides high quality video output.

RecorderX - v1.0 A screen recorder made in Python with the help of OpenCv, it has ability to record your screen in high quality. No matter what your P

Priyanshu Jindal 4 Nov 10, 2021
YOLOv5 in DOTA with CSL_label.(Oriented Object Detection)(Rotation Detection)(Rotated BBox)

YOLOv5_DOTA_OBB YOLOv5 in DOTA_OBB dataset with CSL_label.(Oriented Object Detection) Datasets and pretrained checkpoint Datasets : DOTA Pretrained Ch

1.1k Dec 30, 2022
Text recognition (optical character recognition) with deep learning methods.

What Is Wrong With Scene Text Recognition Model Comparisons? Dataset and Model Analysis | paper | training and evaluation data | failure cases and cle

Clova AI Research 3.2k Jan 04, 2023
A Python script to capture images from multiple webcams at once and save them into your local machine

Capturing multiple images at once from Webcam Using OpenCV Capture multiple image by accessing the webcam of your system and save it to your machine.

Fazal ur Rehman 2 Apr 16, 2022
An interactive interface for using OpenCV's GrabCut algorithm for image segmentation.

Interactive GrabCut An interactive interface for using OpenCV's GrabCut algorithm for image segmentation. Setup Install dependencies: pip install nump

Jason Y. Zhang 16 Oct 10, 2022
This repository summarized computer vision theories.

This repository summarized computer vision theories.

3 Feb 04, 2022
Rotational region detection based on Faster-RCNN.

R2CNN_Faster_RCNN_Tensorflow Abstract This is a tensorflow re-implementation of R2CNN: Rotational Region CNN for Orientation Robust Scene Text Detecti

UCAS-Det 581 Nov 22, 2022
Code release for Hu et al., Learning to Segment Every Thing. in CVPR, 2018.

Learning to Segment Every Thing This repository contains the code for the following paper: R. Hu, P. Dollár, K. He, T. Darrell, R. Girshick, Learning

Ronghang Hu 417 Oct 03, 2022