CN105894042B - 检测证件图像遮挡的方法和装置 - Google Patents

检测证件图像遮挡的方法和装置 Download PDF

Info

Publication number
CN105894042B
CN105894042B CN201610269221.8A CN201610269221A CN105894042B CN 105894042 B CN105894042 B CN 105894042B CN 201610269221 A CN201610269221 A CN 201610269221A CN 105894042 B CN105894042 B CN 105894042B
Authority
CN
China
Prior art keywords
certificate
character
character zone
detected
image
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.)
Active
Application number
CN201610269221.8A
Other languages
English (en)
Other versions
CN105894042A (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.)
Beijing Xiaomi Mobile Software Co Ltd
Original Assignee
Beijing Xiaomi Mobile Software Co Ltd
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 Beijing Xiaomi Mobile Software Co Ltd filed Critical Beijing Xiaomi Mobile Software Co Ltd
Priority to CN201610269221.8A priority Critical patent/CN105894042B/zh
Publication of CN105894042A publication Critical patent/CN105894042A/zh
Application granted granted Critical
Publication of CN105894042B publication Critical patent/CN105894042B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • G06V10/23Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition based on positionally close patterns or neighbourhood relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/146Aligning or centring of the image pick-up or image-field
    • G06V30/1475Inclination or skew detection or correction of characters or of image to be recognised
    • G06V30/1478Inclination or skew detection or correction of characters or of image to be recognised of characters or characters lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/759Region-based matching

Abstract

本公开是关于一种检测证件图像遮挡的方法和装置,属于图像处理技术领域。所述方法包括:获取证件图像;对所述证件图像进行证件边界检测;在检测到的证件边界的范围内进行字符检测,得到字符区域;将检测出的所述字符区域与证件字符模板中的字符区域进行对比,确定未被检测出的字符区域;根据所述未被检测出的字符区域,生成检测结果,所述检测结果用于表示所述证件图像是否可能被遮挡。所述装置包括图像获取模块、边界检测模块、字符检测模块、对比模块和生成模块。本公开实施例可以有效检测证件图像是否被遮挡。

Description

检测证件图像遮挡的方法和装置
技术领域
本公开涉及图像处理技术领域,尤其涉及一种检测证件图像遮挡的方法和装置。
背景技术
在人们的日常生活中,经常需要从证件中获取相关信息。随着计算机、图像处理等技术的飞速发展,使用计算机自动识别和录入相关信息已经越来越普及。
相关技术中,通常会采用拍摄或扫描的方式采集证件图像,然后对采集到的证件图像进行处理、分析,自动识别和提取证件图像中的相关信息。然而,若获取到的证件图像中的相关信息被遮挡,将会导致信息无法识别或是识别结果出错,最终可能导致相关信息录入失败。因此,对证件图像是否被遮挡的检测尤为重要。
发明内容
为克服相关技术中存在的问题,本公开提供一种检测证件图像遮挡的方法和装置。
根据本公开实施例的第一方面,提供一种检测证件图像遮挡的方法,所述方法包括:
获取证件图像;
对所述证件图像进行证件边界检测;
在检测到的证件边界的范围内进行字符检测,得到字符区域;
将检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域;
根据所述未被检测出的字符区域,生成检测结果,所述检测结果用于表示所述证件图像是否可能被遮挡。
在第一方面的一种可能的实现方式中,所述将检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域,包括:
将所述证件图像对应的证件字符模板中的字符区域与所述检测出的字符区域进行对比,确定所述证件图像对应的证件字符模板中的各个字符区域在所述证件图像中是否有对应的检测出的字符区域;
将所述证件图像对应的证件字符模板中没有对应的检测出的字符区域的字符区域,确定为未被检测出的字符区域。
在第一方面的一种可能的实现方式中,所述根据所述未被检测出的字符区域,生成检测结果,包括:
当满足以下至少一种条件时,生成表示所述证件图像可能被遮挡的检测结果:
所述未被检测出的字符区域中单个字符区域的面积大于设定面积阈值;
所述未被检测出的字符区域包括至少两个分离的字符区域并且所述分离的字符区域相邻。
优选地,所述方法还包括:
当所述检测结果表示所述证件图像可能被遮挡时,以所述未被检测出的字符区域为基础,在所述证件图像中进行区域增长,得到连通区域;
根据所述连通区域来再次确定所述证件图像是否被遮挡。
进一步地,所述以所述未被检测出的字符区域为基础,在所述证件图像中进行区域增长,得到连通区域,包括:
第一步、以所述未被检测出的字符区域在所述证件图像中的对应区域中的任一点为起点,分别确定所述起点的8邻域是否符合区域增长条件;
第二步、将所述8邻域中符合区域增长条件的点添加到所述连通区域中;
第三步、从所述连通区域中选择另一点作为新的起点,分别确定所述新的起点的8邻域是否符合区域增长条件;
重复所述第二步至所述第三步,直至所述连通区域中的所有点的8邻域中符合所述区域增长条件的点均添加到所述连通区域中;
其中,所述区域增长条件包括以下条件中的至少一种:
点的颜色与证件的背景颜色差异超过第一设定值;
点的梯度值未超过第二设定值。
进一步地,所述根据所述连通区域来再次确定所述证件图像是否被遮挡,包括:
若所述连通区域穿过所述证件边界且所述连通区域的面积超过设定阈值,则确定所述证件图像被遮挡。
可选地,所述方法还可以包括:
根据所述检测出的字符区域,获取所述证件图像对应的证件字符模板;或者,
根据用户输入信息,获取所述证件图像对应的证件字符模板。
其中,所述根据所述检测出的字符区域,获取所述证件图像对应的证件字符模板,可以包括:
将所述检测出的字符区域分别与多个预设的证件字符模板中指定区域内的字符区域进行对比;
将与所述检测出的字符区域最匹配的证件字符模板,确定为所述证件图像对应的证件字符模板,其中,所述最匹配的证件字符模板为所述多个预设的证件字符模板中,具有数量最多的与所述检测出的字符区域匹配的指定区域的证件字符模板,所述与所述检测出的字符区域匹配的指定区域为包括与所述检测出的字符区域相对应的字符区域的指定区域,或者,所述与所述检测出的字符区域匹配的指定区域为包括数量最多的与所述检测出的字符区域相对应的字符区域的指定区域。
进一步地,所述方法还可以包括:
获取所述检测出的字符区域的坐标位置;
根据获取到的所述坐标位置,对所述最匹配的证件字符模板的所述指定区域内的字符区域进行调整。
更进一步地,所述根据获取到的所述坐标位置,对所述最匹配的证件字符模板的所述指定区域内的字符区域进行调整,包括以下方式中的至少一种:
删除所述指定区域中没有对应的检测出的字符区域的字符区域;
将所述指定区域中第一字符区域对应的检测出的字符区域的坐标位置中,距离所述第一字符区域的起始边界最远的坐标位置,作为所述第一字符区域的终止边界,所述第一字符区域为对应多个字符的字符区域。
可选地,所述方法还包括:
对检测到的证件边界进行直线检测;
根据直线检测结果确定证件图像的倾斜角度;
按照确定出的倾斜角度旋转证件图像。
可选地,所述方法还包括:对检测到的证件边界进行直线检测;
根据直线检测结果确定证件图像的边界长度;
根据确定出的边界长度将证件图像缩放至设定大小。
可选地,所述方法还包括:
当所述证件图像被遮挡时,输出提示信息。
可选地,所述证件图像包括身份证图像、有价文件图像、居住证图像、信用卡图像、护照图像或驾驶证图像。
根据本公开实施例的第二方面,提供一种检测证件图像遮挡的装置,所述装置包括:
图像获取模块,用于获取证件图像;
边界检测模块,用于对所述图像获取模块获取到的所述证件图像进行证件边界检测;
字符检测模块,用于在所述边界检测模块检测到的证件边界的范围内进行字符检测,得到字符区域;
对比模块,用于将所述字符检测模块检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域;
生成模块,用于根据所述对比模块确定出的所述未被检测出的字符区域,生成检测结果,所述检测结果用于表示所述证件图像是否可能被遮挡。
在第二方面的一种可能的实现方式中,所述对比模块,用于将所述证件图像对应的证件字符模板中的字符区域与所述检测出的字符区域进行对比,确定所述证件图像对应的证件字符模板中的各个字符区域在所述证件图像中是否有对应的检测出的字符区域;将所述证件图像对应的证件字符模板中没有对应的检测出的字符区域的字符区域,确定为未被检测出的字符区域。
在第二方面的一种可能的实现方式中,所述生成模块,用于当满足以下至少一种条件时,生成表示所述证件图像可能被遮挡的检测结果:
所述未被检测出的字符区域中单个字符区域的面积大于设定面积阈值;
所述未被检测出的字符区域包括至少两个分离的字符区域并且所述分离的字符区域相邻。
优选地,所述装置还包括:
区域增长模块,用于当所述生成模块生成的所述检测结果表示所述证件图像可能被遮挡时,以所述未被检测出的字符区域为基础,在所述证件图像中进行区域增长,得到连通区域;
确定模块,用于根据所述连通区域来再次确定所述证件图像是否被遮挡。
进一步地,所述区域增长模块,用于按照以下步骤进行区域增长:
第一步、以所述未被检测出的字符区域在所述证件图像中的对应区域中的任一点为起点,分别确定所述起点的8邻域是否符合区域增长条件;
第二步、将所述8邻域中符合区域增长条件的点添加到所述连通区域中;
第三步、从所述连通区域中选择另一点作为新的起点,分别确定所述新的起点的8邻域是否符合区域增长条件;
重复所述第二步至所述第三步,直至所述连通区域中的所有点的8邻域中符合所述区域增长条件的点均添加到所述连通区域中;
其中,所述区域增长条件包括以下条件中的至少一种:
点的颜色与证件的背景颜色差异超过第一设定值;
点的梯度值未超过第二设定值。
进一步地,所述确定模块,用于当所述连通区域穿过所述证件边界且所述连通区域的面积超过设定阈值时,确定所述证件图像被遮挡。
可选地,所述装置还可以包括:
模板获取模块,用于根据所述字符检测模块检测出的所述字符区域,获取所述证件图像对应的证件字符模板;或者,用于根据用户输入信息,获取所述证件图像对应的证件字符模板。
进一步地,所述模板获取模块,可以包括:
指定区域对比子模块,用于将所述字符检测模块检测出的字符区域分别与多个预设的证件字符模板中指定区域内的字符区域进行对比;
模板确定子模块,用于将与所述检测出的字符区域最匹配的证件字符模板,确定为所述证件图像对应的证件字符模板,其中,所述最匹配的证件字符模板为所述多个预设的证件字符模板中,具有数量最多的与所述检测出的字符区域匹配的指定区域的证件字符模板,所述与所述检测出的字符区域匹配的指定区域为包括与所述检测出的字符区域相对应的字符区域的指定区域,或者,所述与所述检测出的字符区域匹配的指定区域为包括数量最多的与所述检测出的字符区域相对应的字符区域的指定区域。
更进一步地,所述模板获取模块,还包括:
位置获取子模块,用于获取与所述最匹配的证件字符模板的所述指定区域中的字符区域对应的所述检测出的字符区域的坐标位置;
调整子模块,用于根据所述位置获取子模块获取到的所述坐标位置,对所述最匹配的证件字符模板的所述指定区域中的字符区域进行调整。
更进一步地,所述调整子模块,可以用于按照以下方式中的至少一种对所述最匹配的证件字符模板的所述指定区域内的字符区域进行调整:
删除所述指定区域中没有对应的检测出的字符区域的字符区域;
将所述指定区域中第一字符区域对应的检测出的字符区域的坐标位置中,距离所述第一字符区域的起始边界最远的坐标位置,作为所述第一字符区域的终止边界,所述第一字符区域为对应多个字符的字符区域。
可选地,所述装置还包括:
直线检测模块,用于对检测到的证件边界进行直线检测;
角度确定模块,用于根据直线检测结果确定证件图像的倾斜角度;
旋转模块,用于按照确定出的倾斜角度旋转证件图像。
可选地,所述装置还包括:
直线检测模块,用于对检测到的证件边界进行直线检测;
长度确定模块,用于根据直线检测结果确定证件图像的边界长度;
缩放模块,用于根据确定出的边界长度将证件图像缩放至设定大小。
可选地,所述装置还包括:
输出模块,用于当所述证件图像被遮挡时,输出提示信息。
可选地,所述证件图像包括身份证图像、有价文件图像、居住证图像、信用卡图像、护照图像或驾驶证图像。
根据本公开实施例的第三方面,提供一种检测证件图像遮挡的装置,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
获取证件图像;
对所述证件图像进行证件边界检测;
在检测到的证件边界的范围内进行字符检测,得到字符区域;
将检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域;
根据所述未被检测出的字符区域,生成检测结果,所述检测结果用于表示所述证件图像是否可能被遮挡。
本公开的实施例提供的技术方案可以包括以下有益效果:
在本公开实施例中,由于证件字符模板中的字符区域根据实际证件中的字符区域设置,通过将证件图像中检测到的字符区域与该证件图像对应的证件字符模板中的字符区域进行对比,从而可以确定出未被检测出的字符区域,进而可以根据未被检测出的字符区域有效判断证件图像是否可能被遮挡。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种检测证件图像遮挡的方法的流程图;
图2是根据一示例性实施例示出的另一种检测证件图像遮挡的方法的流程图;
图3a是图2所示方法中的一证件字符模板的示意图;
图3b是图2所示方法中的另一证件字符模板的示意图;
图3c是图2所示方法中的又一证件字符模板的示意图;
图3d是图2所示方法中的又一证件字符模板的示意图;
图4是根据一示例性实施例示出的一种检测证件图像遮挡的装置的框图;
图5是根据一示例性实施例示出的另一种检测证件图像遮挡的装置的框图;
图6是根据一示例性实施例示出的又一种检测证件图像遮挡的装置的框图;
图7是根据一示例性实施例示出的再一种检测证件图像遮挡的装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
本公开实施例可以适用于证件拍照后上传验证信息的场景,尤其适用于手持证件拍照或是手持终端设备给证件拍照的场景,这是因为手持证件拍照时,可能手指会遮挡住证件的部分区域;而手持终端设备给证件拍照时,可能手指会遮挡住终端设备的摄像头,从而导致拍摄得到的证件图像被遮挡。当然,被公开实施例同样适用于在证件拍照时,证件被其他物品(例如衣物等)遮挡的情况,本公开对此不做限制。
图1是根据一示例性实施例示出的一种检测证件图像遮挡的方法,该方法可以用于终端设备中,终端设备包括但不限于手机、平板电脑、笔记本电脑等,该方法还可以用于服务器中,如图1所示,该方法包括以下步骤。
在步骤S11中,获取证件图像。
其中,证件图像的获取方式包括但不限于以下方式:
采用图像采集设备(例如摄像头、数码相机、扫描仪等)采集证件图像;
从存储介质或存储设备中获取证件图像。
其中,证件图像包括但不限于身份证图像、居住证图像、信用卡图像、有价文件(例如支票等)图像、护照图像或驾驶证图像等。该步骤S12中获取到的证件图像可以为灰度图像,也可以为彩色图像(例如RGB(Red、Green、Blue,红绿蓝)格式的彩色图像)。
在步骤S12中,对该证件图像进行证件边界检测。
其中,证件边界可以采用Canny边缘检测算法或Sobel算法等算法进行检测。
容易知道,若步骤S11中获取的证件图像为彩色图像,则需要先将其转换为灰度图像,然后再对其进行证件边界检测。
需要说明的是,由于证件图像可能被遮挡,所以检测到的证件边界可能不是完整的证件边界,本公开实施例尤其适用于可以检测出证件的大部分边界的情况,比如证件的一条边的全部或部分被遮挡,或者证件的两条边的部分被遮挡的情况,在这种情况下,可以根据检测出的证件边界大致确定出完整的证件边界的范围。比如,根据两条平行边界之间的距离,确定完整的证件边界的范围。
在步骤S13中,在检测到的证件边界的范围内进行字符检测,得到字符区域。
在本公开实施例中,字符包括但不限于汉字、数字、英文等各种形式的字符。字符区域是指包含有字符的区域。
进一步地,该步骤S13可以包括:
以设定大小的窗口在证件边界的范围内以设定步长进行滑动,得到多个窗口图像;
对每个窗口图像进行特征提取;
根据各个窗口图像中提取到的特征,判断对应的窗口图像中是否包含字符,包含字符的窗口图像对应的区域即为字符区域。
其中,设定大小可以根据字符大小设置,比如设定大小的窗口可以为当证件图像缩放到设定大小时,其中的单个字符的外接矩形,设定步长可以为单个字符的宽度的1/3~1倍。
其中,对每个窗口图像进行特征提取得到的特征可以为HOG(Histogram ofOriented Gradient,方向梯度直方图)特征、Haar特征或LBP(Local Binary Pattern,局部二值模式)特征等。根据各个窗口图像中提取到的特征,判断该窗口图像中是否包含字符可以采用分类器实现,比如SVM(Support Vector Machine,支持向量机)、随机树等。实际使用的特征的类型和分类器的类型可以根据实际需要选择,例如,可以选择HOG特征与SVM结合,本公开对此不做限制。
在步骤S14中,将检测出的字符区域与证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域。
证件字符模板包括至少一个字符区域,证件字符模板中的字符区域根据证件中的相关信息所在的位置设置。值得注意的是,相关信息可以对应证件上的全部字符,也可以只对应证件上的部分字符,可以根据实际需要选择。比如,对于身份证而言,相关信息可以包括姓名、性别、民族、出生日期、住址、身份证号中的一种或多种。
实现时,该步骤S14可以包括:
将证件图像对应的证件字符模板中的字符区域与检测出的字符区域进行对比,确定证件图像对应的证件字符模板中的各个字符区域在证件图像中是否有对应的检测出的字符区域;
将证件图像对应的证件字符模板中,没有对应的检测出的字符区域的字符区域,确定为未被检测出的字符区域。
实现时,可以将证件图像与其对应的证件字符模板叠置,若该证件字符模板中的某个字符区域与检测出的字符区域重叠,则表示该证件字符模板中的该字符区域对应有检测出的字符区域;若该证件字符模板中的某个字符区域与证件图像中检测出的字符区域不重叠,则表示该证件字符模板中的该字符区域没有对应的检测出的字符区域。
需要说明的是,在这种实现方式中,重叠可以是指完全重叠,或者重叠区域的面积大于或者等于设定值;而不重叠是指不存在重叠区域,或者重叠区域的面积小于设定值。
或者,还可以分别获取证件图像中检测出的字符区域在证件图像中的坐标位置、以及证件字符模板中的字符区域在证件字符模板中的坐标位置,根据两者的坐标位置判断证件字符模板中的字符区域在证件图像中是否对应有检测出的字符区域。
进一步地,当证件字符模板中的字符区域在证件字符模板中的坐标位置与检测出的字符区域在证件图像中的坐标位置相同时,则证件字符模板中的字符区域在证件图像中有对应的检测出的字符区域;当证件字符模板中的字符区域在证件字符模板中的坐标位置与检测出的字符区域在证件图像中的坐标位置不同时,证件字符模板中的字符区域在证件图像中没有对应的检测出的字符区域。
需要说明的是,在这种实现方式中,两个字符区域的坐标位置相同可以是指,两个字符区域中具有相同的坐标位置的点的数量超过设定值。
在步骤S15中,根据未被检测出的字符区域,生成检测结果,该检测结果用于表示证件图像是否可能被遮挡。
该步骤S15可以采用如下方式:
当满足以下条件中的至少一种条件时,生成表示证件图像可能被遮挡的检测结果:
未被检测出的字符区域中单个字符区域的面积大于设定面积阈值;
未被检测出的字符区域包括至少两个分离的字符区域并且所述分离的字符区域相邻。
容易知道,当不满足上述两个条件时,可以生成证件图像不可能被遮挡的检测结果。
其中,设定面积阈值可以根据字符大小来设置,比如,可以为字符大小的N倍,2≤N≤5,优选为2或3。
其中,第一个条件用于判断同一行中的至少两个连续相邻的字符未被检测出的情况,第二个条件用于判断同一行中相邻的两个字符未被检测出的情况,以及不同行中相邻的至少两个字符未被检测出的情况,当有相邻的字符未被检测出时,表示证件图像很有可能被遮挡了。
进一步地,若未被检测出的字符区域中存在面积大于设定面积阈值的单个字符区域,或者未被检测出的字符区域包括至少两个分离的字符区域并且这些分离的字符区域相邻,则表示有连续字符区域被遮挡,此时证件图像很有可能被遮挡,故生成证件图像可能被遮挡的检测结果。若未被检测出的字符区域中不存在面积大于设定面积阈值的单个字符区域,且检测出的字符区域不包括相邻的至少两个分离的字符区域,则证件图像被遮挡的可能较小,生成表示证件图像不可能被遮挡的检测结果。
可选地,在生成表示证件图像可能被遮挡的检测结果后,该方法还可以包括:输出提示信息,以提醒用户检查证件图像是否被遮挡。
在本公开实施例中,由于证件字符模板中的字符区域根据实际证件中的字符区域设置,通过将证件图像中检测到的字符区域与该证件图像对应的证件字符模板中的字符区域进行对比,从而可以确定出未被检测出的字符区域,进而可以根据未被检测出的字符区域有效判断证件图像是否可能被遮挡。
图2是根据一示例性实施例示出的另一种检测证件图像遮挡的方法,该检测证件图像遮挡的方法可以用于终端设备中,终端设备包括但不限于手机、平板电脑、笔记本电脑等;该方法还可以用于服务器中。本实施例将以身份证图像为例进行详细说明,容易知道,除了身份证图像以外,证件图像还可以为有价文件(例如支票等)图像、居住证图像、信用卡图像、护照图像或驾驶证图像等。如图2所示,该方法包括以下步骤。
在步骤S21中,获取证件图像。
其中,证件图像的获取方式包括但不限于以下方式:
采用图像采集设备(例如摄像头、数码相机、扫描仪等)采集证件图像;
从存储介质或存储设备中获取证件图像。
在本实施例中,该步骤S21中获取到的证件图像为彩色图像,例如RGB格式的彩色图像。
在步骤S22中,对该证件图像进行证件边界检测。
其中,证件边界可以采用Canny边缘检测算法或Sobel算法等算法进行检测。
需要说明的是,由于证件图像可能被遮挡,所以检测到的证件边界可能不是完整的证件边界,本公开实施例尤其适用于可以检测出证件的大部分边界的情况,比如证件的一条边的全部或部分被遮挡,或者证件的两条边的部分被遮挡的情况,在这种情况下,可以根据检测出的证件边界大致确定出完整的证件边界的范围。比如,根据两条平行边界之间的距离,确定完整的证件边界的范围。
可选地,在该步骤S22之后,该方法还可以包括:
对检测到的证件边界进行直线检测;
根据直线检测结果确定证件图像的倾斜角度;
按照确定出的倾斜角度旋转证件图像,使得证件图像的方向符合规定的方向,以便于后续检测。
可选地,在该步骤S22之后,该方法还可以包括:
对检测到的证件边界进行直线检测;
根据直线检测结果确定证件图像的边界长度;
根据确定出的边界长度将证件图像缩放至设定大小,该设定大小可以根据证件的实际尺寸确定,使得证件图像的清晰度符合要求,从而可以提高后续字符检测的准确度。
其中,直线检测可以采用Hough(霍夫)直线检测算法或LSD(Line SegmentDetector,直线段检测)直线检测算法。
容易知道,上述旋转和缩放可以根据证件图像的实际情况选择是否执行,例如,若在拍摄证件图像时,是按照规定的尺寸和方向进行拍摄,可以保证拍摄得到的证件图像的尺寸和方向在一定误差范围内时,可以省略上述直线检测、旋转和缩放的步骤。此外,若根据直线检测结果确定的证件图像的倾斜角度在设定范围内,则无需执行旋转操作;而若根据直线检测结果确定的证件图像的边界长度在设定范围内,则无需执行缩放操作。
在步骤S23中,在检测到的证件边界的范围内进行字符检测,得到字符区域。
在本公开实施例中,字符包括但不限于汉字、数字、英文等各种形式的字符。字符区域是指包含有字符的区域。
进一步地,该步骤S23可以包括:
以设定大小的窗口在证件边界范围内以设定步长进行滑动,得到多个窗口图像;
对每个窗口图像进行特征提取;
根据各个窗口图像中提取到的特征,判断该窗口图像中是否包含字符,将包含字符的窗口图像对应的区域作为字符区域。
其中,设定大小可以根据字符大小确定,比如设定大小的窗口可以为当证件图像缩放到设定大小时,其中的单个字符的外接矩形,设定步长可以为单个字符的外接矩形的宽度的1/3~1倍。
其中,对每个窗口图像进行特征提取得到的特征可以为HOG特征、Haar特征或LBP特征等。根据各个窗口图像中提取到的特征,判断该窗口图像中是否包含字符可以采用分类器实现,比如SVM、随机树等。实际使用的特征的类型和分类器的类型可以根据实际需要选择,例如,可以选择HOG特征与SVM结合,本公开对此不做限制。
实际应用中,由于证件中的字符可能有多于一种类型,比如同时包括数字和汉字,不同类型的字符的大小不同,所以可以针对不同大小的字符设置不同大小的窗口,分别进行检测,比如对应数字设置一种大小的窗口,而对于汉字设置一种大小的窗口。
在步骤S24中,将检测出的字符区域与该证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域。
其中,证件字符模板包括至少一个字符区域,证件字符模板中的字符区域根据证件中的相关信息所在的位置设置。值得注意的是,相关信息可以对应证件上的全部字符,也可以只对应证件上的部分字符,可以根据实际需要选择。比如,对于身份证而言,相关信息可以包括姓名、性别、民族、出生日期、住址、身份证号中的一种或多种。
可选地,证件字符模板的一个字符区域可以包括一个或多个字符。一个证件字符模板中的不同的字符区域包括的字符的数量可以相同,也可以不同,还可以部分字符区域包括的字符数量相同,部分字符区域包括的字符数量不同。
在本公开实施例的一种实现方式中,当字符间距较小时,可以对应这些字符设置一个字符区域,即一个字符区域包括多个字符;而字符间距较大时,可以对应每个字符分别设置一个字符区域,即一个字符区域包括一个字符。以身份证为例,如图3a和图3b所示,身份证的第一行为姓名信息区域,第二行为性别和民族信息区域,这两行区域的字符间距都比较大,则可以在证件字符模板中为这两行区域中的每个字符分别对应设置一个字符区域,如图3a和3b中的标号为31的矩形框所示。而身份证中的住址、身份证号等信息区域对应行中的字符间距较小,则可以在证件字符模板中为这些信息区域中的每行字符分别对应设置一个字符区域,如图3a和图3b中的标号为32的矩形框所示。
在另一种实现方式中,可以不考虑字符间距,对应证件中的每行字符分别设置一个字符区域。如图3c所示,同样以身份证为例,对应第一行(即姓名信息区域)设置一个字符区域31’,对应第二行(即性别和民族信息区域)也设置一个字符区域31’,对应身份证号信息区域和住址信息区域也分别设置一个字符区域32’。
此外,同一证件类型对应的证件字符模板可以有多种,也可以只有一种。当同一证件类型对应的证件字符模板有多种时,不同的证件字符模板的至少部分字符区域(例如下文中的指定区域中的字符区域)在证件字符模板内的位置不同。
仍然以身份证为例,第一行姓名的字数可能不同,比如图3a所示的两个字的名字(如第一行虚线框所示)和图3b所示的三个字的名字(如第一行虚线框所示),如果对应每个字设置一个字符区域,则姓名信息区域对应的多个字符区域的数量和位置会有所不同。再例如,由于住址的长度不同,比如图3a所示的住址占一行(如第四行虚线框所示),图3b所示的住址占两行(如第四和五行虚线框所示),其他情况下还可能占三行,则对应住址信息区域的字符区域的数量和位置也有所不同。
进一步地,将检测出的字符区域与证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域,可以包括:
将证件图像对应的证件字符模板中的字符区域与检测出的字符区域进行对比,确定证件图像对应的证件字符模板中的各个字符区域在证件图像中是否有对应的检测出的字符区域;
将证件图像对应的证件字符模板中,没有对应的检测出的字符区域的字符区域,确定为未被检测出的字符区域。
实现时,可以将证件图像与证件字符模板叠置,若证件字符模板中的字符区域与检测出的字符区域存在重叠区域,则表示证件字符模板中的该字符区域对应有检测出的字符区域;若证件字符模板中的字符区域与证件图像中检测出的字符区域不存在重叠区域,则表示证件字符模板中的该字符区域对应有检测出的字符区域。
需要说明的是,在这种实现方式中,重叠可以是指完全重叠,或者重叠区域的面积大于或者等于设定值;而不重叠是指不存在重叠区域,或者重叠区域的面积小于设定值。
或者,还可以分别获取证件图像中检测出的字符区域在证件图像中的坐标位置、以及证件字符模板中的字符区域在证件字符模板中的坐标位置,根据两者的坐标位置判断证件字符模板中的字符区域在证件图像中是否对应有检测出的字符区域。
进一步地,当证件字符模板中的字符区域在证件字符模板中的坐标位置与检测出的字符区域在证件图像中的坐标位置相同时,则证件字符模板中的字符区域在证件图像中有对应的检测出的字符区域;当证件字符模板中的字符区域在证件字符模板中的坐标位置与检测出的字符区域在证件图像中的坐标位置不同时,证件字符模板中的字符区域在证件图像中没有对应的检测出的字符区域。
需要说明的是,在这种实现方式中,两个字符区域的坐标位置相同可以是指,两个字符区域中具有相同的坐标位置的点的数量超过设定值。
在确定出未被检测出的字符区域后,还可以在证件字符模板中标记出未被检测出的字符区域,如图3d所示,其中的阴影区域表示这些字符区域中的字符未被检测出来。实现时,可以采用1表示检测出的字符区域,0表示未被检测出的字符区域。容易知道,图3d是采用图3a所示证件字符模板作为证件图像对应的证件字符模板的情况下确定出的未被检测出的字符区域。
在一种实现方式中,可以根据字符检测结果自动选择证件图像对应的证件字符模板,此时,该步骤S24之前,该方法还可以包括:
根据检测出的字符区域,获取该证件图像对应的证件字符模板。
在本公开实施例的一种实现方式中,根据检测出的字符区域,获取该证件图像对应的证件字符模板,可以采用如下方式:
将检测出的字符区域分别与多个预设的证件字符模板中指定区域内的字符区域进行对比;
将与检测出的字符区域最匹配的证件字符模板,确定为该证件图像对应的证件字符模板。
其中,最匹配的证件字符模板为多个预设的证件字符模板中,具有数量最多的与检测出的字符区域匹配的指定区域的证件字符模板,与检测出的字符区域匹配的指定区域可以为包括与检测出的字符区域相对应的字符区域的指定区域,或者,与检测出的字符区域匹配的指定区域可以为包括数量最多的与检测出的字符区域相对应的字符区域的指定区域。
其中,指定区域可以是证件中位置、数量或尺寸不固定的字符所在的区域,一个证件字符模板中的指定区域可以有一个或多个,每个指定区域中可以包括一个或多个字符区域。每个指定区域中的字符区域可以包括对应一个字符设置的字符区域和对应多个字符设置的字符区域中的至少一种。
比如,对于身份证而言,指定区域可以有两个,一个指定区域为姓名对应的区域,另一个指定区域为住址对应的区域。进一步地,不同的身份证中,姓名对应的区域所对应的字符的位置和数量可能有所不同,如图3a中第一行虚线框所示的字符区域31对应两个字的名字,而图3b中第一行虚线框所示的字符区域31对应三个字的名字。不同的身份证中,住址对应的区域对应的字符可能占有一行、两行或者三行,每一行字符对应一个字符区域,如图3a中第四行虚线框所示的字符区域32对应占一行的住址,而图3b中第四行和第五行虚线框所示的字符区域32对应占两行的住址。
对于每个指定区域中的各个字符区域,若对应有检测出的字符区域,则认为指定区域中的该字符区域与检测出的字符区域相匹配,在一种实现方式中,可以将包含与检测出的字符区域相匹配的字符区域的指定区域作为与检测出的字符区域相匹配的指定区域。
对于一个指定区域而言,包含的与检测出的字符区域相匹配的字符区域的数量越多,表示该指定区域与检测出的字符区域越匹配。在另一种实现方式中,可以将包含数量最多的与检测出的字符区域相匹配的字符区域的指定区域作为与检测出的字符区域匹配的指定区域。
若具有数量最多的与检测出的字符区域匹配的指定区域的证件字符模板有至少两个,则可以从这些证件字符模板中任意选择一个证件字符模板作为该证件图像对应的证件字符模板。
需要说明的是,对于指定区域中的对应多个字符的字符区域,即使检测出的字符区域中仅有一个字符区域与之对应,也认为该字符区域与检测出的字符区域相匹配。
通过该方式可以实现证件字符模板的自适应选择,在减少用户操作的前提下,选择与实际情况更相符的证件字符模板可以提高检测结果的准确度。
在本公开实施例的另一种实现方式中,还可以根据检测出的字符区域在证件图像中的坐标位置来确定证件图像对应的证件字符模板。在这种情况下,根据检测出的字符区域确定证件图像对应的证件字符模板,可以采用如下方式:
获取检测出的字符区域在证件图像中的坐标位置;
判断获取到的坐标位置中是否存在与指定的坐标位置(可以为一个,可以为多个)相匹配的坐标位置;
当获取到的坐标位置中存在与指定的坐标位置相匹配的坐标位置时,将指定的坐标位置对应的证件字符模板作为证件图像对应的证件字符模板。
容易知道,在这种方式中,需要预先记录证件字符模板中需要验证的字符区域的坐标位置,即指定的坐标位置与证件字符模板的对应关系。
优选地,在确定出证件图像对应的证件字符模板后,还可以对指定区域中的字符区域进行调整,以进一步提高证件字符模板的准确程度。实现时,对指定区域中字符区域进行调整可以采用以下方式:
获取最匹配的证件字符模板的指定区域中的字符区域所对应的检测出的字符区域的坐标位置;
根据获取到的坐标位置,对最匹配的证件字符模板的指定区域内的字符区域进行调整。
进一步地,根据获取到的坐标位置,对最匹配的证件字符模板的指定区域内的字符区域进行调整,可以采用如下方式中的至少一种:
删除指定区域中没有对应的检测出的字符区域的字符区域;
将指定区域中第一字符区域对应的检测出的字符区域的坐标位置中,距离第一字符区域的起始边界最远的坐标位置,作为第一字符区域的终止边界,第一字符区域为对应多个字符的字符区域。从而可以调整该第一字符区域的长度。
例如,以图3b所示的身份证的地址行为例,其地址行对应的字符区域有两行,即图3b中虚线框表示的字符区域32。在最匹配的证件字符模板中,这两行字符区域32的长度是相同的。若第二行字符区域不存在对应的检测出的字符区域,则将第二行字符区域删除。若第二行字符区域对应的检测出的字符区域的坐标位置中距离第二行字符区域的起始边界最远的坐标位置与其初始的终点的坐标位置不同,则将检测出的字符区域的坐标位置中距离第二行字符区域的起始边界最远的坐标位置作为其新的终止边界,缩短了第二行字符区域32的长度,因此,虚线框表示的两个字符区域32中,第二行字符区域32的长度小于第一行字符区域32的长度。
在本公开实施例的另一种实现方式中,该证件图像对应的证件字符模板可以根据用户输入信息获取,则在该步骤S24之前,该方法还可以包括:
根据用户输入信息,获取该证件图像对应的证件字符模板。
其中,用户输入信息包括但不限于包括证件类型、住址行数、姓名字数、或民族字数等,可以是其中的一种或多种。
通过该方式可以选择与实际情况相吻合的证件字符模板,证件字符模板的选择更准确,从而可以提高检测结果的准确度。
需要说明的是,也可能证件字符模板只有一种默认模板,则此时直接将该默认模板作为该证件图像对应的证件字符模板进行对比,在这种情况下,无需执行选择证件图像对应的证件字符模板的步骤。
在步骤S25中,根据确定出的未被检测出的字符区域,生成检测结果,该检测结果用于表示该证件图像是否可能被遮挡。
该步骤S25可以包括:
该步骤S25可以采用如下方式:
当满足以下条件中的至少一种条件时,生成表示证件图像可能被遮挡的检测结果:
未被检测出的字符区域中单个字符区域的面积大于设定面积阈值;
未被检测出的字符区域包括至少两个分离的字符区域并且所述分离的字符区域相邻。
容易知道,当不满足上述两个条件时,可以生成证件图像不可能被遮挡的检测结果。
其中,设定面积阈值可以根据字符大小来设置,比如,可以为字符大小的N倍,2≤N≤5。
其中,第一个条件用于判断同一行中的至少两个连续相邻的字符未被检测出的情况,第二个条件用于判断同一行中相邻的两个字符未被检测出的情况,以及不同行中相邻的至少两个字符未被检测出的情况,当有相邻的字符未被检测出时,表示证件图像很有可能被遮挡了。
进一步地,若未被检测出的字符区域中存在面积大于设定面积阈值的单个字符区域,或者未被检测出的字符区域包括至少两个分离的字符区域并且这些分离的字符区域相邻,则表示有连续字符区域被遮挡,此时证件图像很有可能被遮挡,故生成证件图像可能被遮挡的检测结果。若未被检测出的字符区域中不存在面积大于设定面积阈值的单个字符区域,且检测出的字符区域不包括相邻的至少两个分离的字符区域,则证件图像被遮挡的可能较小,生成表示证件图像不可能被遮挡的检测结果。
实际应用中,若不同行中的字符间隔不同,则可以根据字符间隔为各行设置不同的设定面积阈值,比如,对于图3c所示的证件字符模板,姓名和民族所在行的字符间隔较大,则N可以在3到5的范围内取值,优选为3。而对于住址和身份证号所在的行,字符间距较小,则N可以在2到3的范围内取值,优选为2。
可选地,在生成表示证件图像可能被遮挡的检测结果后,该方法还可以包括:输出提示信息,以提醒用户检查证件图像是否被遮挡。
在步骤S26中,当检测结果表示证件图像可能被遮挡时,以未被检测出的字符区域为基础,进行区域增长,得到连通区域。
容易知道,当检测结果表示证件图像不可能被遮挡时,退出当前流程。
该步骤S26可以包括:
第一步、以未被检测出的字符区域在所述证件图像中的对应区域中的任一点为起点,分别确定该起点的8邻域(即该起点的周围的8个点)是否符合区域增长条件;
第二步、将8邻域中符合区域增长条件的点添加到连通区域中;
第三步、从连通区域中选择另一点作为新的起点,分别确定新的起点的8邻域是否符合区域增长条件;
重复第二步和第三步,直至连通区域中的所有点的8邻域中符合区域增长条件的点均添加到连通区域中;
其中,区域增长条件包括以下条件中的至少一种:
点的颜色与证件的背景颜色差异超过第一设定值;
点的梯度值未超过第二设定值。
未被检测出的字符区域在证件图像中的对应区域,可以为将证件图像与证件字符模板叠置后,证件图像中与未被检测出的字符区域重叠的区域,或者,两者为坐标位置相同的区域。
其中,将8邻域中符合区域增长条件的点添加到连通区域中,可以采用列表的形式记录连通区域中各点的坐标。
由于起点处未检测出字符,很可能为被遮挡的区域,则该起点所在位置的颜色与证件的背景颜色差异会比较大,如果其相邻的点与证件的背景颜色差异仍然很大,则表示相邻的点仍然被遮挡,因此,可以以其相邻的点为新的起点继续进行判断,直至找到被遮挡区域的所有的点。实际应用中,起点的相邻的点的颜色与证件的背景颜色差异可以采用起点的相邻的点的RGB三个通道的值的计算,比如,可以采用三个通道的值的模值计算,这种情况下,第一设定值可以根据实际情况设定,对于身份证而言,可以设置为例如50。
而点的梯度值超过第二设定值,则表示该点为被遮挡区域的边界点,点的梯度值未超过第二设定值,则表示仍然在被遮挡的区域内。实际应用中,第二设定值可以根据实际情况设定,对于身份证而言,可以设置为例如50。
通过前述区域增长方式就可以确定出可能被遮挡的连通区域。显然,通过前述两个区域增长条件的结合,可以确定出更为准确的连通区域。
需要说明的是,证件的背景颜色可以为检测出的字符区域周围的颜色,由于检测出的字符区域未被遮挡,将其周围的颜色作为证件的背景颜色可以考虑到证件拍摄时的环境光线等条件影响,更为准确,当然,证件的背景颜色也可以为设置值,比如直接设置身份证的背景颜色为白色。
实现时,若未被检测出的字符区域包括至少两个分离的字符区域,则该步骤S26可以包括:
分别以未被检测出的字符区域中的各个独立的字符区域为基础,进行区域增长,得到各个独立的字符区域对应的增长结果;
将所有独立的字符区域对应的增长结果取交集,得到连通区域。
这种方式获得的连通区域的范围更精确,最终可以准确确定出证件图像是否被遮挡以及确定被遮挡的区域。当然,在其他实现方式时,也可以从未被检测出的字符区域中的各个独立的字符区域中任选一个或多个作为基础,进行区域增长,本公开对此不做限制。
在步骤S27中,根据连通区域来再次确定证件图像是否被遮挡。
该步骤S27可以包括:
若连通区域穿过证件边界且连通区域的面积超过设定阈值,则确定证件图像被遮挡。
由于字符检测的结果可能不够准确,从而导致步骤S25中获得的检测结果不够准确,因此,本公开实施例结合实际应用场景中,证件大多数是被手指或者衣物遮挡,被遮挡区域的颜色会比较一致,从而设定了区域增长条件,确定出可能被遮挡的连通区域,并且结合实际遮挡时,手指和衣服通常会从证件边界延伸到证件内,所以结合连通区域的分布情况可以更为准确地判断证件图像是否被遮挡,进一步提高了检测结果的准确度。
可选地,该方法还可以包括:
当确定出证件图像被遮挡时,输出提示信息。
当本实施例的方法应用于终端设备时,输出提示信息的方式包括但不限于语音提示、灯光提示、文本提示等,以提示用户证件图像被遮挡。
当本实施例的方法应用于服务器时,输出提示信息包括:向终端设备发送提示消息,该提示消息用于触发终端设备输出提示信息;或者,直接输出提示信息,该提示信息用于提示用户证件图像被遮挡。同样地,直接输出提示信息时,输出方式包括但不限于语音提示、灯光提示、文本提示等。
通过输出提示信息,可以使得用户快速了解到该证件图像被遮挡,可能无法通过验证,以便用户即时更换,为用户节省时间。
可选地,该方法还可以包括:
当确定出证件图像被遮挡时,标记出被遮挡的位置,即标记出步骤S26中确定出的连通区域。
在本公开实施例中,由于证件字符模板中的字符区域根据实际证件中的字符区域设置,通过将证件图像中检测到的字符区域与该证件图像对应的证件字符模板中的字符区域进行对比,从而可以确定出未被检测出的字符区域,进而可以根据未被检测出的字符区域有效判断证件图像是否可能被遮挡。
图4是根据一示例性实施例示出的一种检测证件图像遮挡的装置的框图,参照图4,该装置包括:图像获取模块410、边界检测模块420、字符检测模块430、对比模块440和生成模块450。
其中,图像获取模块410用于获取证件图像。边界检测模块420用于对图像获取模块410获取到的证件图像进行证件边界检测。字符检测模块430用于在边界检测模块420检测到的证件边界的范围内进行字符检测,得到字符区域。对比模块440用于将字符检测模块430检测出的字符区域与证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域。生成模块450用于根据对比模块440确定出的未被检测出的字符区域,生成检测结果,该检测结果用于表示证件图像是否可能被遮挡。
其中,证件图像包括但不限于身份证图像、居住证图像、信用卡图像、有价文件(例如支票等)图像、护照图像或驾驶证图像等。
进一步地,图像获取模块410获取证件图像的方式可以参见步骤S11;边界检测模块420进行边界检测的方式可以参见步骤S12;字符检测模块430得到字符区域的方式可以参见步骤S13;对比模块440确定未被检测出的字符区域的方式可以参见步骤S14;生成模块450生成检测结果的方式可以参见步骤S15,在此省略详细描述。
在本公开实施例中,由于证件字符模板中的字符区域根据实际证件中的字符区域设置,通过将证件图像中检测到的字符区域与该证件图像对应的证件字符模板中的字符区域进行对比,从而可以确定出未被检测出的字符区域,进而可以根据未被检测出的字符区域有效判断证件图像是否可能被遮挡。
图5是根据一示例性实施例示出的一种检测证件图像遮挡的装置的框图,参照图5,该装置包括:图像获取模块510、边界检测模块520、字符检测模块530、对比模块540和生成模块550。
其中,图像获取模块510用于获取证件图像。边界检测模块520用于对图像获取模块510获取到的证件图像进行证件边界检测。字符检测模块530用于在边界检测模块520检测到的证件边界的范围内进行字符检测,得到字符区域。对比模块540用于将字符检测模块530检测出的字符区域与证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域。生成模块550用于根据对比模块540确定出的未被检测出的字符区域,生成检测结果,该检测结果用于表示证件图像是否可能被遮挡。
其中,证件图像包括但不限于身份证图像、居住证图像、信用卡图像、有价文件(例如支票等)图像、护照图像或驾驶证图像等。
在本公开实施例的一种可能的实现方式中,对比模块540用于将证件图像对应的证件字符模板中的字符区域与检测出的字符区域进行对比,确定证件图像对应的证件字符模板中的各个字符区域在证件图像中是否有对应的检测出的字符区域;将证件图像对应的证件字符模板中没有对应的检测出的字符区域的字符区域,确定为未被检测出的字符区域。
在一种可能的实现方式中,生成模块550用于当满足以下至少一种条件时,生成表示证件图像可能被遮挡的检测结果:
未被检测出的字符区域中单个字符区域的面积大于设定面积阈值;
未被检测出的字符区域包括至少两个分离的字符区域并且分离的字符区域相邻。
可选地,生成模块550还可以用于当不满足以上条件时,生成表示证件图像不可能被遮挡的检测结果。
需要说明的是,图像获取模块510获取证件图像的详细方式可以参见步骤S21;边界检测模块520进行边界检测的详细方式可以参见步骤S22;字符检测模块530得到字符区域的详细方式可以参见步骤S23;对比模块540确定未被检测出的字符区域的详细方式可以参见步骤S24;生成模块550生成检测结果的详细方式可以参见步骤S25,在此省略详细描述。
可选地,所述装置还包括:模板获取模块560,模板获取模块560用于根据字符检测模块530检测出的字符区域,获取证件图像对应的证件字符模板。
进一步地,模板获取模块560,可以包括:
指定区域对比子模块561,用于将字符检测模块530检测出的字符区域分别与多个预设的证件字符模板中指定区域内的字符区域进行对比;
模板确定子模块562,用于将与检测出的字符区域最匹配的证件字符模板,确定为证件图像对应的证件字符模板,其中,最匹配的证件字符模板为多个预设的证件字符模板中,具有数量最多的与检测出的字符区域匹配的指定区域的证件字符模板,与检测出的字符区域匹配的指定区域为包括与检测出的字符区域相对应的字符区域的指定区域,或者,与检测出的字符区域匹配的指定区域为包括数量最多的与检测出的字符区域相对应的字符区域的指定区域。
可选地,模板获取模块560还可以包括:
位置获取子模块563,用于获取与最匹配的证件字符模板的指定区域中的字符区域对应的检测出的字符区域的坐标位置;
调整子模块564,用于根据位置获取子模块563获取到的坐标位置,对最匹配的证件字符模板的指定区域中的字符区域进行调整。
进一步地,调整子模块564具体用于按照以下方式中的至少一种对所述最匹配的证件字符模板的所述指定区域内的字符区域进行调整:
删除所述指定区域中没有对应的检测出的字符区域的字符区域;
将所述指定区域中第一字符区域对应的检测出的字符区域的坐标位置中,距离所述第一字符区域的起始边界最远的坐标位置,作为所述第一字符区域的终止边界,所述第一字符区域为对应多个字符的字符区域。
其中,指定区域可以是证件中位置、数量或尺寸不固定的字符所在的区域,具体说明见图2所示实施例的相关描述,在此不再赘述。
在另一种实现方式中,模块获取模块560可以用于根据用户输入信息获取证件图像对应的证件字符模板。
其中,用户输入信息包括但不限于包括证件类型、住址行数、姓名字数、或民族字数等,可以是其中的一种或多种。
需要说明的是,也可能证件字符模板只有一种默认模板,则此时对比模块540直接将该默认模板作为该证件图像对应的证件字符模板进行对比。
优选地,所述装置还包括:
区域增长模块570,用于当生成模块550生成的检测结果表示证件图像可能被遮挡时,以未被检测出的字符区域为基础,在证件图像中进行区域增长,得到连通区域;
确定模块580,用于根据连通区域来再次确定证件图像是否被遮挡。
进一步地,区域增长模块570用于按照以下步骤进行区域增长:
第一步、以未被检测出的字符区域在所述证件图像中的对应区域中的任一点为起点,分别确定起点的8邻域是否符合区域增长条件;
第二步、将8邻域中符合区域增长条件的点添加到连通区域中;
第三步、从连通区域中选择另一点作为新的起点,分别确定新的起点的8邻域是否符合区域增长条件;
重复第二步和所述第三步,直至连通区域中的所有点的8邻域中符合区域增长条件的点均添加到所述连通区域中;
其中,区域增长条件包括以下条件中的至少一种:
点的颜色与证件的背景颜色差异超过第一设定值;
点的梯度值未超过第二设定值。
实现时,若未被检测出的字符区域包括至少两个分离的字符区域,则区域增长模块可以用于分别以未被检测出的字符区域中的各个独立的字符区域为基础,进行区域增长,得到各个独立的字符区域对应的增长结果;将所有独立的字符区域对应的增长结果取交集,得到连通区域。
进一步地,确定模块580用于当区域增长模块570确定出的连通区域穿过证件边界且连通区域的面积超过设定阈值时,确定证件图像被遮挡。
可选地,该装置还可以包括:
输出模块590,用于当证件图像被遮挡时,输出提示信息。
当本实施例的装置应用于终端设备时,输出提示信息的方式包括但不限于语音提示、灯光提示、文本提示等,以提示用户证件图像被遮挡。
当本实施例的装置应用于服务器时,输出提示信息包括:向终端设备发送提示消息,该提示消息用于触发终端设备输出提示信息;或者,直接输出提示信息,该提示信息用于提示用户证件图像被遮挡。同样地,直接输出提示信息时,输出方式包括但不限于语音提示、灯光提示、文本提示等。
可选地,该装置还可以包括:
标记模块,用于当确定出证件图像被遮挡时,标记出被遮挡的位置,即标记出区域增长模块570确定出的连通区域。
可选地,该装置还可以包括:
直线检测模块,用于对检测到的证件边界进行直线检测;
角度确定模块,用于根据直线检测结果确定证件图像的倾斜角度;
旋转模块,用于按照确定出的倾斜角度旋转证件图像。
可选地,所述装置还可以包括:
直线检测模块,用于对检测到的证件边界进行直线检测;
长度确定模块,用于根据直线检测结果确定证件图像的边界长度;
缩放模块,用于根据确定出的边界长度将证件图像缩放至设定大小。
在本公开实施例中,由于证件字符模板中的字符区域根据实际证件中的字符区域设置,通过将证件图像中检测到的字符区域与该证件图像对应的证件字符模板中的字符区域进行对比,从而可以确定出未被检测出的字符区域,进而可以根据未被检测出的字符区域有效判断证件图像是否可能被遮挡。此外,由于字符检测的结果可能不够准确,从而导致生成模块的检测结果不够准确,因此,本公开实施例结合实际应用场景中,证件大多数是被手指或者衣物遮挡,被遮挡区域的颜色会比较一致,从而设定了区域增长条件,确定出可能被遮挡的连通区域,并且结合实际遮挡时,手指和衣服通常会从证件边界延伸到证件内,所以结合连通区域的分布情况可以更为准确地判断证件图像是否被遮挡,进一步提高了检测结果的准确度。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6是根据一示例性实施例示出的一种检测证件图像遮挡的装置600的框图。例如,装置600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图6,装置600可以包括以下一个或多个组件:处理组件602,存储器604,电力组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制装置600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在装置600的操作。这些数据的示例包括用于在装置600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电力组件606为装置600的各种组件提供电力。电力组件606可以包括电源管理系统,一个或多个电源,及其他与为装置600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述装置600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当装置600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当装置600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为装置600提供各个方面的状态评估。例如,传感器组件614可以检测到设备600的打开/关闭状态,组件的相对定位,例如所述组件为装置600的显示器和小键盘,传感器组件614还可以检测装置600或装置600一个组件的位置改变,用户与装置600接触的存在或不存在,装置600方位或加速/减速和装置600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于装置600和其他设备之间有线或无线方式的通信。装置600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由装置600的处理器620执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种检测证件图像遮挡的方法,所述方法包括:
获取证件图像;
对所述证件图像进行证件边界检测;
在检测到的证件边界的范围内进行字符检测,得到字符区域;
将检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域;
根据所述未被检测出的字符区域,生成检测结果,所述检测结果用于表示所述证件图像是否可能被遮挡。
在第一方面的一种可能的实现方式中,所述将检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域,包括:
将所述证件图像对应的证件字符模板中的字符区域与所述检测出的字符区域进行对比,确定所述证件图像对应的证件字符模板中的各个字符区域在所述证件图像中是否有对应的检测出的字符区域;
将所述证件图像对应的证件字符模板中没有对应的检测出的字符区域的字符区域,确定为未被检测出的字符区域。
在第一方面的一种可能的实现方式中,所述根据所述未被检测出的字符区域,生成检测结果,包括:
当满足以下至少一种条件时,生成表示所述证件图像可能被遮挡的检测结果:
所述未被检测出的字符区域中单个字符区域的面积大于设定面积阈值;
所述未被检测出的字符区域包括至少两个分离的字符区域并且所述分离的字符区域相邻。
优选地,所述方法还包括:
当所述检测结果表示所述证件图像可能被遮挡时,以所述未被检测出的字符区域为基础,在所述证件图像中进行区域增长,得到连通区域;
根据所述连通区域来再次确定所述证件图像是否被遮挡。
进一步地,所述以所述未被检测出的字符区域为基础,在所述证件图像中进行区域增长,得到连通区域,包括:
第一步、以所述未被检测出的字符区域在所述证件图像中的对应区域中的任一点为起点,分别确定所述起点的8邻域是否符合区域增长条件;
第二步、将所述8邻域中符合区域增长条件的点添加到所述连通区域中;
第三步、从所述连通区域中选择另一点作为新的起点,分别确定所述新的起点的8邻域是否符合区域增长条件;
重复所述第二步和所述第三步,直至所述连通区域中的所有点的8邻域中符合所述区域增长条件的点均添加到所述连通区域中;
其中,所述区域增长条件包括以下条件中的至少一种:
点的颜色与证件的背景颜色差异超过第一设定值;
点的梯度值未超过第二设定值。
进一步地,所述根据所述连通区域来再次确定所述证件图像是否被遮挡,包括:
若所述连通区域穿过所述证件边界且所述连通区域的面积超过设定阈值,则确定所述证件图像被遮挡。
可选地,所述方法还可以包括:
根据所述检测出的字符区域,获取所述证件图像对应的证件字符模板;或者,
根据用户输入信息,获取所述证件图像对应的证件字符模板。
其中,所述根据所述检测出的字符区域,获取所述证件图像对应的证件字符模板,可以包括:
将所述检测出的字符区域分别与多个预设的证件字符模板中指定区域内的字符区域进行对比;
将与所述检测出的字符区域最匹配的证件字符模板,确定为所述证件图像对应的证件字符模板,其中,所述最匹配的证件字符模板为所述多个预设的证件字符模板中,具有数量最多的与所述检测出的字符区域匹配的指定区域的证件字符模板,所述与所述检测出的字符区域匹配的指定区域为包括与所述检测出的字符区域相对应的字符区域的指定区域。
进一步地,所述方法还可以包括:
获取所述检测出的字符区域的坐标位置;
根据获取到的所述坐标位置,对所述最匹配的证件字符模板的所述指定区域内的字符区域进行调整。
更进一步地,所述根据获取到的所述坐标位置,对所述最匹配的证件字符模板的所述指定区域内的字符区域进行调整,包括以下方式中的至少一种:
删除所述指定区域中没有对应的检测出的字符区域的字符区域;
将所述检测出的字符区域的坐标位置作为所述指定区域内与所述检测出的字符区域对应的字符区域的边界坐标位置。
可选地,所述方法还包括:
对检测到的证件边界进行直线检测;
根据直线检测结果确定证件图像的倾斜角度;
按照确定出的倾斜角度旋转证件图像。
可选地,所述方法还包括:
对检测到的证件边界进行直线检测;
根据直线检测结果确定证件图像的边界长度;
根据确定出的边界长度将证件图像缩放至设定大小。
可选地,所述方法还包括:
当所述证件图像被遮挡时,输出提示信息。
可选地,所述证件图像包括身份证图像、有价文件图像、居住证图像、信用卡图像、护照图像或驾驶证图像。
图7是根据一示例性实施例示出的一种检测证件图像遮挡的装置700的框图。例如,装置700可以被提供为一服务器。参照图7,装置700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理组件722的执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行上述方法。
装置700还可以包括一个电源组件726被配置为执行装置700的电源管理,一个有线或无线网络接口750被配置为将装置700连接到网络,和一个输入输出(I/O)接口758。装置700可以操作基于存储在存储器732的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (30)

1.一种检测证件图像遮挡的方法,其特征在于,所述方法包括:
获取证件图像;
对所述证件图像进行证件边界检测;
在检测到的证件边界的范围内进行字符检测,得到字符区域;
将检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域;
根据所述未被检测出的字符区域,生成检测结果,所述检测结果用于表示所述证件图像是否可能被遮挡。
2.根据权利要求1所述的方法,其特征在于,所述将检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域,包括:
将所述证件图像对应的证件字符模板中的字符区域与所述检测出的字符区域进行对比,确定所述证件图像对应的证件字符模板中的各个字符区域在所述证件图像中是否有对应的检测出的字符区域;
将所述证件图像对应的证件字符模板中,没有对应的检测出的字符区域的字符区域,确定为未被检测出的字符区域。
3.根据权利要求1所述的方法,其特征在于,所述根据所述未被检测出的字符区域,生成检测结果,包括:
当满足以下至少一种条件时,生成表示所述证件图像可能被遮挡的检测结果:
所述未被检测出的字符区域中单个字符区域的面积大于设定面积阈值;
所述未被检测出的字符区域包括至少两个分离的字符区域并且所述分离的字符区域相邻。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述检测结果表示所述证件图像可能被遮挡时,以所述未被检测出的字符区域为基础,在所述证件图像中进行区域增长,得到连通区域;
根据所述连通区域来再次确定所述证件图像是否被遮挡。
5.根据权利要求4所述的方法,其特征在于,所述以所述未被检测出的字符区域为基础,在所述证件图像中进行区域增长,得到连通区域,包括:
第一步、以所述未被检测出的字符区域在所述证件图像中的对应区域中的任一点为起点,分别确定所述起点的8邻域是否符合区域增长条件;
第二步、将所述8邻域中符合区域增长条件的点添加到所述连通区域中;
第三步、从所述连通区域中选择另一点作为新的起点,分别确定所述新的起点的8邻域是否符合区域增长条件;
重复所述第二步至所述第三步,直至所述连通区域中的所有点的8邻域中符合所述区域增长条件的点均添加到所述连通区域中;
其中,所述区域增长条件包括以下条件中的至少一种:
点的颜色与证件的背景颜色差异超过第一设定值;
点的梯度值未超过第二设定值。
6.根据权利要求5所述的方法,其特征在于,所述根据所述连通区域来再次确定所述证件图像是否被遮挡,包括:
若所述连通区域穿过所述证件边界且所述连通区域的面积超过设定阈值,则确定所述证件图像被遮挡。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述检测出的字符区域,获取所述证件图像对应的证件字符模板;或者,
根据用户输入信息,获取所述证件图像对应的证件字符模板。
8.根据权利要求7所述的方法,其特征在于,所述根据所述检测出的字符区域,获取所述证件图像对应的证件字符模板,包括:
将所述检测出的字符区域分别与多个预设的证件字符模板中指定区域内的字符区域进行对比;
将与所述检测出的字符区域最匹配的证件字符模板,确定为所述证件图像对应的证件字符模板,其中,所述最匹配的证件字符模板为所述多个预设的证件字符模板中,具有数量最多的与所述检测出的字符区域匹配的指定区域的证件字符模板,所述与所述检测出的字符区域匹配的指定区域为包括与所述检测出的字符区域相对应的字符区域的指定区域,或者,所述与所述检测出的字符区域匹配的指定区域为包括数量最多的与所述检测出的字符区域相对应的字符区域的指定区域。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
获取与所述最匹配的证件字符模板的所述指定区域中的字符区域对应的所述检测出的字符区域的坐标位置;
根据获取到的所述坐标位置,对所述最匹配的证件字符模板的所述指定区域中的字符区域进行调整。
10.根据权利要求9所述的方法,其特征在于,所述根据获取到的所述坐标位置,对所述最匹配的证件字符模板的所述指定区域中的字符区域进行调整,包括以下方式中的至少一种:
删除所述指定区域中没有对应的检测出的字符区域的字符区域;
将所述指定区域中第一字符区域对应的检测出的字符区域的坐标位置中,距离所述第一字符区域的起始边界最远的坐标位置,作为所述第一字符区域的终止边界,所述第一字符区域为对应多个字符的字符区域。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述方法还包括:
对检测到的证件边界进行直线检测;
根据直线检测结果确定证件图像的倾斜角度;
按照确定出的倾斜角度旋转证件图像。
12.根据权利要求1-10任一项所述的方法,其特征在于,所述方法还包括:对检测到的证件边界进行直线检测;
根据直线检测结果确定证件图像的边界长度;
根据确定出的边界长度将证件图像缩放至设定大小。
13.根据权利要求1-10任一项所述的方法,其特征在于,所述方法还包括:
当所述证件图像被遮挡时,输出提示信息。
14.根据权利要求1-10任一项所述的方法,其特征在于,所述证件图像包括身份证图像、有价文件图像、居住证图像、信用卡图像、护照图像或驾驶证图像。
15.一种检测证件图像遮挡的装置,其特征在于,所述装置包括:
图像获取模块,用于获取证件图像;
边界检测模块,用于对所述图像获取模块获取到的所述证件图像进行证件边界检测;
字符检测模块,用于在所述边界检测模块检测到的证件边界的范围内进行字符检测,得到字符区域;
对比模块,用于将所述字符检测模块检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域;
生成模块,用于根据所述对比模块确定出的所述未被检测出的字符区域,生成检测结果,所述检测结果用于表示所述证件图像是否可能被遮挡。
16.根据权利要求15所述的装置,其特征在于,所述对比模块,用于将所述证件图像对应的证件字符模板中的字符区域与所述检测出的字符区域进行对比,确定所述证件图像对应的证件字符模板中的各个字符区域在所述证件图像中是否有对应的检测出的字符区域;将所述证件图像对应的证件字符模板中没有对应的检测出的字符区域的字符区域,确定为未被检测出的字符区域。
17.根据权利要求15所述的装置,其特征在于,所述生成模块,用于当满足以下至少一种条件时,生成表示所述证件图像可能被遮挡的检测结果:
所述未被检测出的字符区域中单个字符区域的面积大于设定面积阈值;
所述未被检测出的字符区域包括至少两个分离的字符区域并且所述分离的字符区域相邻。
18.根据权利要求15所述的装置,其特征在于,所述装置还包括:
区域增长模块,用于当所述生成模块生成的所述检测结果表示所述证件图像可能被遮挡时,以所述未被检测出的字符区域为基础,在所述证件图像中进行区域增长,得到连通区域;
确定模块,用于根据所述连通区域来再次确定所述证件图像是否被遮挡。
19.根据权利要求18所述的装置,其特征在于,所述区域增长模块,用于按照以下步骤进行区域增长:
第一步、以所述未被检测出的字符区域在所述证件图像中的对应区域中的任一点为起点,分别确定所述起点的8邻域是否符合区域增长条件;
第二步、将所述8邻域中符合区域增长条件的点添加到所述连通区域中;
第三步、从所述连通区域中选择另一点作为新的起点,分别确定所述新的起点的8邻域是否符合区域增长条件;
重复所述第二步至所述第三步,直至所述连通区域中的所有点的8邻域中符合所述区域增长条件的点均添加到所述连通区域中;
其中,所述区域增长条件包括以下条件中的至少一种:
点的颜色与证件的背景颜色差异超过第一设定值;
点的梯度值未超过第二设定值。
20.根据权利要求19所述的装置,其特征在于,所述确定模块,用于当所述连通区域穿过所述证件边界且所述连通区域的面积超过设定阈值时,确定所述证件图像被遮挡。
21.根据权利要求15所述的装置,其特征在于,所述装置还包括:
模板获取模块,用于根据所述字符检测模块检测出的所述字符区域,获取所述证件图像对应的证件字符模板;或者,用于根据用户输入信息,获取所述证件图像对应的证件字符模板。
22.根据权利要求21所述的装置,其特征在于,所述模板获取模块,包括:
指定区域对比子模块,用于将所述字符检测模块检测出的字符区域分别与多个预设的证件字符模板中指定区域内的字符区域进行对比;
模板确定子模块,用于将与所述检测出的字符区域最匹配的证件字符模板,确定为所述证件图像对应的证件字符模板,其中,所述最匹配的证件字符模板为所述多个预设的证件字符模板中,具有数量最多的与所述检测出的字符区域匹配的指定区域的证件字符模板,所述与所述检测出的字符区域匹配的指定区域为包括与所述检测出的字符区域相对应的字符区域的指定区域,或者,所述与所述检测出的字符区域匹配的指定区域为包括数量最多的与所述检测出的字符区域相对应的字符区域的指定区域。
23.根据权利要求22所述的装置,其特征在于,所述模板获取模块,还包括:
位置获取子模块,用于获取与所述最匹配的证件字符模板的所述指定区域中的字符区域对应的所述检测出的字符区域的坐标位置;
调整子模块,用于根据所述位置获取子模块获取到的所述坐标位置,对所述最匹配的证件字符模板的所述指定区域中的字符区域进行调整。
24.根据权利要求23所述的装置,其特征在于,所述调整子模块,用于按照以下方式中的至少一种对所述最匹配的证件字符模板的所述指定区域内的字符区域进行调整:
删除所述指定区域中没有对应的检测出的字符区域的字符区域;
将所述指定区域中第一字符区域对应的检测出的字符区域的坐标位置中,距离所述第一字符区域的起始边界最远的坐标位置,作为所述第一字符区域的终止边界,所述第一字符区域为对应多个字符的字符区域。
25.根据权利要求15-24任一项所述的装置,其特征在于,所述装置还包括:
直线检测模块,用于对检测到的证件边界进行直线检测;
角度确定模块,用于根据直线检测结果确定证件图像的倾斜角度;
旋转模块,用于按照确定出的倾斜角度旋转证件图像。
26.根据权利要求15-24任一项所述的装置,其特征在于,所述装置还包括:
直线检测模块,用于对检测到的证件边界进行直线检测;
长度确定模块,用于根据直线检测结果确定证件图像的边界长度;
缩放模块,用于根据确定出的边界长度将证件图像缩放至设定大小。
27.根据权利要求15-24任一项所述的装置,其特征在于,所述装置还包括:
输出模块,用于当所述证件图像被遮挡时,输出提示信息。
28.根据权利要求15-24任一项所述的装置,其特征在于,所述证件图像包括身份证图像、有价文件图像、居住证图像、信用卡图像、护照图像或驾驶证图像。
29.一种检测证件图像遮挡的装置,其特征在于,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
获取证件图像;
对所述证件图像进行证件边界检测;
在检测到的证件边界的范围内进行字符检测,得到字符区域;
将检测出的所述字符区域与所述证件图像对应的证件字符模板中的字符区域进行对比,确定未被检测出的字符区域;
根据所述未被检测出的字符区域,生成检测结果,所述检测结果用于表示所述证件图像是否可能被遮挡。
30.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括至少一条指令,所述至少一条指令被处理器执行时,执行权利要求1-14任一项所述的检测证件图像遮挡的方法。
CN201610269221.8A 2016-04-27 2016-04-27 检测证件图像遮挡的方法和装置 Active CN105894042B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610269221.8A CN105894042B (zh) 2016-04-27 2016-04-27 检测证件图像遮挡的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610269221.8A CN105894042B (zh) 2016-04-27 2016-04-27 检测证件图像遮挡的方法和装置

Publications (2)

Publication Number Publication Date
CN105894042A CN105894042A (zh) 2016-08-24
CN105894042B true CN105894042B (zh) 2019-05-07

Family

ID=56704732

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610269221.8A Active CN105894042B (zh) 2016-04-27 2016-04-27 检测证件图像遮挡的方法和装置

Country Status (1)

Country Link
CN (1) CN105894042B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106599783B (zh) * 2016-11-09 2020-01-14 浙江宇视科技有限公司 一种视频遮挡检测方法及装置
CN107169493A (zh) * 2017-05-31 2017-09-15 北京小米移动软件有限公司 信息识别方法及装置
CN107766885A (zh) * 2017-10-19 2018-03-06 北京小米移动软件有限公司 检测摄像头的遮罩膜的方法及装置
CN109243009B (zh) * 2018-04-20 2020-12-01 湖州达立智能设备制造有限公司 指纹锁指纹角度校正系统
CN109389038A (zh) * 2018-09-04 2019-02-26 阿里巴巴集团控股有限公司 一种信息的检测方法、装置及设备
CN110889470B (zh) * 2018-09-07 2023-11-07 京东科技控股股份有限公司 用于处理图像的方法和装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101625760A (zh) * 2009-07-28 2010-01-13 谭洪舟 一种证件图像倾斜校正的办法
CN102930265B (zh) * 2012-09-19 2015-07-29 广州市中崎商业机器有限公司 一种多身份证扫描方法及装置
CN103873732A (zh) * 2014-03-28 2014-06-18 深圳市神州海纳科技有限公司 一种手持式证件图像采集装置

Also Published As

Publication number Publication date
CN105894042A (zh) 2016-08-24

Similar Documents

Publication Publication Date Title
CN105894042B (zh) 检测证件图像遮挡的方法和装置
CN106295638B (zh) 证件图像倾斜校正方法和装置
KR101864759B1 (ko) 영역 인식 방법 및 장치
CN105550633B (zh) 区域识别方法及装置
CN106228168B (zh) 卡片图像反光检测方法和装置
CN105426818B (zh) 区域提取方法及装置
CN105528606B (zh) 区域识别方法及装置
US10007841B2 (en) Human face recognition method, apparatus and terminal
CN105528607B (zh) 区域提取方法、模型训练方法及装置
CN106296665B (zh) 卡片图像模糊检测方法和装置
CN105488511B (zh) 图像的识别方法及装置
AU2012273435B2 (en) Facilitating image capture and image review by visually impaired users
CN104219445B (zh) 拍摄模式调整方法及装置
JP2018500702A (ja) 領域認識方法及び装置
CN105678242B (zh) 手持证件模式下的对焦方法和装置
CN104463103B (zh) 图像处理方法及装置
CN110569835B (zh) 一种图像识别方法、装置和电子设备
CN105528078B (zh) 控制电子设备的方法及装置
US20180144176A1 (en) Fingerprint template acquisition method and device
CN107247936A (zh) 图像识别方法及装置
CN107995969A (zh) 电子装置及其软键盘显示方法
CN106056117A (zh) 矩形物体的图像处理方法及装置
CN105528765A (zh) 处理图像的方法及装置
CN107992811A (zh) 人脸识别方法及装置
CN112200040A (zh) 遮挡图像检测方法、装置及介质

Legal Events

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