资料详情

基于Python的发票OCR-数字识别的简单实现 课程论文+项目源码

头像

Python

编号:2040

目录

大体思路

人为预先设好一些数据矩阵之间进行比较

处理的准备

开始实践

环境搭建

数据集准备

预处理

之后我们对其进行二值化

寻找数字

预设数据

2 from  PIL  import  Image

3 import  numpy  as  np

比较

1 # 计算灰度值的平均值

开始识别

8 # !!! 注意这里截取的是二值化后的图片

13 init  =  -1

2 import  Levenshtein 3

手写字体

环境搭建

数据集准备

预处理

35 # 取出一张图片 即一整行

开始识别

看看我写的是啥

1 from  PIL  import  Image 2

识别结果统计

3 statis = {} 4

16 # 计算图片的感知哈希

数据集

算法上的提升

从数字到文字

源码结构

发票 OCR - 数字识别的简单实现

本教程旨在使用简单的操作步骤实现一个简单的发票上的数字视频。

我们不追求识别率和速度,目的只是想让大家初步体验一下人工智能和计算机视觉 CV。

大体思路

解析图像 转换为 灰度图二值化处理

截取到需要的数据使用矩阵存储图片

人为预先设好一些数据矩阵之间进行比较

预测输出

处理的准备

图片大小 1218*788

待识别的区域是固定的,我们只识别右上角部分的数字。

使用 opencv 进行图片的找轮廓等处理, pillow 进行图片的处理。

配合其他的一些库进行更方便的处理,安装请参考下面的教程。

开始实践


从我们上面的已知部分来看,我们的计划似乎是完美的,实际上手操作后,处处都有困难 …不管如何,先做起来再说!

环境搭建

如果大家有虚拟环境可以使用虚拟环境:

1

# 创建新的虚拟环境

2

python  -m  virtualenv  myenv

3

4

# 进入虚拟环境

5

source  myenv/bin/activate

6

7

# 安装

8

pip  install  -r  requirements.txt

也可以直接使用 pip  安装

1

pip  install  -r  requirements.txt

这样在使用一些第三方库的时候就不会出现找不到的问题了。如果使用 Anaconda