模仿全能扫描王实现文档和证件扫描
工作中常常会用到扫描全能王这个工具,对于少量的文档电子化管理实在是太方便,并且对于商务人士来说文件的管理、打印、移动办公都是非常有用。
因为对图像处理有一定的了解和实际操作,所以在想扫描王的一些扫描功能是否可以自己实现,参考网上部分资料后搭建了一个 简单的文档扫描系统。
扫描王实现流程:
1 文档定位
文档定位和本人前面一个车牌识别的定位功能大同小异,对于文件扫描一般我们会手动调整一个比较好的位置,所以背景相对来说不会特别复杂。
主要步骤如下:
1、 图片尺寸变换,将图片缩小到一定的尺寸,方便界面显示;
2、将灰度化的图片进行滤波处理,我这里采用的是中值滤波;
3、直接将图片进行二值化处理;
4、图像闭运算;
5、Candy边缘检测;
6、查找轮廓;
7、根据轮廓的大小排序;
8、判断轮廓是否是矩形、轮廓的面积大小、轮廓的周长来定位文档。
2 仿射变换进行文档校正
计算查找到的轮廓四个边的长度,选取长、宽中最大值作为校正的长宽;然后计算旋转矩阵;通过旋转矩阵将图像进行校正变换。
3 图像增强处理
扫描全能王中的扫描功能不是将图片直接进行二值化处理,而是对色彩进行增强和锐化,这样背景中的白、浅黄、灰色等会变成白色,红色、蓝色等文档本身的色彩可以一定程度的保留,在身份证扫描、合同扫描的时候非常有必要。
参考图片增强方式:
python实现图像增强
PIL模块中的ImageEnhance
常用的图像增强方式
在此经过试验采用增强代码如下:
out = 1.5 * input_image #原图像*1.5
# 进行数据截断,大于255的值截断为255
out[out > 255] = 255
# 数据类型转换
out = np.around(out)
out = out.astype(np.uint8)
4 将原图和增强图片进行显示对比
可以将原图、增强后图片、灰度图、二值化图片显示在一个界面,进行效果对比。
总结:本人搭建的扫描文档功能比较简单,主要是针对图像增强这一块的处理不是简单的二值化,但是在实际测试的过程中发现APP的识别、裁剪、定位、增强等效果都好很多,并且具有较强的泛化性能。
我实现的功能主要有以下几个问题:
1、文档自动定位功能受背景影响比较大,如果是白底白色文档的情况难以自动找到文档的轮廓;
2、背景色比较杂乱的时候简单的形态学处理比较难以区分边界,导致无法定位;
3、图片增强功能的效果鲁棒性还很欠缺,对于只有黑白文字的文档来说增强效果较好,但是对于证件照有反光和颜色深浅不一的情况容易出现过度增强,导致失真。
4、简单的二值化图像会导致文件中黑色背景过多,将原文件内容覆盖。
因此后续还需要对图像处理的算法增强,使应用有很强的泛化性能。
最后附上我的项目地址github,希望指正并完善,谢谢!
模仿全能扫描王实现文档和证件扫描相关推荐
- 如何把图片扫描成word文档?
在我们工作学习中,难免会遇到需要整理图片中的文字信息.而想要快速的整理出图片中的文字,就需要使用到一些工具来辅助我们,毕竟我们不可能一个个去手动输入,这会很麻烦又浪费我们的时间.那么如何把图片扫描成w ...
- 怎么从扫描的PDF文档/图片里提取文字
时间浪费在打字上可不好! 关于"怎么从扫描的PDF文档/图片里提取文字",我集思广益,得到如下结果: 首先是这里的一篇文章:http://hi.baidu.com/d_zzn047 ...
- ABBYY FineReader 14扫描和保存文档
在ABBYY FineReader 14中您可以使用扫描"新建任务"窗口选项卡上的内置任务创建各种格式的数字文档.本文介绍使用FineReader 14扫描和保存文档的方法. 1. ...
- 用python和FreePic2Pdf工具手把手教你生成扫描版PDF文档的目录
从网上下载一本书籍来看,结果却是书籍页数几百页还没有目录,要想找到自己想看的部分还的自己徒手去翻,哇.....这时心态就崩了,你识别是也遇到过这种情况.很多下载下来的pdf文档都是扫描版的,一般都没有 ...
- 手机本地文档文件不能扫描出来的问题
此类文章的优质博客也有很对,推荐Android手机文件快速扫描我这里主要是记录下文档文件扫描不出的问题: 是由于有些文档不能通过mime_type查询出来的文档 如:.docx .xls .xlsx ...
- 9款免费的OCR工具,从扫描的PDF文档中提取文字
Windows 10有OCR吗? Windows 10 具有适用于所有应用程序的内置OCR服务. 令人惊讶的是,这是Windows搜索工具. 查看如何使用它: 步骤 1. 打开您要扫描的照片.PDF或 ...
- 手机如何将Word文档转换为PDF扫描文件
现在手机对生活的影响越来越大了,很多的事情都可以在手机上进行,办公中阅读和查看文件也可以用手机.那如果在手机上遇到文件格式转换该怎么办呢?比如需要将最常用的Word文件转换为PDF文件该怎么做呢?有疑 ...
- 如何制作扫描版的文档
一.手机应用 1.扫描全能王 炒鸡好用. 2.其他没用过 扫描宝.office lens.坚果云扫描. 二.扫描仪版 1.用Adobe acrobat从扫描仪新建PDF https://helpx.a ...
- Android扫描系统文件,安卓文档扫描仪
不管是工作还是生活中,难免会遇到需要扫描文件给对方的情况.那么,周围环境没有扫描仪该怎么办呢?其实,手机里面有一个自带的扫描仪功能,只是你不知道也不会用罢了.今天就给分享一招手机里自动的扫描仪功能,解 ...
- 计算机上如何配置扫描设置,在 MF Toolbox 中配置扫描设置
在 MF Toolbox 中配置扫描设置 本章节说明使用 MF Toolbox 扫描时可用的各种扫描设置. 注释 双击桌面上的 [MF Toolbox] 图标时,将显示以下说明中的 [MF Toolb ...
最新文章
- 游戏在ios和android,陈情令手游ios和安卓互通吗 ios和安卓能一起玩吗
- 三观碎一地:轮子天天见,车轮悖论却2000年无解?
- OpenCV的resize方法与双线性插值
- led数字字体_技术丨体育场馆LED显示屏设计与安装要求
- View如何设置16进制颜色值
- 【leetcode】1018. 可被 5 整除的二进制前缀
- jquery常用选择器和常用方法
- 萤火虫小程序_玩转跨界营销,《狐妖小红娘》都使上了哪些神仙操作?
- 频谱、幅度谱、功率谱和能量谱
- GitHub之多人开发一个项目
- Bypass 360主机卫士SQL注入防御(多姿势)
- OTU的定义与解读----了解笔记
- 琴岛学院java书_​师生共品书 传承优秀传统文化 琴岛学院第十三届金秋读书节开幕...
- Python--基础语法知识
- Excel 提取工作表名
- 使用canvas实现对图片的翻转
- 发布物|The Open Group正式发布中文版《ArchiSurance案例研究》
- 华为Java面试真题解析,都是精髓!
- 25年持续创新的奥秘:解读亚马逊的创新DNA
- 电子木鱼这么火?Python仅需50行代码实现(附代码,及素材)
热门文章
- uni-app 获取屏幕亮度与设置屏幕亮度
- c语言编程开发app,C语言编程app
- 插入新题注变乱了_Word 自动更改题注章节编号格式“图一.1”为“图1.1”
- 网站推广优化教程100条(完整版)
- 吴翰清​的科技史观:有变革的需求,才有技术的诞生
- 股市预测python代码<循环神经网络>
- crmeb java单商户
- NPOI Word插入图片的方法
- C/C++ 编码准则,可借鉴的东西还挺多!
- 解决同一办公环境局域网下无法添加打印机的情况