A real-time, camera-powered text reader with multilingual OCR and voice playback. Bring text on paper or screens to life using your webcam! Supports English ๐ฌ๐ง, Bengali ๐ง๐ฉ, Hindi ๐ฎ๐ณ, and Tamil ๐ฎ๐ณ.
- ๐ฅ Live Camera Preview with enhanced GUI overlay
- ๐๏ธโ๐จ๏ธ Instant OCR from a smart capture area
- ๐ Text-to-Speech for extracted text
- ๐ Multiple Languages: English, Bengali, Hindi, Tamil (press 1โ4)
- โจ๏ธ Hotkey Controls:
1๏ธโฃ 2๏ธโฃ 3๏ธโฃ 4๏ธโฃ โ Change language
โฌ SPACE โ Capture & Read Text
๐ R โ Repeat Last Text
โ Q โ Quit Application - ๐ช Mirror Mode for easy point-and-capture interface
- Python 3.7+
- Tesseract OCR installed and added to your system PATH
-git clone https://github.com/rivu-intel45/luna-reader.git -pip install -r requirements.txt
- ๐ช Windows: Download installer and complete setup
- ๐ง Linux: sudo apt-get install tesseract-ocr tesseract-ocr-ben tesseract-ocr-hin tesseract-ocr-tam
- ๐ macOS: brew install tesseract
For full language support, make sure
ben.traineddata,hin.traineddata, andtam.traineddataare present in yourtessdatafolder.
Update the Tesseract path in your code if needed: pytesseract.pytesseract.tesseract_cmd = r"C:\Program Files\Tesseract-OCR\tesseract.exe"
Then start the notebook or script and point your camera at the text inside the green capture box.
| Key | Action | Emoji |
|---|---|---|
| 1 | Switch to English | ๐ฌ๐ง |
| 2 | Switch to Bengali | ๐ง๐ฉ |
| 3 | Switch to Hindi | ๐ฎ๐ณ |
| 4 | Switch to Tamil | ๐ฎ๐ณ |
| SPACE | Capture & Read Text | โฌ๏ธ |
| R | Repeat Last Text | ๐ |
| Q | Quit Application | โ |
- opencv-python
- pytesseract
- pillow
- gtts
- pygame
- numpy
โ ๏ธ Tesseract not found? Check thetesseract_cmdpath and PATH configuration.- ๐ No audio? Verify system volume, default output device, and
pygameinstallation. - ๐ No text detected? Improve lighting, adjust focus, and keep text fully inside the capture box.
Pull requests are welcome!
For major changes, please open an issue first to discuss what you would like to improve or add.