>  기사  >  백엔드 개발  >  PHP와 Tesseract를 사용하여 OCR 처리를 수행하는 방법

PHP와 Tesseract를 사용하여 OCR 처리를 수행하는 방법

王林
王林원래의
2023-06-21 13:36:101899검색

OCR(Optical Character Recognition, 광학 문자 인식)은 이미지 속 텍스트를 컴퓨터가 읽을 수 있는 텍스트로 변환하는 기술입니다. 이미지의 텍스트를 편집 가능한 텍스트로 변환하는 데 도움이 됩니다. 이 기사에서는 OCR 처리를 위해 PHP와 OCR 엔진 Tesseract를 사용하는 방법을 소개합니다.

  1. Tesseract 설치

먼저 Tesseract OCR 엔진을 설치해야 합니다. Tesseract는 Google에서 개발한 오픈 소스 OCR 엔진입니다. 여러 텍스트 언어를 인식하고 다양한 플랫폼에서 작동합니다.

Linux 시스템에 Tesseract를 설치할 때 다음 명령을 사용할 수 있습니다:

sudo apt-get install tesseract-ocr

Windows 시스템의 경우 Tesseract 공식 웹사이트(https://github.com/tesseract-ocr/tesseract)에서 설치 프로그램을 다운로드할 수 있으며 그것을 설치하십시오.

  1. PHP 확장 설치

다음으로 Tesseract를 사용하려면 PHP 확장을 설치해야 합니다. PHP에는 "tesseract"라는 OCR 확장이 있어 PHP에서 Tesseract 엔진을 사용할 수 있습니다.

Linux 시스템에서는 다음 명령을 사용하여 설치할 수 있습니다.

sudo apt-get install php-tesseract

Windows 시스템에서는 PECL(http://pecl.php.net/package/tesseract)에서 확장 기능을 다운로드하여 설치할 수 있습니다. php.ini 파일에 다음 줄을 추가하여 확장 기능을 활성화할 수 있습니다:

extension=tesseract.so
  1. Recognize text

다음으로 PHP와 Tesseract를 사용하여 이미지의 텍스트를 인식하겠습니다.

먼저 인식해야 할 텍스트가 포함된 그림을 준비해야 합니다. "example.png"라는 이미지가 있다고 가정하고 다음 코드를 사용하여 그 안의 텍스트를 식별합니다.

<?php
    function recognize_text($filename) {
        $tesseract = new TesseractOCR($filename);
        $tesseract->setLanguage('eng');
        $tesseract->setTempDir('/tmp');
        return $tesseract->recognize();
    }

    $filename = 'example.png';
    $text = recognize_text($filename);
    echo $text;
?>

위 코드에서는 TesseractOCR 클래스를 사용하여 이미지의 텍스트를 식별했습니다. 이 클래스의 생성자에는 OCR 처리가 필요한 이미지의 파일 이름인 파일 이름 매개변수가 필요합니다.

setLanguage() 메소드는 사용할 인식 언어를 지정하며 여기서는 영어를 지정합니다. setTempDir() 메서드는 인식 프로세스 중에 임시 파일을 저장하는 데 사용되는 디렉터리를 설정합니다. 마지막으로 recognition() 메서드를 호출하여 OCR 처리를 수행하고 결과를 반환하거나 출력합니다.

  1. 결론

이 기사에서는 PHP와 Tesseract를 사용하여 OCR 처리를 수행하는 방법을 배웠습니다. 먼저 Tesseract OCR 엔진과 tesseract 확장을 설치한 다음 PHP 코드를 사용하여 이미지의 텍스트를 인식했습니다. OCR 기술을 사용하면 이미지에서 편집 가능한 텍스트를 추출할 수 있으며, 이는 문서 스캔, 디지털 아카이브 등과 같은 다양한 시나리오에 적용할 수 있습니다.

위 내용은 PHP와 Tesseract를 사용하여 OCR 처리를 수행하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.