Rumah pembangunan bahagian belakang tutorial php Menggunakan PHP dan Tesseract untuk melaksanakan fungsi pengecaman teks imej OCR

Menggunakan PHP dan Tesseract untuk melaksanakan fungsi pengecaman teks imej OCR

Jun 25, 2023 am 10:01 AM
php ocr tesseract

Dengan perkembangan pesat kecerdasan buatan dan teknologi penglihatan komputer, OCR (Optical Character Recognition), sistem pengecaman aksara optik, telah menjadi semakin matang dan telah menjadi fungsi yang diperlukan dalam banyak senario aplikasi. Sistem OCR boleh mengecam teks dalam imej supaya maklumat dalam imej boleh diproses secara digital dan dianalisis secara bijak. Artikel ini akan memperkenalkan cara menggunakan PHP dan Tesseract untuk melaksanakan fungsi pengecaman teks imej OCR.

1. Pengenalan kepada Tesseract

Tesseract ialah enjin OCR sumber terbuka yang dibangunkan oleh HP Labs dan disumbangkan kepada komuniti sumber terbuka. Ia menyokong berbilang bahasa, mempunyai pengiktirafan yang tinggi dan ketepatan yang tinggi. Versi terkini Tesseract ialah 4.1.1.

2. Konfigurasikan persekitaran dan pasang Tesseract

  1. Pasang PHP

Mula-mula anda perlu memasang PHP secara setempat atau pada pelayan. Jika persekitaran XAMPP atau WAMP sudah dipasang pada mesin ini, anda boleh terus menggunakan php yang disertakan dengan xampp atau wamp Jika tidak, anda perlu memasangnya secara manual.

  1. Pasang Tesseract

Muat turun Tesseract dari laman web rasmi https://github.com/tesseract-ocr/tesseract Pilih muat turun mengikut sistem pengendalian yang anda gunakan. Pasang selepas muat turun selesai. Jika anda perlu menggunakan bahasa Cina, anda juga perlu memuat turun pek bahasa yang sepadan.

Laksanakan tesseract --versi dalam tetingkap baris arahan untuk mengesahkan sama ada Tesseract berjaya dipasang.

3. Gunakan PHP dan Tesseract untuk melaksanakan fungsi pengecaman teks imej OCR

  1. Pasang PHP dan pasang Tesseract

Pertama, anda perlu memasang PHP dan memasang Tesseract.

2. Lulus dalam laluan imej dan laksanakan pengecaman arahan

Gunakan fungsi exec (atau shell_exec() atau system()) untuk melaksanakan arahan untuk mengecam teks dalam imej. Parameter yang diluluskan adalah parameter arahan yang diperlukan oleh Tesseract, di mana "chi_sim" ialah bahasa yang akan diiktiraf dan boleh diubah suai mengikut keperluan.

$command = "tesseract " $image_path ." " .$output_path." -l chi_sim"; ) fungsi memperoleh hasil pengiktirafan akhir dan mengembalikannya.

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

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

Berikut ialah contoh mudah untuk menguji sama ada fungsi pengecaman teks imej OCR berfungsi dengan betul.

(1) Mula-mula anda perlu menyediakan gambar, di sini kami menggunakan gambar yang mengandungi teks bahasa Cina.

(2) Lulus laluan imej untuk dikenali dan laluan hasil output ke dalam fungsi Kod adalah seperti berikut:

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) Panggil. fungsi dan keluarkan hasilnya, Kodnya adalah seperti berikut:

$image_path = './test.jpg';

$output_path = './test'; echo $result;

(4) Jalankan program Jika semuanya berjalan lancar, keputusan berikut akan dikeluarkan:

"Ini adalah gambar ujian yang mengandungi teks bahasa Cina

5. Ringkasan


Melalui pengenalan ini." artikel, pembaca boleh memahami cara menggunakan PHP dan Tesseract untuk melaksanakan fungsi pengecaman teks Imej OCR. Untuk sesetengah senario aplikasi yang memerlukan pengecaman teks imej, pengekstrakan teks yang cepat dan tepat boleh dicapai, meningkatkan kecekapan dan ketepatan kerja. Sudah tentu, dalam senario aplikasi yang berbeza, kita perlu mengubah suai dan mengoptimumkan kod mengikut keperluan sebenar untuk benar-benar mencapai hasil yang lebih baik.

Atas ialah kandungan terperinci Menggunakan PHP dan Tesseract untuk melaksanakan fungsi pengecaman teks imej OCR. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1587
276
VSCODE SETTINGS.JSON Lokasi VSCODE SETTINGS.JSON Lokasi Aug 01, 2025 am 06:12 AM

Fail Tetapan.JSON terletak di laluan peringkat pengguna atau ruang kerja dan digunakan untuk menyesuaikan tetapan vscode. 1. Laluan peringkat pengguna: Windows adalah C: \ Users \\ AppData \ Roaming \ code \ user \ settings.json, macOS adalah /users//library/applicationsupport/code/user/settings.json, linux adalah/ 2. Laluan Tahap Ruang Kerja: .VSCODE/Tetapan dalam Direktori Root Projek

Pergi dengan contoh contoh pembalakan middleware http Pergi dengan contoh contoh pembalakan middleware http Aug 03, 2025 am 11:35 AM

HTTP Log Middleware di GO boleh merakam kaedah permintaan, laluan, IP klien dan memakan masa. 1. Gunakan http.handlerfunc untuk membungkus pemproses, 2. Rekod waktu mula dan masa akhir sebelum dan selepas memanggil next.servehttp, 3. Dapatkan IP pelanggan sebenar melalui r.remoteaddr dan X-forward-for headers, 4. Gunakan log.printf untuk mengeluarkan log permintaan, 5. Kod sampel lengkap telah disahkan untuk dijalankan dan sesuai untuk memulakan projek kecil dan sederhana. Cadangan lanjutan termasuk menangkap kod status, menyokong log JSON dan meminta penjejakan ID.

Penonton pdf tepi tidak berfungsi Penonton pdf tepi tidak berfungsi Aug 07, 2025 pm 04:36 PM

Testthepdfinanotherapptodetermineiftheisseiswiththefileoredge.2.enableTetHEBuilt-Inpdfviewerbyturningoff "AlwaysopenpdffileseXternally" dan "muat turun" inedgesettings.3.clearbrowsdataincludingcookiesandcookiescookiesandcookiescookiesandcookiescookieshincookieshincookiescookiescookiescookiescookiescookiescookiescookiescookiescokiescookiescookiescookiescookiescookiescooker

Menggunakan PHP untuk mengikis data dan automasi web Menggunakan PHP untuk mengikis data dan automasi web Aug 01, 2025 am 07:45 AM

UseGuzzleforrobustHTTPrequestswithheadersandtimeouts.2.ParseHTMLefficientlywithSymfonyDomCrawlerusingCSSselectors.3.HandleJavaScript-heavysitesbyintegratingPuppeteerviaPHPexec()torenderpages.4.Respectrobots.txt,adddelays,rotateuseragents,anduseproxie

Pembangun Yii: Menguasai Kemahiran Teknikal Penting Pembangun Yii: Menguasai Kemahiran Teknikal Penting Aug 04, 2025 pm 04:54 PM

Untuk menjadi tuan YII, anda perlu menguasai kemahiran berikut: 1) Memahami seni bina MVC YII, 2) mahir dalam menggunakan ActiveReCordorm, 3) dengan berkesan menggunakan alat penjanaan kod GII, 4) menguasai peraturan pengesahan YII, 5) mengoptimumkan prestasi pertanyaan pangkalan data, 6) secara berterusan memberi perhatian kepada sumber -sumber YII. Melalui pembelajaran dan amalan kemahiran ini, keupayaan pembangunan di bawah kerangka YII dapat diperbaiki secara komprehensif.

Pintasan kod vs untuk memberi tumpuan kepada Panel Explorer Pintasan kod vs untuk memberi tumpuan kepada Panel Explorer Aug 08, 2025 am 04:00 AM

Di VSCode, anda boleh menukar kawasan panel dan penyuntingan dengan cepat melalui kekunci pintasan. Untuk melompat ke panel Explorer kiri, gunakan CTRL Shift E (Windows/Linux) atau CMD Shift E (MAC); Kembali ke kawasan penyuntingan untuk menggunakan Ctrl `atau ESC atau Ctrl 1 ~ 9. Berbanding dengan operasi tetikus, pintasan papan kekunci lebih cekap dan tidak mengganggu irama pengekodan. Petua lain termasuk: Kotak carian fokus Ctrl Kctrl e, fail menamakan semula F2, memadam fail, masukkan fail terbuka, arrow kunci memperluas/runtuh folder.

Menggunakan jenis html `input` untuk data pengguna Menggunakan jenis html `input` untuk data pengguna Aug 03, 2025 am 11:07 AM

Memilih jenis htmlinput yang betul dapat meningkatkan ketepatan data, meningkatkan pengalaman pengguna, dan meningkatkan kebolehgunaan. 1. Pilih jenis input yang sepadan mengikut jenis data, seperti teks, e -mel, tel, nombor dan tarikh, yang secara automatik boleh menyemak dan menyesuaikan diri dengan papan kekunci; 2. Gunakan HTML5 untuk menambah jenis baru seperti URL, Warna, Julat dan Carian, yang dapat memberikan kaedah interaksi yang lebih intuitif; 3. Gunakan pemegang tempat dan sifat -sifat yang diperlukan untuk meningkatkan kecekapan dan ketepatan pengisian bentuk, tetapi harus diperhatikan bahawa pemegang tempat tidak dapat menggantikan label.

Tetap: Kemas kini Windows gagal dipasang Tetap: Kemas kini Windows gagal dipasang Aug 08, 2025 pm 04:16 PM

RuntheWindowsUpdateTroubleshooterviaSettings>Update&Security>Troubleshoottoautomaticallyfixcommonissues.2.ResetWindowsUpdatecomponentsbystoppingrelatedservices,renamingtheSoftwareDistributionandCatroot2folders,thenrestartingtheservicestocle

See all articles