Maison  >  Article  >  développement back-end  >  Utiliser PHP et Tesseract pour implémenter la fonction de reconnaissance de texte d'image OCR

Utiliser PHP et Tesseract pour implémenter la fonction de reconnaissance de texte d'image OCR

WBOY
WBOYoriginal
2023-06-25 10:01:363067parcourir

Avec le développement rapide de l'intelligence artificielle et de la technologie de vision par ordinateur, l'OCR (Optical Character Recognition), le système de reconnaissance optique de caractères, est devenu de plus en plus mature et est devenu une fonction nécessaire dans de nombreux scénarios d'application. Le système OCR peut reconnaître le texte de l'image, de sorte que les informations contenues dans l'image puissent être traitées numériquement et analysées intelligemment. Cet article expliquera comment utiliser PHP et Tesseract pour implémenter la fonction de reconnaissance de texte d'image OCR.

1. Introduction à Tesseract

Tesseract est un moteur OCR open source développé par HP Labs et contribué à la communauté open source. Il prend en charge plusieurs langues, offre une reconnaissance élevée et une grande précision. La dernière version de Tesseract est la 4.1.1.

2. Configurez l'environnement et installez Tesseract

  1. Installez PHP

Vous devez d'abord installer PHP localement ou sur le serveur. Si l'environnement XAMPP ou WAMP est déjà installé sur cette machine, vous pouvez utiliser directement le php fourni avec xampp ou wamp. Sinon, vous devez l'installer manuellement.

  1. Installez Tesseract

Téléchargez Tesseract depuis le site officiel https://github.com/tesseract-ocr/tesseract Sélectionnez le téléchargement en fonction du système d'exploitation que vous utilisez. Installez une fois le téléchargement terminé. Si vous devez utiliser le chinois, vous devez également télécharger le pack de langue correspondant.

Exécutez tesseract --version dans la fenêtre de ligne de commande pour vérifier si Tesseract est installé avec succès.

3. Utilisez PHP et Tesseract pour implémenter la fonction de reconnaissance de texte d'image OCR

  1. Installez PHP et installez Tesseract

Tout d'abord, vous devez installer PHP et installer Tesseract.

2. Transmettez le chemin de l'image et exécutez la reconnaissance de la commande

Utilisez la fonction exec (ou shell_exec() ou system()) pour exécuter la commande permettant de reconnaître le texte dans l'image. Les paramètres transmis sont les paramètres de commande requis par Tesseract, où "chi_sim" est la langue à reconnaître et peut être modifiée selon les besoins.

$command = "tesseract ". $image_path ." " .$output_path." -l chi_sim"
//Exécuter la commande
exec($command);

  1. Obtenir les résultats reconnus

Utiliser file_get_contents( ) la fonction obtient le résultat final de la reconnaissance et le renvoie.

if (file_exists($output_path.'.txt')) {

    $content = file_get_contents($output_path.'.txt');
    //返回识别结果
    return $content;

}

4. Test

Ce qui suit est un exemple simple pour tester si la fonction de reconnaissance de texte d'image OCR fonctionne correctement.

(1) Vous devez d’abord préparer une image, ici nous utilisons une image contenant du texte chinois.

(2) Passez le chemin de l'image à reconnaître et le chemin du résultat de sortie dans la fonction Le code est le suivant :

function ocr($image_path, $output_path) {

$command = "tesseract ". $image_path ." " .$output_path." -l chi_sim"; 
//执行命令
exec($command);

if (file_exists($output_path.'.txt')) {
    $content = file_get_contents($output_path.'.txt');
    //返回识别结果
    return $content;
}

}

(3) Appelez le. fonction et affiche le résultat, le code est le suivant :

$image_path = './test.jpg';
$output_path = './test';
$result = ocr($image_path,$output_path);

echo $result;

(4) Exécutez le programme. Si tout se passe bien, les résultats suivants seront affichés :

"Ceci est une image de test contenant du texte chinois." Dans cet article, les lecteurs peuvent comprendre comment utiliser PHP et Tesseract pour implémenter la fonction de reconnaissance de texte d'image OCR. Pour certains scénarios d'application nécessitant une reconnaissance de texte d'image, une extraction de texte rapide et précise peut être obtenue, améliorant ainsi l'efficacité et la précision du travail. Bien entendu, dans différents scénarios d’application, nous devons modifier et optimiser le code en fonction des besoins réels pour obtenir de meilleurs résultats.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn