向AI转型的程序员都关注了这个号????????????

机器学习AI算法工程   公众号:datayx

一个分割网络——Unet,Unet借鉴了FCN网络,其网络结构包括两个对称部分:前面一部分网络与普通卷积网络相同,使用了3x3的卷积和池化下采样,能够抓住图像中的上下文信息(也即像素间的关系);后面部分网络则是与前面基本对称,使用的是3x3卷积和上采样,以达到输出图像分割的目的。此外,网络中还用到了特征融合,将前面部分下采样网络的特征与后面上采样部分的特征进行了融合以获得更准确的上下文信息,达到更好的分割效果。

Unet使用一种称为overlap-tile的的策略,使得任意大小输入的图片都可以获得一个无缝分割。over-tile策略如下图所示:

该策略的思想是:对图像的某一块像素点(黄框内部分)进行预测时,需要该图像块周围的像素点(蓝色框内)提供上下文信息(context),以获得更准确的预测。

这样的策略会带来一个问题,图像边界的图像块没有周围像素,因此作者对周围像素采用了镜像扩充。下图中红框部分为原始图片,其周围扩充的像素点均由原图沿白线对称得到。这样,边界图像块也能得到准确的预测。

另一个问题是,这样的操作会带来图像重叠问题,即第一块图像周围的部分会和第二块图像重叠。因此作者在卷积时只使用有效部分(valid part of each convolution),虽然卷积的时候会用到周围的像素点(蓝色框内),但最终传到下一层的只有中间原先图像块(黄色框内)的部分(可理解为不加padding)。

至于为什么要对图像分块不输入整张图像则是因为内存的限制,有的机器内存比较小,需要分块输入。即便如此,相较之前的滑窗输入,Unet已经快乐非常多了,其一是因为不用取那么多块,其二是因为取块时候没有那么大的重叠。

另一个比较有意思的点是对于细胞边缘的分割像素点加大了损失权重,使得网络更加重视边缘像素的学习。

UNet 实现文档印章消除

Requirement

pytorch==1.5

opencv-python 4.2

numpy

代码及运行教程 获取:

关注微信公众号 datayx  然后回复  印章  即可获取。

AI项目体验地址 https://loveai.tech

data 的目录结构如下图:

  • test:测试集图片的路径

  • mytest:测试结果的输出路径

  • train:训练集图片的路径,包含含印章的图片以及标注印章位置的xml文件

  • train_cleaned:训练集图片人工去除印章后的标签

  • valid:验证集图片的路径,包含含印章的图片以及标注印章位置的xml文件

  • valid_cleaned:验证集图片人工去除印章后的标签

  1. config.py 设置参数,包括文件路径、模型结构参数和训练的参数等。

  2. train.py 运行 python train.py 训练模型。

  3. predict.py 运行 python predict.py 测试。

Note:

  1. 由于作者所使用的图像分辨率极高,在训练和测试时从完整图像中扣出包含印章的区域(ImageSize=512*512),然后进行训练。如果图片的分辨率适中或者显存足够大,可以跳过此步骤,无需进行印章标注,直接使用原图进行UNet训练。

  2. 从原图中扣出印章区域也可以使用yolo代替。


阅读过本文的人还看了以下文章:

TensorFlow 2.0深度学习案例实战

基于40万表格数据集TableBank,用MaskRCNN做表格检测

《基于深度学习的自然语言处理》中/英PDF

Deep Learning 中文版初版-周志华团队

【全套视频课】最全的目标检测算法系列讲解,通俗易懂!

《美团机器学习实践》_美团算法团队.pdf

《深度学习入门:基于Python的理论与实现》高清中文PDF+源码

特征提取与图像处理(第二版).pdf

python就业班学习视频,从入门到实战项目

2019最新《PyTorch自然语言处理》英、中文版PDF+源码

《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码

《深度学习之pytorch》pdf+附书源码

PyTorch深度学习快速实战入门《pytorch-handbook》

【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》

《Python数据分析与挖掘实战》PDF+完整源码

汽车行业完整知识图谱项目实战视频(全23课)

李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材

笔记、代码清晰易懂!李航《统计学习方法》最新资源全套!

《神经网络与深度学习》最新2018版中英PDF+源码

将机器学习模型部署为REST API

FashionAI服装属性标签图像识别Top1-5方案分享

重要开源!CNN-RNN-CTC 实现手写汉字识别

yolo3 检测出图像中的不规则汉字

同样是机器学习算法工程师,你的面试为什么过不了?

前海征信大数据算法:风险概率预测

【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类

VGG16迁移学习,实现医学图像识别分类工程项目

特征工程(一)

特征工程(二) :文本数据的展开、过滤和分块

特征工程(三):特征缩放,从词袋到 TF-IDF

特征工程(四): 类别特征

特征工程(五): PCA 降维

特征工程(六): 非线性特征提取和模型堆叠

特征工程(七):图像特征提取和深度学习

如何利用全新的决策树集成级联结构gcForest做特征工程并打分?

Machine Learning Yearning 中文翻译稿

蚂蚁金服2018秋招-算法工程师(共四面)通过

全球AI挑战-场景分类的比赛源码(多模型融合)

斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)

python+flask搭建CNN在线识别手写中文网站

中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程

不断更新资源

深度学习、机器学习、数据分析、python

 搜索公众号添加: datayx  


机大数据技术与机器学习工程

 搜索公众号添加: datanlp

长按图片,识别二维码

UNet实现文档印章消除相关推荐

  1. Unet实现文档图像去噪、去水印

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx requirement torch 1.2.0 torchvision 0.4.0 openc ...

  2. 智能文档处理IDP关键技术与实践-高翔

    什么是智能文档处理?针对文本数据处理尤其是纯文本,大家通常会想到使用自然语言处理(Natural language processing,NLP)技术来解决语义理解及分析处理工作.关于自然语言处理技术 ...

  3. 智能文档处理IDP关键技术与实践

    什么是智能文档处理?针对文本数据处理尤其是纯文本,大家通常会想到使用自然语言处理(Natural language processing,NLP)技术来解决语义理解及分析处理工作.关于自然语言处理技术 ...

  4. 走进AI时代的文档识别技术 之文档重建

    导读:作者系腾讯QQ研发中心--CV应用研究组的totoralin.本文主要介绍基于深度学习的文档重建框架,通过文档校正.版面分析.字体识别和阅读排序将纸质文档智能转成可编辑的电子文档.相比较传统的O ...

  5. pdf文档补丁,pdf编辑,去除pdf文件限制

    哈喽,大家好!我是指北君. 在我们的日常生活中,PDF文档是我们除了Office外经常需要接触的文件格式.很多时候,我们都需要能对PDF文档进行一些处理,比如编辑文字.拆分/合并文档.生成书签.提取图 ...

  6. html页面内分栏显示不全,怎么消除Word文档分栏后栏间不平衡现象

    IE10浏览器打开网页鼠标不能滚动查看是怎么回事? IE10浏览器黑屏,但是滚动鼠标就好了,不到一分钟...在控制面板的电源设置中,将显示器的关闭时间调到你希望的时刻就可以了. word文档分栏后左右 ...

  7. 电子传真文档怎样加盖印章

    传真件经常需要盖章发送,但电子传真文档如何加盖印章呢?把电子传真文档打印出来加盖印章吗?当然不是,当前大部分的专业传真服务器厂商出品的传真服务器系统都支持电子签章功能模块,不但节省纸张,而且提高办公效 ...

  8. 使用IText组件在PDF文档上绘制椭圆形印章的算法分析及代码分享

    1. 引言 PDF是一种和操作系统及平台无关的.可移植的电子文件格式,其以PostScript语言图像模型为基础,无论在哪种打印机上,都可保证精确的颜色和准确的打印效果.PDF将真实地再现原稿的每一个 ...

  9. 消除Word文档被加密、限制编辑的解决方法

    消除Word文档被加密.限制编辑的解决方法 因一些需要可能会需要借鉴一些文档内容,但是文档被加密了会很难受,本文提供一种亲试可行的解决方案,因博主电脑用的是office2016,至于该方法是否适用于W ...

最新文章

  1. 原 ng-include用法分析以及多标签页面的简单实现方式
  2. docker build命令详解_『中级篇』docker之java容器运行外置springboot-jar(番外篇)(79)...
  3. 数据结构-王道-树和二叉树
  4. html5网页代码模板简单,简洁蓝色风格HTML5网页模板
  5. java map函数指针_C 函数指针与回调函数
  6. C语言基础总结Part
  7. oracle下tmp后缀文件怎么打开,什么是TMP文件,怎么打开?(图文)
  8. Android帧缓冲区(Frame Buffer)硬件抽象层(HAL)模块Gralloc的实现原理分析(5)...
  9. DeepMind的脑补AI再获新技能:看文字知场景、复杂环境、连续视频……
  10. SDL 从内存流中加载图像并显示
  11. cocos2dx中的动作
  12. 实时时钟DS1302
  13. 一名合格的Web前端工程师需要具备的8项技能!
  14. 认识 ESP-IDF-v4.3+工程结构(ESP32-C3应用调整示例)
  15. 企业如何借助制造业ERP系统,做好生产排产管理?
  16. V神赞许的Aztec,如何让以太坊更隐私?
  17. 路平石模具铺设路缘石公路项目质量提升的过程
  18. 什么是PR值?提高PR值有哪些方法?
  19. 计算机网络知识全面讲解:Internet中常见的应用协议
  20. Typora+Git+Gitee实现个人笔记自动同步

热门文章

  1. 管理案例:如何杜绝上司的越级指挥?
  2. python to excel 路径_好消息!Python和Excel终于可以互通了!
  3. 饥荒专用服务器性能,饥荒专用服务器 优点 | 手游网游页游攻略大全
  4. redis5.0参数详解
  5. Day4-Python3基础-装饰器、迭代器
  6. 设置多个等级的html游戏,实现 HTML5 Canvas 游戏硬件缩放和CSS3的现代化
  7. QQ聊天气泡的动画动态效果实现
  8. 如何实时监测多个仓库?仓储行业高效管理
  9. Java练习继承群主发红包案例(分析与实现)
  10. 性能测试(二)—— JMeter元件作用域和执行顺序、JMeter示例、JMeter参数化