Zrozumienie OCR i poprawa dokładności

Ten przewodnik wyjaśnia, jak działa OCR w VNTranslator i zawiera praktyczne wskazówki, jak poprawić dokładność rozpoznawania tekstu.

Uwaga: Ten przewodnik koncentruje się głównie na tradycyjnych silnikach OCR (Tesseract OCR i Windows OCR). Jeśli używasz nowoczesnych silników OCR, takich jak Fast OCR, silników opartych na LLM (Qwen 2.5 VL, GPT-4 Vision, Claude Vision) lub silników w chmurze (Google Cloud Vision, Azure Cloud Vision), możesz pominąć większość korekt wstępnego przetwarzania, ponieważ te silniki automatycznie radzą sobie ze skomplikowanymi tłami i kolorowym tekstem.

Jak działa OCR w VNTranslator

1. Zrzut ekranu

Pierwszym krokiem w procesie OCR jest przechwycenie obrazu z ekranu. Jakość przechwyconego obrazu ma znaczący wpływ na zdolność silnika OCR do dokładnego rozpoznawania tekstu.

2. Wstępne przetwarzanie (przetwarzanie obrazu)

Tylko dla tradycyjnych silników OCR.

Wstępne przetwarzanie jest głównie potrzebne przy użyciu Tesseract OCR lub Windows OCR. Nowoczesne silniki OCR, takie jak Fast OCR, Silniki oparte na LLM, oraz silniki w chmurze potrafią radzić sobie z różnymi warunkami tekstu bez korekt wstępnego przetwarzania.

Podczas wstępnego przetwarzania obraz jest dostosowywany tak, aby tekst był czarny na białym tle. Ten kontrast ułatwia tradycyjnym silnikom OCR rozpoznawanie tekstu.

Kiedy stosować wstępne przetwarzanie:

  • Używasz Tesseract OCR lub Windows OCR

  • Tekst w grze ma kolorowe tła

  • Niski kontrast między tekstem a tłem

  • Potrzeba poprawy dokładności rozpoznawania dla tradycyjnych silników

Kiedy wstępne przetwarzanie NIE jest potrzebne:

  • Używasz Fast OCR lub nowoczesnych silników OCR

  • Używasz silników opartych na LLM (Qwen 2.5 VL, GPT-4 Vision, Claude Vision)

  • Używasz silników w chmurze (Google Cloud Vision, Azure Cloud Vision)

3. Wybór silnika OCR

Dokładność rozpoznawania tekstu zależy w dużej mierze od wybranego silnika OCR. VNTranslator obsługuje trzy kategorie silników OCR:

Tradycyjne silniki OCR

  • Przykłady: Tesseract OCR, Windows OCR

  • Najlepsze do: Prosty tekst z czarnym tekstem na białym tle

  • Ograniczenia: Może mieć problemy z kolorowym tekstem lub złożonym tłem

  • Wymaga: Korekt wstępnego przetwarzania dla lepszej dokładności

Nowoczesne silniki OCR ⭐⭐⭐

  • Przykłady: Fast OCR, EasyOCR

  • Najlepsze do: Umiarkowane zakłócenia tła i tekst wielokolorowy

  • Zalety: Lepsze radzenie sobie z różnymi warunkami tekstu bez wstępnego przetwarzania

  • Wymaga: Minimalne lub brak wstępnego przetwarzania

Silniki OCR oparte na AI ⭐⭐⭐⭐⭐

  • Przykłady: Google Cloud Vision, Azure Cloud Vision, Qwen 2.5 VL, GPT-4 Vision, Claude Vision

  • Najlepsze do: Złożone tła, obrócony tekst i kolorowy tekst

  • Zalety: Wysoka dokładność bez wstępnego przetwarzania, automatycznie obsługuje różne warunki tekstu

  • Wymaga: Wstępne przetwarzanie nie jest potrzebne

Aby zobaczyć pełne porównanie silników OCR, zobacz Silniki OCR.

4. Post-processing

Po przetworzeniu tekstu przez silnik OCR wynik zostanie wyświetlony. Jeśli rozpoznawanie jest niedokładne, możesz dokonać poprawek w etapie post-processingu, używając wyrażeń regularnych (RegExp) w celu dopracowania wyników.

Post-processing jest przydatny dla wszystkich typów silników OCR, aby:

  • Usunąć niechciane znaki

  • Naprawić typowe błędy rozpoznawania

  • Sformatować tekst wyjściowy


Wskazówki dotyczące poprawy dokładności OCR

Dla tradycyjnych silników OCR (Tesseract, Windows OCR)

  1. Zadbaj o wysoką jakość zrzutów ekranu: Im lepsza jakość przechwycenia ekranu, tym wyższa dokładność OCR. Unikaj rozmazanych lub niskoresolucyjnych obrazów.

  2. Używaj skutecznego wstępnego przetwarzania: Dostosuj obraz, aby miał wysoki kontrast (czarny tekst na białym tle), co ułatwi rozpoznawanie tekstu przez silnik OCR.

  3. Wybierz odpowiednie ustawienia progowania: Eksperymentuj z wartościami progowania w opcjach wstępnego przetwarzania, aby znaleźć najlepsze ustawienie dla swojej gry.

Dla nowoczesnych i AI-opartych silników OCR

  1. Zadbaj o wysoką jakość zrzutów ekranu: Dobra jakość przechwycenia nadal pomaga, ale te silniki są bardziej wyrozumiałe względem jakości obrazu.

  2. Pomiń wstępne przetwarzanie: Nowoczesne i AI-oparte silniki OCR działają najlepiej z oryginalnym obrazem bez korekt wstępnego przetwarzania.

  3. Wybierz odpowiedni silnik dla swoich potrzeb:

    • Użyj Fast OCR dla offline'owego, szybkiego rozpoznawania o umiarkowanej dokładności

    • Użyj silniki w chmurze dla najwyższej dokładności przy złożonym tekście

    • Użyj Silniki oparte na LLM dla maksymalnej elastyczności i dokładności

Dla wszystkich typów silników OCR

  1. Wykorzystaj post-processing: Jeśli rozpoznanie tekstu jest niepoprawne lub chcesz usunąć konkretne znaki, użyj RegExp podczas post-processingu, aby dopracować wynik.

  2. Ustaw obszar przechwytywania poprawnie: Upewnij się, że obszar przechwytywania obejmuje tylko pole dialogowe z tekstem, aby uniknąć przechwycenia niepotrzebnych elementów.

  3. Przetestuj różne silniki: Wypróbuj różne silniki OCR, aby znaleźć ten, który najlepiej działa dla Twojej konkretnej gry lub powieści wizualnej.