Automatically translate manga and comics from any language to any language using OCR and machine translation.
🇬🇧 Try the previous version of Evoars on Hugging Face (CPU-based, processing may be slower)
🇹🇷 Evoars'ın önceki sürümünü Hugging Face'te test edin (CPU tabanlı, işlem daha yavaş olabilir)
These repositories contain current and active versions of the project.
Manga Comic Colorization and Translation v2
manga_cizgi_roman_ceviri_v1 Evoars
| Original (Input) / Orijinal (Giriş) | Translated (Output) / Çevrilmiş (Çıkış) |
|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
This project uses artificial intelligence to automatically translate manga and comics from one language to another. It combines OCR (Optical Character Recognition) to extract text from images and neural machine translation to provide accurate translations.
The translator processes manga or comic images by detecting text areas, extracting the text using EasyOCR, translating it using Hugging Face transformers, and then overlaying the translated text back onto the image. This fully automated pipeline makes it easy to translate entire manga volumes or comic series.
1. Text Detection
- Uses EasyOCR to detect and extract text from manga/comic images
- Identifies text regions and their coordinates
- Groups nearby text elements together (speech bubbles, captions)
2. Text Translation
- Utilizes Hugging Face Transformers for neural machine translation
- Supports multiple language models (Helsinki-NLP/opus-mt models)
- Preserves text context and meaning during translation
3. Image Processing
- Creates white rectangles over original text areas
- Wraps and fits translated text into available space
- Maintains original image layout and aesthetics
4. Text Overlay
- Automatically adjusts font size and positioning
- Centers translated text in available space
- Handles multi-line text with proper wrapping
- Multi-Language Support - Translate between various languages using different models
- Automatic Text Detection - Smart OCR with EasyOCR
- Context-Aware Grouping - Groups related text elements (speech bubbles)
- Batch Processing - Process multiple images at once with progress tracking
- Preserves Layout - Maintains original manga/comic layout
- Text Wrapping - Automatically wraps long translations
Requirements:
- Python 3.7+
- Required packages:
pip install easyocr==1.7.1 transformers==4.41.1 opencv-python==4.9.0.80 tqdm==4.66.2 textwrap3==0.9.2
-
Place your manga/comic images in the
manga/folder -
Run the translation script:
python manga_çeviri.py
-
Translated images will be saved in the
cevri_manga/folder
Customization:
You can change the translation model in the code:
# Change this line to use different language pairs
translator = pipeline(task="translation", model="Helsinki-NLP/opus-mt-tc-big-en-tr")Available models:
Helsinki-NLP/opus-mt-en-tr- English to TurkishHelsinki-NLP/opus-mt-ja-en- Japanese to EnglishHelsinki-NLP/opus-mt-en-ja- English to Japanese- And many more on Hugging Face
Key Functions:
yakın_kelimeleri_bul()- Groups nearby text elements based on coordinatesorta_nokta_bul()- Finds center point of text regionsverileri_düzelt()- Cleans and formats extracted texttranslators()- Performs neural machine translationbeyaz_kare_olustur()- Creates white boxes and overlays translated text
Bu proje, yapay zeka kullanarak mangaları ve çizgi romanları bir dilden diğerine otomatik olarak çevirir. Görüntülerden metin çıkarmak için OCR (Optik Karakter Tanıma) ve doğru çeviriler sağlamak için sinir ağı tabanlı makine çevirisi birleştirir.
Çevirici, manga veya çizgi roman görüntülerini işleyerek metin alanlarını tespit eder, EasyOCR kullanarak metni çıkarır, Hugging Face transformers ile çevirir ve ardından çevrilmiş metni görüntü üzerine geri yerleştirir. Bu tam otomatik işlem hattı, tüm manga ciltlerini veya çizgi roman serilerini çevirmeyi kolaylaştırır.
1. Metin Tespiti
- Manga/çizgi roman görüntülerinden metin tespit etmek ve çıkarmak için EasyOCR kullanır
- Metin bölgelerini ve koordinatlarını tanımlar
- Yakındaki metin öğelerini gruplar (konuşma balonları, altyazılar)
2. Metin Çevirisi
- Sinir ağı tabanlı makine çevirisi için Hugging Face Transformers kullanır
- Birden fazla dil modelini destekler (Helsinki-NLP/opus-mt modelleri)
- Çeviri sırasında metin bağlamını ve anlamını korur
3. Görüntü İşleme
- Orijinal metin alanlarının üzerine beyaz dikdörtgenler oluşturur
- Çevrilmiş metni mevcut alana sığdırır ve sarar
- Orijinal görüntü düzenini ve estetiğini korur
4. Metin Yerleştirme
- Yazı tipi boyutunu ve konumlandırmayı otomatik olarak ayarlar
- Çevrilmiş metni mevcut alana ortalar
- Çok satırlı metni uygun şekilde sarar
- Çoklu Dil Desteği - Farklı modeller kullanarak çeşitli diller arasında çeviri yapın
- Otomatik Metin Algılama - EasyOCR ile akıllı OCR
- Bağlam Duyarlı Gruplama - İlgili metin öğelerini gruplar (konuşma balonları)
- Toplu İşleme - İlerleme takibi ile birden fazla görüntüyü aynı anda işleyin
- Düzeni Korur - Orijinal manga/çizgi roman düzenini korur
- Metin Sarma - Uzun çevirileri otomatik olarak sarar
Gereksinimler:
- Python 3.7+
- Gerekli paketler:
pip install easyocr==1.7.1 transformers==4.41.1 opencv-python==4.9.0.80 tqdm==4.66.2 textwrap3==0.9.2
-
Manga/çizgi roman görüntülerinizi
manga/klasörüne yerleştirin -
Çeviri scriptini çalıştırın:
python manga_çeviri.py
-
Çevrilmiş görüntüler
cevri_manga/klasörüne kaydedilecektir
Özelleştirme:
Kodda çeviri modelini değiştirebilirsiniz:
# Farklı dil çiftleri kullanmak için bu satırı değiştirin
translator = pipeline(task="translation", model="Helsinki-NLP/opus-mt-tc-big-en-tr")Mevcut modeller:
Helsinki-NLP/opus-mt-en-tr- İngilizce'den Türkçe'yeHelsinki-NLP/opus-mt-ja-en- Japonca'dan İngilizce'yeHelsinki-NLP/opus-mt-en-ja- İngilizce'den Japonca'ya- Ve daha fazlası Hugging Face'de
Anahtar Fonksiyonlar:
yakın_kelimeleri_bul()- Koordinatlara göre yakındaki metin öğelerini gruplarorta_nokta_bul()- Metin bölgelerinin merkez noktasını bulurverileri_düzelt()- Çıkarılan metni temizler ve formatlartranslators()- Sinir ağı tabanlı makine çevirisi gerçekleştirirbeyaz_kare_olustur()- Beyaz kutular oluşturur ve çevrilmiş metni yerleştirir





