Cómo leer texto de una imagen en PHP
¿Quieres una solución que lea texto de una imagen en PHP? Hay algunos casos en los que desea leer texto mediante programación. Probablemente desee comprobar si el texto de una imagen es abusivo, es posible que desee reconocer la imagen del texto, etc. En este artículo, estudiamos cómo leer texto de una imagen en PHP.
Tesseract OCR es un motor de OCR de código abierto que nos permite detectar texto en imagen. El usuario puede instalar el motor Tesseract OCR en sistemas operativos como Windows, macOS, Linux. Obtendrá las instrucciones de instalación en su documentación.
Instalación del motor Tesseract OCR
Como se dijo anteriormente, Tesseract OCR brinda soporte a todos los principales sistemas operativos. Para este tutorial, supongo que está utilizando el sistema operativo Windows. Hay 2 formas de instalar Tesseract OCR en máquinas con Windows. Uno está usando el instalador y otro está usando Chocolatey. Chocolatey es un administrador de paquetes para Windows y fácil de usar para desarrolladores.
De la primera forma, descarga el instalador para Windows. Elija el instalador para el sistema de 32 bits o 64 bits según la configuración de su máquina. Completa el proceso de instalación.
Si desea instalarlo con Chocolatey, simplemente ejecute el siguiente comando en Windows Powershell. Asegúrese de estar ejecutando un comando como administrador.
choco install capture2text --version 3.9
Una vez que haya instalado Tesseract OCR en su sistema operativo Windows, establezca esta ruta C:Program FilesTesseract-OCR
en su variable de entorno. Después de configurar la ruta en una variable de entorno, se recomienda reiniciar su sistema. A veces no surte efecto hasta que reinicia el sistema.
A continuación, instale la biblioteca Tesseract OCR en su proyecto PHP. Para ello, ejecute el siguiente comando desde el directorio raíz de su proyecto.
composer require thiagoalessio/tesseract_ocr
Leer texto de imagen en PHP
Ya está listo con el software y la biblioteca Tesseract OCR. Ahora, puede detectar fácilmente texto en la imagen. Solo requiere unas pocas líneas de código PHP. Digamos que desea leer el contenido de la siguiente imagen.
Coloque la imagen en el directorio ‘imágenes’ de su proyecto. En el archivo PHP su código será el siguiente:
<?php
require_once "vendor/autoload.php";
use thiagoalessioTesseractOCRTesseractOCR;
echo (new TesseractOCR('images/text.png'))
->run();
La salida final debe obtener la siguiente:
The quick brown fox jumps over the lazy dog.
Con Tesseract OCR, puede leer el texto de varios idiomas. Todo lo que necesita hacer es descargar el archivo de idioma requerido desde esta ubicación. Supongamos que desea leer un texto escrito en alemán. Descargue el deu.traineddata
archivo y guárdelo dentro C:/Program Files/Tesseract-OCR/tessdata
.
Después de esto, pase el idioma ‘deu’ en el código como se muestra a continuación.
echo (new TesseractOCR('IMAGE_PATH'))
->lang('deu')
->run();
¡Eso es! Es así de simple. Espero que sepas leer el texto de la imagen en PHP. Me gustaría escuchar sus pensamientos y sugerencias en la sección de comentarios a continuación.
Artículos relacionados
- Conversión de voz a texto con Amazon Transcribe en PHP
- Integración de la pasarela de pago de PayPal en PHP mediante la API REST de PayPal
- Cómo detectar dispositivos móviles en PHP