图片识别
安装简单的图片识别服务,基于Tesseract-OCR引擎
安装环境
Linux ad3cf730678d 4.9.184-linuxkit #1 SMP Tue Jul 2 22:58:16 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
CentOS Linux release 7.9.2009 (Core)
安装步骤
最简单方法就是yum安装
安装
# 更新源
yum update
# 安装依赖
yum install gcc make
yum install autoconf automake libtool
yum install libjpeg-devel libpng-devel libtiff-devel zlib-devel
# 安装ocr
yum install tesseract
安装中文支持
yum install tesseract-langpack-chi_sim
查看版本
[root@test]# tesseract -v
版本3的输出
tesseract 3.04.00
leptonica-1.72
libgif 4.1.6(?) : libjpeg 6b (libjpeg-turbo 1.2.90) : libpng 1.5.13 : libtiff 4.0.3 : zlib 1.2.7 : libwebp 0.3.0
版本4和版本3有些区别,默认安装版本3;版本4安装如下
# 安装依赖,见上面步骤
# 增加源
yum-config-manager --add-repo https://download.opensuse.org/repositories/home:/Alexander_Pozdnyakov/CentOS_7/
# 安装ocr,如果有版本校验可以加上 --nogpgcheck 或者自己添加公钥
yum install tesseract -y --nogpgcheck
# 安装支持简体中文
yum install tesseract-langpack-chi-sim* --nogpgcheck
4版本的输出
[root@test]# tesseract -v
tesseract 4.1.3
leptonica-1.76.0
libjpeg 6b (libjpeg-turbo 1.2.90) : libpng 1.5.13 : libtiff 4.0.3 : zlib 1.2.7 : libwebp 0.3.0
识别效果
测试范围:英文、中文
使用php测试
- 新建目录 ocr ;
- composer init 初始化目录
- composer 安装 thiagoalessio/tesseract_ocr
- 新建test.php文件,同目录放几张测试图片,如下
|-- composer.json
|-- composer.lock
|-- src
|-- test.php
|-- test_00.png
`-- vendor
- test.php 测试代码如下
<?php
require 'vendor/autoload.php';
use thiagoalessio\TesseractOCR\TesseractOCR;
try {
$msg = (new TesseractOCR('test_00.png'))
->lang('eng', 'chi_sim') //语言根据不同版本变动
->run();
if ($msg) {
echo $msg;
} else {
echo '未识别';
}
} catch (\Exception $e) {
echo '异常:' . $e->getMessage();
}
测试总结:
- 纯色背景,打印字体识别较准确,手写效果较差
- 版本4效果比版本3好
- 版本3安装过程较顺利