CN111784587A - 一种基于深度学习网络的发票照片位置矫正方法 - Google Patents

一种基于深度学习网络的发票照片位置矫正方法 Download PDF

Info

Publication number
CN111784587A
CN111784587A CN202010620221.4A CN202010620221A CN111784587A CN 111784587 A CN111784587 A CN 111784587A CN 202010620221 A CN202010620221 A CN 202010620221A CN 111784587 A CN111784587 A CN 111784587A
Authority
CN
China
Prior art keywords
invoice
image
title
main body
coordinate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010620221.4A
Other languages
English (en)
Other versions
CN111784587B (zh
Inventor
刘泽豪
罗天任
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Normal University
Original Assignee
Hangzhou Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Normal University filed Critical Hangzhou Normal University
Priority to CN202010620221.4A priority Critical patent/CN111784587B/zh
Publication of CN111784587A publication Critical patent/CN111784587A/zh
Application granted granted Critical
Publication of CN111784587B publication Critical patent/CN111784587B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • G06T3/608Rotation of whole images or parts thereof by skew deformation, e.g. two-pass or three-pass rotation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • G06F7/78Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/02Affine transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/64Analysis of geometric attributes of convexity or concavity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)

Abstract

本发明提供一种基于深度学习网络的发票照片位置矫正方法,首先训练FCN网络;然后将待矫正的发票输入训练好的FCN网络中,分割出发票的主体部分、发票标题以及无关背景;将输出灰度图按照灰度值差异生成为两张图,一张包含发票的主体部分和背景,一张包含发票标题和背景;再计算发票主体部分的四个角点的像素值;之后确定发票的方向;最后通过透视变换矫正发票的方向。本发明方法解决了由于拍摄环境影响,发票照片呈现歪曲,倾斜等问题,可以更加有效的识别分割出发票的位置,方向。具有更高的算法鲁棒性,大大加强了后续文字识别的准确性。

Description

一种基于深度学习网络的发票照片位置矫正方法
技术领域
本发明属于图像处理领域,具体涉及一种基于深度学习网络的发票照片位置矫正方法。
背景技术
发票OCR(Optical Character Recognition,光学字符识别) 指的是,将发票照片中特定区域文字和数字用字符识别技术识别为计算机文字的过程。在处理发票OCR的过程中,由于拍摄者习惯,使用设备,拍摄环境,拍摄发票纸张等条件不统一,发票照片呈现歪曲,倾斜,模糊等问题。不利于后续文字识别和处理。并且由于情景多种多样,传统的非深度学习方法很难正确的识别。
发明内容
为了解决现有技术中存在的问题,本发明提出了一种基于深度学习网络的发票照片位置矫正方法。
所述的方法分成三个阶段:发票位置定位阶段首先采用FCN深度学习网络分割出发票主体的位置和标志物位置。目标寻找阶段,通过直线检测和颜色检测的方式找到发票主体位置和发票方向。矫正阶段,通过仿射变换将拍摄歪斜的发票矫正为正向。
本发明采用的技术方案主要包括以下步骤:
步骤一:训练FCN网络;
收集发票并进行标注,标注方式为分割标注,分别标注发票框内的主体部分和发票的标题部分。然后使用FCN网络进行训练,将原图和对应的标注数据放到FCN网络中训练,使FCN网络输出主体部分,发票标题以及无关背景。FCN网络输出大小为448*448的灰度图;输出灰度图之中,标题部分的灰度值为50,主体部分灰度值为100,背景部分灰度值为255。
步骤二:图像分割;
将待矫正的发票输入训练好的FCN网络中,分割出发票的主体部分、发票标题以及无关背景。将输出灰度图按照灰度值差异生成为两张图,一张包含发票的主体部分和背景,一张包含发票标题和背景。
步骤三:计算发票主体部分的四个角点的像素值;
步骤四:确定发票的方向;
遍历包含标题的灰度图,找到发票的标题位置,以发票区域中任意一个点x0作为标题的位置;
根据x0来标注步骤三获得的的四个角点。设标题x0所在的位置为发票正相位,以逆时针方向,标记发票的四个角点为别为 p1,p2,p3,p4。
步骤五:通过透视变换矫正发票的方向;
步骤三具体方法如下:
对包含主体部分的灰度图进行处理:
3.1采用opencv中findContours进行轮廓检测,找到图像中可能包含发票主体的部分;
3.2采用opencv中convexHull进行凸包检测;
3.3采用opencv中approxPolyDP找到凸包的顶点;
3.4筛选出有四个顶点的四边形;
3.5计算四边形的面积,其中面积大于阈值的为发票主体部分;
3.6筛选出的四个顶点为所求发票主体的四个角点。
进一步的,步骤三所述的阈值设置为60。
步骤五具体方法如下:
求出四个角点在原图中的坐标。公式如下:
Figure BDA0002562795880000021
Figure BDA0002562795880000022
其中,X为原图的宽,Y为原图的长。px,py为点在原图中的x,y 坐标,px′为步骤三中求出的角点的x坐标,py′为角点的y坐标。
根据四个角点在原图中的坐标,找到其中x坐标的最大值设为 Xmax,找到x坐标的最小值设为Xmin;找到其中y坐标的最大值设为Ymax,找到最小值设为Ymin。将变换后的图像长度和宽度分别设置为L=Xmax-Xmin,W=Ymax-Ymin。对应变换之后的四个角点 p1,p2,p3,p4的坐标值(PX,PY)分别为(0,0),(0,L)(W,L),(0,W)。
根据获得的四个角点在原图中的坐标计算图像的变换矩阵,公式如下:
Figure BDA0002562795880000031
其中,PX,PY为变换后对应点的坐标,采用opencv中 GetPerspectiveTransform求解a矩阵,由于是二维变换w设为1。
根据获得的图像的变换矩阵进行透视变换,公式如下:
Figure BDA0002562795880000032
Figure BDA0002562795880000033
其中xn,yn为原图像中每一个像素点n的坐标值,x′n,y′n为透视变换之后像素点n的坐标值。采用上述公式,利用opencv中 warpPerspective将原图每一个像素点乘于变换矩阵就可以得到正向的发票图片。
本发明有益效果如下:
本发明方法解决了由于拍摄环境影响,发票照片呈现歪曲,倾斜等问题。相比传统的直接采用直线检测,颜色检测等方法难以在复杂环境下正常识别分割,容易受到背景环境的影响。本方法采用FCN深度学习网络,可以更加有效的识别分割出发票的位置,方向。具有更高的算法鲁棒性,大大加强了后续文字识别的准确性。
附图说明
图1为本发明流程示意图;
图2为FCN网络产生分割图的示意图。
具体实施方式
以下结合附图与实施例对本发明方法进行进一步描述。
如图1所示,一种基于深度学习网络的发票照片位置矫正方法,包括以下步骤:
步骤一:训练FCN网络;
收集发票并进行标注,标注方式为分割标注,分别标注发票框内的主体部分和发票的标题部分。然后使用FCN网络进行训练,将原图和对应的标注数据放到FCN网络中训练,使FCN网络输出主体部分,发票标题以及无关背景。FCN网络输出大小为448*448的灰度图;输出灰度图之中,标题部分的灰度值为50,主体部分灰度值为100,背景部分灰度值为255。图2为FCN网络产生分割图的示意图。
步骤二:图像分割;
将待矫正的发票输入训练好的FCN网络中,分割出发票的主体部分、发票标题以及无关背景。将输出灰度图按照灰度值差异生成为两张图,一张包含发票的主体部分和背景,一张包含发票标题和背景。
步骤三:计算发票主体部分的四个角点的像素值;
对包含主体部分的灰度图进行处理:
3.1采用opencv中findContours进行轮廓检测,找到图像中可能包含发票主体的部分;
3.2采用opencv中convexHull进行凸包检测;
3.3采用opencv中approxPolyDP找到凸包的顶点;
3.4筛选出有四个顶点的四边形;
3.5计算四边形的面积,其中面积大于阈值的为发票主体部分;
3.6筛选出的四个顶点为所求发票主体的四个角点。
进一步的,步骤三所述的阈值设置为60。
步骤四:确定发票的方向;
遍历包含标题的灰度图,找到发票的标题位置,以发票区域中任意一个点x0作为标题的位置;
根据x0来标注步骤三获得的的四个角点。设标题x0所在的位置为发票正相位,以逆时针方向,标记发票的四个角点为别为 p1,p2,p3,p4。
步骤五:通过透视变换矫正发票的方向
求出四个角点在原图中的坐标。公式如下:
Figure BDA0002562795880000051
Figure BDA0002562795880000052
其中,X为原图的宽,Y为原图的长。px,py为点在原图中的x,y 坐标,px′为步骤三中求出的角点的x坐标,py′为角点的y坐标。
根据四个角点在原图中的坐标,找到其中x坐标的最大值设为 Xmax,找到x坐标的最小值设为Xmin;找到其中y坐标的最大值设为 Ymax,找到最小值设为Ymin。将变换后的图像长度和宽度分别设置为L=Xmax-Xmin,W=Ymax-Ymin。对应变换之后的四个角点 p1,p2,p3,p4的坐标值(PX,PY)分别为(0,0),(0,L)(W,L),(0,W)。
根据获得的四个角点在原图中的坐标计算图像的变换矩阵,公式如下:
Figure BDA0002562795880000053
其中,PX,PY为变换后对应点的坐标,采用opencv中 GetPerspectiveTransform求解a矩阵,由于是二维变换w设为1。
根据获得的图像的变换矩阵进行透视变换,公式如下:
Figure BDA0002562795880000054
Figure BDA0002562795880000055
其中xn,yn为原图像中每一个像素点n的坐标值,x′n,y′n为透视变换之后像素点n的坐标值。采用上述公式,利用opencv中 warpPerspective将原图每一个像素点乘于变换矩阵就可以得到正向的发票图片。

Claims (4)

1.一种基于深度学习网络的发票照片位置矫正方法,其特征在于,步骤如下:
步骤一:训练FCN网络;
收集发票并进行标注,标注方式为分割标注,分别标注发票框内的主体部分和发票的标题部分;然后使用FCN网络进行训练,将原图和对应的标注数据放到FCN网络中训练,使FCN网络输出主体部分,发票标题以及无关背景;FCN网络输出大小为448*448的灰度图;输出灰度图之中,标题部分的灰度值为50,主体部分灰度值为100,背景部分灰度值为255;
步骤二:图像分割;
将待矫正的发票输入训练好的FCN网络中,分割出发票的主体部分、发票标题以及无关背景;将输出灰度图按照灰度值差异生成为两张图,一张包含发票的主体部分和背景,一张包含发票标题和背景;
步骤三:计算发票主体部分的四个角点的像素值;
步骤四:确定发票的方向;
遍历包含标题的灰度图,找到发票的标题位置,以发票区域中任意一个点x0作为标题的位置;
根据x0来标注步骤三获得的的四个角点;设标题x0所在的位置为发票正相位,以逆时针方向,标记发票的四个角点为别为p1,p2,p3,p4;
步骤五:通过透视变换矫正发票的方向。
2.根据权利要求1所述的一种基于深度学习网络的发票照片位置矫正方法,其特征在于,所述的步骤三具体方法如下:
对包含主体部分的灰度图进行处理:
3.1采用opencv中findContours进行轮廓检测,找到图像中可能包含发票主体的部分;
3.2采用opencv中convexHull进行凸包检测;
3.3采用opencv中approxPolyDP找到凸包的顶点;
3.4筛选出有四个顶点的四边形;
3.5计算四边形的面积,其中面积大于阈值的为发票主体部分;
3.6筛选出的四个顶点为所求发票主体的四个角点。
3.根据权利要求2所述的一种基于深度学习网络的发票照片位置矫正方法,其特征在于,进一步的,步骤三所述的阈值设置为60。
4.根据权利要求2所述的一种基于深度学习网络的发票照片位置矫正方法,其特征在于,所述的步骤五具体方法如下:
求出四个角点在原图中的坐标;公式如下:
Figure FDA0002562795870000021
Figure FDA0002562795870000022
其中,X为原图的宽,Y为原图的长;px,py为点在原图中的x,y坐标,px′为步骤三中求出的角点的x坐标,py′为角点的y坐标;
根据四个角点在原图中的坐标,找到其中x坐标的最大值设为Xmax,找到x坐标的最小值设为Xmin;找到其中y坐标的最大值设为Ymax,找到最小值设为Ymin;将变换后的图像长度和宽度分别设置为L=Xmax-Xmin,W=Ymax-Ymin;对应变换之后的四个角点p1,p2,p3,p4的坐标值(PX,PY)分别为(0,0),(0,L)(W,L),(0,W);
根据获得的四个角点在原图中的坐标计算图像的变换矩阵,公式如下:
Figure FDA0002562795870000023
其中,PX,PY为变换后对应点的坐标,采用opencv中GetPerspectiveTransform求解a矩阵,由于是二维变换w设为1;
根据获得的图像的变换矩阵进行透视变换,公式如下:
Figure FDA0002562795870000024
Figure FDA0002562795870000025
其中xn,yn为原图像中每一个像素点n的坐标值,x′n,y′n为透视变换之后像素点n的坐标值;采用上述公式,利用opencv中warpPerspective将原图每一个像素点乘于变换矩阵就可以得到正向的发票图片。
CN202010620221.4A 2020-06-30 2020-06-30 一种基于深度学习网络的发票照片位置矫正方法 Active CN111784587B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010620221.4A CN111784587B (zh) 2020-06-30 2020-06-30 一种基于深度学习网络的发票照片位置矫正方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010620221.4A CN111784587B (zh) 2020-06-30 2020-06-30 一种基于深度学习网络的发票照片位置矫正方法

Publications (2)

Publication Number Publication Date
CN111784587A true CN111784587A (zh) 2020-10-16
CN111784587B CN111784587B (zh) 2023-08-01

Family

ID=72760042

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010620221.4A Active CN111784587B (zh) 2020-06-30 2020-06-30 一种基于深度学习网络的发票照片位置矫正方法

Country Status (1)

Country Link
CN (1) CN111784587B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112287853A (zh) * 2020-11-02 2021-01-29 无锡超维智能科技有限公司 基于对it设备指示灯及设备型号的动态智能图像识别算法
CN112347994A (zh) * 2020-11-30 2021-02-09 四川长虹电器股份有限公司 一种基于深度学习的发票图像目标检测与角度检测方法
CN112926577A (zh) * 2021-02-20 2021-06-08 杭州海量信息技术有限公司 一种医疗票据图像结构化方法和装置、计算机可读介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108960062A (zh) * 2018-06-01 2018-12-07 平安科技(深圳)有限公司 校正发票图像的方法、装置、计算机设备和存储介质
CN109409366A (zh) * 2018-10-30 2019-03-01 四川长虹电器股份有限公司 基于角点检测的畸变图像校正方法及装置
CN110457973A (zh) * 2018-05-07 2019-11-15 北京中海汇银财税服务有限公司 一种票据识别的方法及系统
GB201918199D0 (en) * 2019-10-14 2020-01-22 Bottomline Tech Limited Partial preceptual image hashing for invoice deconstruction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457973A (zh) * 2018-05-07 2019-11-15 北京中海汇银财税服务有限公司 一种票据识别的方法及系统
CN108960062A (zh) * 2018-06-01 2018-12-07 平安科技(深圳)有限公司 校正发票图像的方法、装置、计算机设备和存储介质
CN109409366A (zh) * 2018-10-30 2019-03-01 四川长虹电器股份有限公司 基于角点检测的畸变图像校正方法及装置
GB201918199D0 (en) * 2019-10-14 2020-01-22 Bottomline Tech Limited Partial preceptual image hashing for invoice deconstruction

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
范兵;吉立新;于洪涛;: "基于Office OCR组件的文档图象检索研究", 通信技术, no. 06, pages 146 - 148 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112287853A (zh) * 2020-11-02 2021-01-29 无锡超维智能科技有限公司 基于对it设备指示灯及设备型号的动态智能图像识别算法
CN112347994A (zh) * 2020-11-30 2021-02-09 四川长虹电器股份有限公司 一种基于深度学习的发票图像目标检测与角度检测方法
CN112347994B (zh) * 2020-11-30 2022-04-22 四川长虹电器股份有限公司 一种基于深度学习的发票图像目标检测与角度检测方法
CN112926577A (zh) * 2021-02-20 2021-06-08 杭州海量信息技术有限公司 一种医疗票据图像结构化方法和装置、计算机可读介质

Also Published As

Publication number Publication date
CN111784587B (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
CN111784587B (zh) 一种基于深度学习网络的发票照片位置矫正方法
CN109785291B (zh) 一种车道线自适应检测方法
CN109409366B (zh) 基于角点检测的畸变图像校正方法及装置
CN108108746B (zh) 基于Caffe深度学习框架的车牌字符识别方法
CN102790841B (zh) 书籍的书脊区域中数字图像的检测和校正方法
Stamatopoulos et al. Goal-oriented rectification of camera-based document images
CN110674815A (zh) 基于深度学习关键点检测的发票图像畸变校正方法
CN111127339B (zh) 一种文档图像的梯形畸变矫正方法及装置
CN111325203A (zh) 一种基于图像校正的美式车牌识别方法及系统
CN111401266B (zh) 绘本角点定位的方法、设备、计算机设备和可读存储介质
CN109409356B (zh) 一种基于swt的多方向中文印刷体文字检测方法
CN110929748A (zh) 一种基于深度学习的运动模糊图像特征匹配方法
WO2021051527A1 (zh) 基于图像分割的文字定位方法、装置、设备及存储介质
CN113903024A (zh) 一种手写票据数值信息识别方法、系统、介质及装置
Feng et al. DocScanner: Robust document image rectification with progressive learning
CN108335266B (zh) 一种文档图像畸变的矫正方法
CN114998347B (zh) 一种半导体面板角点定位方法及装置
CN116994269A (zh) 一种图像文档中印章相似度比对方法及对比系统
Zhang et al. Rectification of optical characters as transform invariant low-rank textures
CN113012298B (zh) 一种基于区域检测的弯曲mark三维注册增强现实方法
CN114998262A (zh) 一种基于八分教学法的课堂脱机书法教学与评价系统
CN112184533B (zh) 一种基于sift特征点匹配的水印同步方法
KR100603618B1 (ko) 어파인 변환을 이용한 문서 영상의 기하학적 왜곡 보정장치 및 방법
CN113989485A (zh) 基于ocr识别的文本字符分割方法及系统
CN116704518A (zh) 一种文本识别方法及装置、电子设备、存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant