Jak czytać tekst z obrazu w PHP
Czy potrzebujesz rozwiązania, które odczytuje tekst z obrazu w PHP? W niektórych przypadkach chcesz programowo czytać tekst. Prawdopodobnie chcesz sprawdzić, czy tekst na obrazie jest obraźliwy, możesz chcieć rozpoznać obrazek z tekstu itp. W tym artykule uczymy się czytać tekst z obrazka w PHP.
Tesseract OCR to silnik OCR typu open source, który umożliwia wykrywanie tekstu w obrazie. Użytkownik może zainstalować silnik Tesseract OCR na systemach operacyjnych takich jak Windows, macOS, Linux. Otrzymasz instrukcję instalacji w ich dokumentacji.
Instalacja Tesseract OCR Engine
Jak wspomniano powyżej, Tesseract OCR zapewnia wsparcie dla wszystkich głównych systemów operacyjnych. W tym samouczku zakładam, że używasz systemu operacyjnego Windows. Istnieją 2 sposoby instalacji Tesseract OCR na komputerach z systemem Windows. Jeden używa instalatora, a drugi Chocolatey. The Chocolatey to menedżer pakietów dla systemu Windows i przyjazny dla programistów.
W pierwszej kolejności Pobierz instalator dla systemu Windows. Wybierz instalator dla systemu 32-bitowego lub 64-bitowego w zależności od konfiguracji komputera. Zakończ proces instalacji.
Jeśli chcesz zainstalować go za pomocą Chocolatey, po prostu uruchom poniższe polecenie w Windows Powershell. Upewnij się, że uruchamiasz polecenie jako administrator.
choco install capture2text --version 3.9
Po zainstalowaniu Tesseract OCR w systemie operacyjnym Windows ustaw tę ścieżkę C:Program FilesTesseract-OCR
w zmiennej środowiskowej. Po ustawieniu ścieżki w zmiennej środowiskowej zalecane jest ponowne uruchomienie systemu. Czasami nie działa, dopóki nie uruchomisz ponownie systemu.
Następnie zainstaluj bibliotekę Tesseract OCR w swoim projekcie PHP. W tym celu uruchom poniższe polecenie z katalogu głównego projektu.
composer require thiagoalessio/tesseract_ocr
Czytaj tekst z obrazu w PHP
Jesteś gotowy z oprogramowaniem i biblioteką Tesseract OCR. Teraz możesz łatwo wykryć tekst na obrazie. Wymaga tylko kilku linijek kodu PHP. Załóżmy, że chcesz przeczytać treść poniższego obrazu.
Umieść obraz w katalogu ‘images’ swojego projektu. W pliku PHP Twój kod będzie wyglądał następująco:
<?php
require_once "vendor/autoload.php";
use thiagoalessioTesseractOCRTesseractOCR;
echo (new TesseractOCR('images/text.png'))
->run();
Ostateczny wynik powinieneś uzyskać w następujący sposób:
The quick brown fox jumps over the lazy dog.
Za pomocą Tesseract OCR możesz czytać tekst w różnych językach. Wszystko, co musisz zrobić, to pobrać wymagany plik językowy z tej lokalizacji. Załóżmy, że chcesz przeczytać tekst napisany w języku niemieckim. Pobierz deu.traineddata
plik i zachowaj go w środku C:/Program Files/Tesseract-OCR/tessdata
.
Następnie przekaż język „deu" w kodzie, jak pokazano poniżej.
echo (new TesseractOCR('IMAGE_PATH'))
->lang('deu')
->run();
Otóż to! To takie proste. Mam nadzieję, że umiesz czytać tekst z obrazka w PHP. Chciałbym usłyszeć wasze przemyślenia i sugestie w sekcji komentarzy poniżej.
Powiązane artykuły
- Zamiana mowy na tekst przy użyciu transkrypcji Amazon w PHP
- Integracja PayPal Payment Gateway w PHP za pomocą PayPal REST API
- Jak wykryć urządzenie mobilne w PHP