一、实验内容
1.1 介绍
将包含学号、手机号和身份证号的 A4 纸拍照保存为“学号.bmp”文件,然后对 A4 纸做校正,并采用 OSTU 等方法对图像二值化,再对A4 纸上的数字做字符切割,然后使用 SVM 等方法训练模型,最后对A4 纸上的数字做识别,并将识别得到的学号、手机号和身份证号保存在一个 Excel 文件中。
1.2 测试数据
1.3 开发环境和工具
Windows 10 64 位系统
Visual Studio Code
编译命令
g++ -std=c++11 -o main.exe main.cpp Process.cpp Canny.cpp Hough.cpp ImageWarping.cpp ImageSegmentation.cpp -O2 -lgdi32
二、实验过程
实验过程主要分为以下三个过程:
2.1 提取数字字符
提取图像中的数字字符,并将它们切割出来并保存为一张张小的图片。
2.1.1 具体流程
首先对图像进行预处理,主要是 resize 和转灰度图,然后使用 Canny 算法进行边缘检测得到图像边缘图,再进行霍夫变换得到 A4 纸的四个角点以及四条直线,接着进行图像变换Warping,最后对图像中的数字进行字符切割,将切割得到的图像保存下来,以用于后续数字识别工作。
这个过程的前半部分直至 A4 纸校正都是之前的作业,综合起来就能成功对图像进行 A4 纸检测并校正,这里我不再赘述。
最后一步数字字符切割是