CN112507910B - 基于像素变形的图形识别方法、***、电子装置及存储介质 - Google Patents
基于像素变形的图形识别方法、***、电子装置及存储介质 Download PDFInfo
- Publication number
- CN112507910B CN112507910B CN202011478867.XA CN202011478867A CN112507910B CN 112507910 B CN112507910 B CN 112507910B CN 202011478867 A CN202011478867 A CN 202011478867A CN 112507910 B CN112507910 B CN 112507910B
- Authority
- CN
- China
- Prior art keywords
- area
- point
- same
- target
- point number
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/30—Noise filtering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种人工智能技术,揭露了一种基于像素变形的图形识别方法,该方法包括:从待识别的图片中获取目标区域,包括内部连通区域和***连通区域;根据目标区域在图片中进行遍历,获得当前识别区域;计算当前识别区域和内部连通区域的第一相同点数,当前识别区域和***连通区域的第二相同点数,并通过图形边缘补偿算法得到当前识别区域和***连通区域的补偿相同点数;根据第一相同点数、第二相同点数和补偿相同点数计算当前识别区域与目标区域的相似度;根据相似度计算结果和预定阈值识别出图片中与目标区域对应的图形。本发明还提供一种图形识别***、电子装置及计算机可读存储介质。本发明针对图形像素变形的情况具有良好的图形识别度。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种基于像素变形的图形识别方法、***、电子装置及计算机可读存储介质。
背景技术
计算机视觉是人工智能领域的一个重要方向,对于人类来说,识别图形、图像是一种天生的能力,而对于计算机来讲,却是一种十分复杂且具有挑战的事,这代表了计算机发展的新高度。图形搜索是计算机视觉识别的重要方面,如何辨别出给定图片中的特定图形,是图形搜索的基础。
目前主流的图形搜索算法一般是通过提出特征来识别特定的图形,然而图片在生成、传输、解析过程中,难免会对图片中的信息进行压缩、图像化操作,在这个过程中会对图形造成影响。例如,图片缩放的插值算法和矢量图形图像化过程中,会使图片中的图形产生一定程度的变形。而且,这种变形是具有积累性的,操作过程越多,新图片与原图片之间的差异就会越来越大,图形搜索的识别度也会随之下降,使得识别效果难以达到预期。
发明内容
有鉴于此,本发明提出一种基于像素变形的图形识别方法、***、电子装置及计算机可读存储介质,以解决如何快速在图片发生像素变形的情况下准确地进行图形识别的问题。
首先,为实现上述目的,本发明提出一种基于像素变形的图形识别方法,该方法包括:
从待识别的图片中获取目标区域,包括内部连通区域和***连通区域;
根据所述目标区域在所述图片中进行遍历,获得当前识别区域;
计算所述当前识别区域和所述内部连通区域的第一相同点数;
计算所述当前识别区域和所述***连通区域的第二相同点数,并通过图形边缘补偿算法得到所述当前识别区域和所述***连通区域的补偿相同点数;
根据所述第一相同点数、第二相同点数和补偿相同点数计算所述当前识别区域与所述目标区域的相似度;及
根据相似度计算结果和预定阈值识别出所述图片中与所述目标区域对应的图形。
可选地,所述从待识别的图片中获取目标区域包括:
接收用户在所述图片中选取的一个目标点,所述目标点为所述目标区域的所述内部连通区域中的任意一点;
根据所述目标点通过四连通递归算法获取目标区域点集,得到所述目标区域,其中所述目标区域点集包括***连通区域点集和内部连通区域点集。
可选地,所述根据所述目标区域在所述图片中进行遍历,获得当前识别区域包括:
按照所述目标区域点集的点数及位置在所述图片对应的二值化的二维矩阵中进行偏移,得到所述当前识别区域点集。
可选地,所述计算所述当前识别区域和所述内部连通区域的第一相同点数包括:
针对所述当前识别区域点集中各个点与所述内部连通区域点集中相应位置各个点的值进行比较,计算出所述当前识别区域点集与所述内部连通区域点集的相同点数,记为所述第一相同点数。
可选地,所述计算所述当前识别区域和所述***连通区域的第二相同点数包括:
针对所述当前识别区域点集中各个点与所述***连通区域点集中相应位置各个点的值进行比较,计算出所述当前识别区域点集与所述***连通区域点集相同点数,记为所述第二相同点数。
可选地,所述通过图形边缘补偿算法得到所述当前识别区域和所述***连通区域的补偿相同点数包括:
当所述***连通区域点集中的第一对比点与所述当前识别区域中对应位置的第二对比点无法匹配时,进一步查询所述第二对比点的八连通区域中是否存在能与所述第一对比点匹配的第三对比点;
当存在所述第三对比点时,将所述第三对比点标记为所述第一对比点的补偿相同点;
统计得到所述当前识别区域点集与所述***连通区域点集的所述补偿相同点数。
可选地,所述根据所述第一相同点数、第二相同点数和补偿相同点数计算所述当前识别区域与所述目标区域的相似度包括:
按照所述第一相同点数、所述第二相同点数、所述补偿相同点数在相似度计算中的不同比重设置多个相似度计算公式;
根据当前识别场景从所述多个相似度计算公式中选择一个当前相似度计算公式;
根据所述第一相同点数、所述第二相同点数、所述补偿相同点数及所述当前相似度计算公式计算得到所述当前识别区域与所述目标区域的相似度。
此外,为实现上述目的,本发明还提供一种图形识别***,所述***包括:
获取模块,用于从待识别的图片中获取目标区域,包括内部连通区域和***连通区域,并根据所述目标区域在所述图片中进行遍历,获取当前识别区域;
对比模块,用于计算所述当前识别区域和所述内部连通区域的第一相同点数,计算所述当前识别区域和所述***连通区域的第二相同点数,并通过图形边缘补偿算法得到所述当前识别区域和所述***连通区域的补偿相同点数;
计算模块,用于根据所述第一相同点数、第二相同点数和补偿相同点数计算所述当前识别区域与所述目标区域的相似度;
判断模块,用于根据相似度计算结果和预定阈值识别出所述图片中与所述目标区域对应的图形。
进一步地,为实现上述目的,本发明还提供一种电子装置,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的图形识别程序,所述图形识别程序被所述处理器执行时实现如上述的图形识别方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有图形识别程序,所述图形识别程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的图形识别方法的步骤。
相较于现有技术,本发明所提出的基于像素变形的图形识别方法、***、电子装置及计算机可读存储介质,可以针对图形像素变形的情况进行相似度识别,在根据目标区域的局部特征进行图形识别的同时加入了图形边缘补偿算法,对于图片像素调整后产生变形的图形有良好的识别度。并且,该算法基于图形边缘进行补偿,是一种基于目标区域局部特征的补偿算法,可以在提高识别度的同时,过滤掉不符合目标区域局部特征的噪点。
附图说明
图1是本发明电子装置一可选的硬件架构的示意图;
图2是本发明图形识别***较佳实施例的程序模块示意图;
图3A是本发明中一种目标区域的示意图;
图3B是本发明中一种产生变形的图形的示意图;
图3C是本发明中一种图形识别效果的示意图;
图4是本发明图形识别方法较佳实施例的流程示意图;
图5是图4中步骤S406的部分细化流程示意图;
图6是图4中步骤S408的细化流程示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是本发明电子装置2一可选的硬件架构的示意图。
本实施例中,所述电子装置2可包括,但不仅限于,可通过***总线相互通信连接存储器11、处理器12、网络接口13。需要指出的是,图1仅示出了具有组件11-13的电子装置2,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,所述电子装置2可以是服务器,也可以是PC(Personal Computer,个人电脑),也可以是智能手机、平板电脑、掌上电脑、便携计算机等终端设备。所述服务器可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备,并且可以是独立的服务器,也可以是多个服务器所组成的服务器集群。
所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器11可以是所述电子装置2的内部存储单元,例如该电子装置2的硬盘或内存。在另一些实施例中,所述存储器11也可以是所述电子装置2的外部存储设备,例如该电子装置2上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器11还可以既包括所述电子装置2的内部存储单元也包括其外部存储设备。本实施例中,所述存储器11通常用于存储安装于所述电子装置2的操作***和各类应用软件,例如图形识别***200的程序代码等。此外,所述存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子装置2的总体操作。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行所述的图形识别***200等。
所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在所述电子装置2与其他电子设备之间建立通信连接。
至此,己经详细介绍了本发明相关设备的硬件结构和功能。下面,将基于上述介绍提出本发明的各个实施例。
首先,本发明提出一种图形识别***200。
参阅图2所示,是本发明图形识别***200较佳实施例的程序模块图。
本实施例中,所述图形识别***200包括一系列的存储于存储器11上的计算机程序指令,当该计算机程序指令被处理器12执行时,可以实现本发明各实施例的图形识别操作。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,图形识别***200可以被划分为一个或多个模块。例如,在图2中,所述图形识别***200可以被分割成获取模块201、对比模块202、计算模块203、判断模块204。其中:
所述获取模块201,用于从待识别的图片中获取目标区域,包括内部连通区域和***连通区域。
具体地,本实施例基于给定的目标区域来识别图片中与所述目标区域相同的图形区域,该图片中目标区域以外的区域记为查找区域,根据所述目标区域在所述查找区域中进行遍历和比较,得到识别结果。其中,所述目标区域为封闭图形,例如正方形,即由***连通区域(***轮廓)与内部连通区域(一般为空白区域)组成。
例如,所述待识别的图片可以是工位平面图,所述目标区域为某一个工位图形,所述***连通区域为该工位图形的***轮廓线,所述内部连通区域为该空位图形在所述***轮廓线内部的空白区域。
当需要从该图片中识别出于所述目标区域相同的图形时,由用户设置所述目标区域。在本实施例中,可以采用直接在该图片中进行选取的方式设置所述目标区域。例如,参阅图3A所示,为一种所述目标区域的示意图。在图3A中,图片右侧的小正方形即为所述目标区域。用户在该图片中选取所述目标区域的操作方法为:点击所述目标区域的内部空白区域中任意一点,该点称为目标点。用户可以通过拖动鼠标或手指点击等方式在所述内部空白区域中选取任意一点作为所述目标点。
接收到用户在该图片中选取的所述目标点后,根据所述目标点通过四连通递归算法获取目标区域点集。所述目标区域点集分为***轮廓点集(B)和内部空白区域点集(W)。
在对该图片基于所述目标区域进行识别之前,为了提高识别准确率和效率,首先要对该图片进行预处理。具体地,图片预处理可以采用灰度处理、降噪滤波、二值化处理技术等。其中,二值化处理是指根据该图片中像素点颜色RGB值大小,将该像素点转换为0或1的数值,从而将该图片转换为二值化的二维数字矩阵。
四连通区域即四邻域,是指对应像素位置的上、下、左、右,是紧邻的位置,从区域上任一点出发,可通过上、下、左、右四个方向上的移动组合,到达该区域的任意像素。两个像素连通的两个必要条件是:两个像素的位置是否相邻;两个像素的灰度值是否满足特定的相似性准则(或者是否相等)。针对每一个像素点,若其四连通有一个点的值与之相同,那么这两个点就归为一个物体。
在所述目标点的基础上,通过四连通递归算法,就能得到所述目标点所在的所述目标区域的所有点集,从而得到所述目标区域的局部特征,后续在该图片中根据局部特征进行相似度的鉴别。
具体而言,在所述目标点(值为0)的四连通位置上找到所有与其值相同的点,得到的点集即为所述目标区域的内部空白区域点集(W),再根据所述内部空白区域点集(W)进一步得到***的所有值为1的点,即为所述目标区域的***轮廓点集(B)。
所述获取模块201,还用于根据所述目标区域在该图片中进行遍历,获取当前识别区域。
具体地,根据所述目标区域点集在该图片对应的整个二维矩阵中进行遍历,也就是将所述目标区域点集(按该点集的点数及位置)在所述二维矩阵中自左向右、自上向下进行偏移,得到当前识别区域点集(如图3A中左上角正方形区域)。
所述对比模块202,用于计算所述当前识别区域和所述内部连通区域的第一相同点数。
具体地,针对所述当前识别区域点集中各个点与所述内部空白区域点集中相应位置各个点的值进行比较,计算出所述当前识别区域点集与所述内部空白区域点集W的相同点数,记为第一相同点数。
所述对比模块202,还用于计算所述当前识别区域和所述***连通区域的第二相同点数,并通过图形边缘补偿算法得到补偿相同点数。
具体地,针对所述当前识别区域点集中各个点与所述***轮廓点集中相应位置各个点的值进行比较,计算出所述当前识别区域点集与所述***轮廓点集B的相同点数,记为第二相同点数。
值得注意的是,由于该图片可能存在一定的变形,使得图形识别的相似度较低,因此需要针对像素变形的情况进行附加处理。例如,工位平面图一般都是由矢量图转化为PDF或者普通图片而成的,在转换过程中,往往会对图片中的各类信息产生一定的变形,致使平面图中各个工位图形整体上大致相同但又有局部的差异。
如图3B所示,为一种产生变形的图形的示意图。
所述目标区域点集由***轮廓点集和内部空白区域点集两个部分组成,导致相似度降低的主要原因是因图形变形后导致与所述***轮廓点集的相似度达不到阀值。而内部空白区域因为是一整块区域,所以该区域的点集匹配度相对较稳定,基本上不会成为导致相似度降低的影响因素。因此,针对所述当前识别区域点集与所述***轮廓点集的比较,若仅仅计算所述第二相同点数,最后得到的相似度往往较低,使之无法被识别到,因此需要对所述第二相同点数进行修正。
修正的具体方式是在针对所述当前识别区域点集与所述***轮廓点集的偏移比较过程中,添加图形边缘补偿算法。如果所述***轮廓点集中某一点(第一对比点)与所述当前识别区域中对应位置的点(第二对比点)无法匹配时,进一步查询所述第二对比点的八连通区域中是否有能与第一对比点匹配的点(第三对比点),如有,则进行标记(将第三对比点标记为补偿相同点)。所述八连通区域即八邻域,是指对应像素位置的上、下、左、右、左上、右上、左下、右下,是紧邻的位置和斜向相邻的位置,共八个方向。所述匹配是指两个点(在所述二维矩阵)的值相等。
经过上述修正之后,可以统计得到所述当前识别区域点集与所述***轮廓点集B的补偿相同点数。
上述图形边缘补偿算法基于目标区域的局部特征,因此在识别图形过程中,通过对像素点周围的点进行扩充遍历的方式对***轮廓特征进行补偿,来获取普通图形识别算法中遗漏的相似点,同时又可以避免识别出不符合目标区域局部特征的区域。
所述计算模块203,用于根据所述第一相同点数、第二相同点数和补偿相同点数计算所述当前识别区域与所述目标区域的相似度。
具体地,根据不同的应用场景,可以配置不同的相似度计算公式。例如:
(1)相似度s=((w/(k-b)+(b+ab)/(k-w))/2,;或
(2)相似度s=((w/(k-b-ab)+(b+ab)/(k-w))/2
其中w为所述第一相同点数,b为所述第二相同点数,ab为所述补偿相同点数,k为目标区域点集的总点数。
上述公式(1)加强了***轮廓点集的比重,而公式(2)则比较均衡,可以根据不同的场景进行选择。
另外,还可以针对所述补偿相同点数加入权重,例如:
(3)相似度s=((w/(k-b-ab*λ)+(b+ab*λ)/(k-w))/2。
其中权重λ可以自定义,也可以通过一定的参数来动态获取,如:λ=b/tb,其中tb为***轮廓点集的总点数。
在其他实施例中,也可以根据实际应用场景的需要和具体特征配置其他可行的相似度计算公式,在此不再赘述。
所述判断模块204,用于根据相似度计算结果和预定阈值识别出该图片中与所述目标区域对应的图形。
具体地,通过遍历所述二维矩阵并计算每个所述当前识别区域与所述目标区域的相似度,得到所有识别区域与所述目标区域的相似度,然后根据预定的阀值来获取符合要求的图形区域,即为该图片中与所述目标区域相同的图形识别结果。在本实施例中,当计算出的相似度大于或等于所述阈值时,表示所述当前识别区域与所述目标区域图形相同,即所述当前识别区域满足条件。
例如,将所述阀值设为0.8,若计算出的相似度s>=0.8则满足条件,将该识别区域保留,然后遍历下一个识别区域,直至遍历完所有图片区域(整个二维矩阵),最后保留下来的所有识别区域即为与所述目标区域图形相同的区域。例如,上图中的目标区域为正方形,根据本实施例可以搜索得到该图片中与该正方形相同的所有正方形的数量及位置。
本实施例提供的图形识别***可针对图形像素变形的情况进行相似度识别,该方法在根据目标区域的局部特征进行图形识别的同时加入了图形边缘补偿算法,对于图片像素调整后产生变形的图形有良好的识别度。并且,该算法基于图形边缘进行补偿,是一种基于目标区域局部特征的补偿算法,可以在提高识别度的同时,过滤掉不符合目标区域局部特征的噪点。同时,本案的方法具有一定的可扩展性,可以针对不同的场景采用适用于该场景的相似度计算公式,在优化图形识别算法的基础上进一步优化,应用场景广泛,优化效果明显。
例如,参阅图3C所示,为一种图形识别效果的示意图。图3C中上排的正方形(工位图形)为所述目标区域,中排的两个图形为该图片中发生变形后的图形。若未添加上述图形边缘补偿算法,则只能识别出实线部分为所述目标区域的相似部分,而虚线部分则无法识别。当添加上述图形边缘补偿算法后,则如下排所示,这两个图形均可被识别为所述目标区域的相似部分,提高了图形识别度。据工位***识别数据显示,未添加图形边缘补偿算法时,对工位图形的识别度在70%以上,而加入了该算法之后,识别度可以达到90%以上。
此外,本发明还提出一种基于像素变形的图形识别方法。
参阅图4所示,是本发明图形识别方法较佳实施例的流程示意图。在本实施例中,根据不同的需求,图4所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。该方法包括:
步骤S400,从待识别的图片中获取目标区域,包括内部连通区域和***连通区域。
具体地,本实施例基于给定的目标区域来识别图片中与所述目标区域相同的图形区域,该图片中目标区域以外的区域记为查找区域,根据所述目标区域在所述查找区域中进行遍历和比较,得到识别结果。其中,所述目标区域为封闭图形,例如正方形,即由***连通区域(***轮廓)与内部连通区域(一般为空白区域)组成。
例如,所述待识别的图片可以是工位平面图,所述目标区域为某一个工位图形,所述***连通区域为该工位图形的***轮廓线,所述内部连通区域为该空位图形在所述***轮廓线内部的空白区域。
当需要从该图片中识别出于所述目标区域相同的图形时,由用户设置所述目标区域。在本实施例中,可以采用直接在该图片中进行选取的方式设置所述目标区域。例如图3A所示,图片右侧的小正方形即为所述目标区域。用户在该图片中选取所述目标区域的操作方法为:点击所述目标区域的内部空白区域中任意一点,该点称为目标点。用户可以通过拖动鼠标或手指点击等方式在所述内部空白区域中选取任意一点作为所述目标点。
接收到用户在该图片中选取的所述目标点后,根据所述目标点通过四连通递归算法获取目标区域点集。所述目标区域点集分为***轮廓点集(B)和内部空白区域点集(W)。
在对该图片基于所述目标区域进行识别之前,为了提高识别准确率和效率,首先要对该图片进行预处理。具体地,图片预处理可以采用灰度处理、降噪滤波、二值化处理技术等。其中,二值化处理是指根据该图片中像素点颜色RGB值大小,将该像素点转换为0或1的数值,从而将该图片转换为二值化的二维数字矩阵。
四连通区域即四邻域,是指对应像素位置的上、下、左、右,是紧邻的位置,从区域上任一点出发,可通过上、下、左、右四个方向上的移动组合,到达该区域的任意像素。两个像素连通的两个必要条件是:两个像素的位置是否相邻;两个像素的灰度值是否满足特定的相似性准则(或者是否相等)。针对每一个像素点,若其四连通有一个点的值与之相同,那么这两个点就归为一个物体。
在所述目标点的基础上,通过四连通递归算法,就能得到所述目标点所在的所述目标区域的所有点集,从而得到所述目标区域的局部特征,后续在该图片中根据局部特征进行相似度的鉴别。
具体而言,在所述目标点(值为0)的四连通位置上找到所有与其值相同的点,得到的点集即为所述目标区域的内部空白区域点集(W),再根据所述内部空白区域点集(W)进一步得到***的所有值为1的点,即为所述目标区域的***轮廓点集(B)。
步骤S402,根据所述目标区域在该图片中进行遍历,获得当前识别区域。
具体地,根据所述目标区域点集在该图片对应的整个二维矩阵中进行遍历,也就是将所述目标区域点集(按该点集的点数及位置)在所述二维矩阵中自左向右、自上向下进行偏移,得到当前识别区域点集(如图3A中左上角正方形区域)。
步骤S404,计算所述当前识别区域和所述内部连通区域的第一相同点数。
具体地,针对所述当前识别区域点集中各个点与所述内部空白区域点集中相应位置各个点的值进行比较,计算出所述当前识别区域点集与所述内部空白区域点集W的相同点数,记为第一相同点数。
步骤S406,计算所述当前识别区域和所述***连通区域的第二相同点数,并通过图形边缘补偿算法得到补偿相同点数。
具体地,针对所述当前识别区域点集中各个点与所述***轮廓点集中相应位置各个点的值进行比较,计算出所述当前识别区域点集与所述***轮廓点集B的相同点数,记为第二相同点数。
值得注意的是,由于该图片可能存在一定的变形,使得图形识别的相似度较低,因此需要针对像素变形的情况进行附加处理。例如,工位平面图一般都是由矢量图转化为PDF或者普通图片而成的,在转换过程中,往往会对图片中的各类信息产生一定的变形,致使平面图中各个工位图形整体上大致相同但又有局部的差异(如图3B所示)。
所述目标区域点集由***轮廓点集和内部空白区域点集两个部分组成,导致相似度降低的主要原因是因图形变形后导致与所述***轮廓点集的相似度达不到阀值。而内部空白区域因为是一整块区域,所以该区域的点集匹配度相对较稳定,基本上不会成为导致相似度降低的影响因素。因此,针对所述当前识别区域点集与所述***轮廓点集的比较,若仅仅计算所述第二相同点数,最后得到的相似度往往较低,使之无法被识别到,因此需要对所述第二相同点数进行修正。
修正的具体方式是在针对所述当前识别区域点集与所述***轮廓点集的偏移比较过程中,添加图形边缘补偿算法。
进一步参阅图5,为所述步骤S406的部分细化流程(修正过程)示意图。在本实施例中,所述步骤S406中的通过图形边缘补偿算法得到补偿相同点数具体包括:
S4060,当所述***连通区域点集中的第一对比点与所述当前识别区域中对应位置的第二对比点无法匹配时,进一步查询所述第二对比点的八连通区域中是否存在能与所述第一对比点匹配的第三对比点。
S4062,当存在所述第三对比点时,将所述第三对比点标记为所述第一对比点的补偿相同点。
所述八连通区域即八邻域,是指对应像素位置的上、下、左、右、左上、右上、左下、右下,是紧邻的位置和斜向相邻的位置,共八个方向。所述匹配是指两个点(在所述二维矩阵)的值相等。
S4064,统计得到所述当前识别区域点集与所述***连通区域点集的所述补偿相同点数。
上述图形边缘补偿算法基于目标区域的局部特征,因此在识别图形过程中,通过对像素点周围的点进行扩充遍历的方式对***轮廓特征进行补偿,来获取普通图形识别算法中遗漏的相似点,同时又可以避免识别出不符合目标区域局部特征的区域。
回到图4,步骤S408,根据所述第一相同点数、第二相同点数和补偿相同点数计算所述当前识别区域与所述目标区域的相似度。
具体地,根据不同的应用场景,可以配置不同的相似度计算公式。例如:
(1)相似度s=((w/(k-b)+(b+ab)/(k-w))/2,;或
(2)相似度s=((w/(k-b-ab)+(b+ab)/(k-w))/2
其中w为所述第一相同点数,b为所述第二相同点数,ab为所述补偿相同点数,k为目标区域点集的总点数。
上述公式(1)加强了***轮廓点集的比重,而公式(2)则比较均衡,可以根据不同的场景进行选择。
另外,还可以针对所述补偿相同点数加入权重,例如:
(3)相似度s=((w/(k-b-ab*λ)+(b+ab*λ)/(k-w))/2。
其中权重λ可以自定义,也可以通过一定的参数来动态获取,如:λ=b/tb,其中tb为***轮廓点集的总点数。
在其他实施例中,也可以根据实际应用场景的需要和具体特征配置其他可行的相似度计算公式,在此不再赘述。
进一步参阅图6,为所述步骤S408的细化流程示意图。在本实施例中,所述步骤S408具体包括:
S4080,按照所述第一相同点数、所述第二相同点数、所述补偿相同点数在相似度计算中的不同比重设置多个相似度计算公式。
例如上述相似度计算公式(1)、(2)、(3)或其他可行的公式。
S4082,根据当前识别场景从所述多个相似度计算公式中选择一个当前相似度计算公式。
例如,当需要***轮廓点集的比重更高一点的时候,可以选择上述相似度计算公式(1)为所述当前相似度计算公式。
S4084,根据所述第一相同点数、所述第二相同点数、所述补偿相同点数及所述当前相似度计算公式计算得到所述当前识别区域与所述目标区域的相似度。
将步骤S404和S406中计算出的所述第一相同点数、所述第二相同点数、所述补偿相同点数分别代入所选择的所述当前相似度计算公式,例如上述相似度计算公式(1),则可计算得到所述当前识别区域与所述目标区域的相似度。
回到图4,步骤S410,根据相似度计算结果和预定阈值识别出该图片中与所述目标区域对应的图形。
具体地,通过遍历所述二维矩阵并计算每个所述当前识别区域与所述目标区域的相似度,得到所有识别区域与所述目标区域的相似度,然后根据预定的阀值来获取符合要求的图形区域,即为该图片中与所述目标区域相同的图形识别结果。在本实施例中,当计算出的相似度大于或等于所述阈值时,表示所述当前识别区域与所述目标区域图形相同,即所述当前识别区域满足条件。
例如,将所述阀值设为0.8,若计算出的相似度s>=0.8则满足条件,将该识别区域保留,然后遍历下一个识别区域,直至遍历完所有图片区域(整个二维矩阵),最后保留下来的所有识别区域即为与所述目标区域图形相同的区域。例如,上图中的目标区域为正方形,根据本实施例可以搜索得到该图片中与该正方形相同的所有正方形的数量及位置。
本实施例提供的图形识别方法可针对图形像素变形的情况进行相似度识别,该方法在根据目标区域的局部特征进行图形识别的同时加入了图形边缘补偿算法,对于图片像素调整后产生变形的图形有良好的识别度。并且,该算法基于图形边缘进行补偿,是一种基于目标区域局部特征的补偿算法,可以在提高识别度的同时,过滤掉不符合目标区域局部特征的噪点。同时,本案的方法具有一定的可扩展性,可以针对不同的场景采用适用于该场景的相似度计算公式,在优化图形识别算法的基础上进一步优化,应用场景广泛,优化效果明显。
本发明还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有图形识别程序,所述图形识别程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的图形识别方法的步骤。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种基于像素变形的图形识别方法,其特征在于,所述方法包括:
从待识别的图片中获取目标区域,包括内部连通区域和***连通区域;
根据所述目标区域在所述图片中进行遍历,获得当前识别区域;
计算所述当前识别区域和所述内部连通区域的第一相同点数;
计算所述当前识别区域和所述***连通区域的第二相同点数,并通过图形边缘补偿算法得到所述当前识别区域和所述***连通区域的补偿相同点数;
根据所述第一相同点数、第二相同点数和补偿相同点数计算所述当前识别区域与所述目标区域的相似度,包括:按照所述第一相同点数、所述第二相同点数、所述补偿相同点数在相似度计算中的不同比重设置多个相似度计算公式;根据当前识别场景从所述多个相似度计算公式中选择一个当前相似度计算公式;根据所述第一相同点数、所述第二相同点数、所述补偿相同点数及所述当前相似度计算公式计算得到所述当前识别区域与所述目标区域的相似度;及
根据相似度计算结果和预定阈值识别出所述图片中与所述目标区域对应的图形。
2.如权利要求1所述的方法,其特征在于,所述从待识别的图片中获取目标区域包括:
接收用户在所述图片中选取的一个目标点,所述目标点为所述目标区域的所述内部连通区域中的任意一点;
根据所述目标点通过四连通递归算法获取目标区域点集,得到所述目标区域,其中所述目标区域点集包括***连通区域点集和内部连通区域点集。
3.如权利要求2所述的方法,其特征在于,所述根据所述目标区域在所述图片中进行遍历,获得当前识别区域包括:
按照所述目标区域点集的点数及位置在所述图片对应的二值化的二维矩阵中进行偏移,得到所述当前识别区域点集。
4.如权利要求3所述的方法,其特征在于,所述计算所述当前识别区域和所述内部连通区域的第一相同点数包括:
针对所述当前识别区域点集中各个点与所述内部连通区域点集中相应位置各个点的值进行比较,计算出所述当前识别区域点集与所述内部连通区域点集的相同点数,记为所述第一相同点数。
5.如权利要求3或4所述的方法,其特征在于,所述计算所述当前识别区域和所述***连通区域的第二相同点数包括:
针对所述当前识别区域点集中各个点与所述***连通区域点集中相应位置各个点的值进行比较,计算出所述当前识别区域点集与所述***连通区域点集相同点数,记为所述第二相同点数。
6.如权利要求5所述的方法,其特征在于,所述通过图形边缘补偿算法得到所述当前识别区域和所述***连通区域的补偿相同点数包括:
当所述***连通区域点集中的第一对比点与所述当前识别区域中对应位置的第二对比点无法匹配时,进一步查询所述第二对比点的八连通区域中是否存在能与所述第一对比点匹配的第三对比点;
当存在所述第三对比点时,将所述第三对比点标记为所述第一对比点的补偿相同点;
统计得到所述当前识别区域点集与所述***连通区域点集的所述补偿相同点数。
7.一种图形识别***,其特征在于,所述***包括:
获取模块,用于从待识别的图片中获取目标区域,包括内部连通区域和***连通区域,并根据所述目标区域在所述图片中进行遍历,获取当前识别区域;
对比模块,用于计算所述当前识别区域和所述内部连通区域的第一相同点数,计算所述当前识别区域和所述***连通区域的第二相同点数,并通过图形边缘补偿算法得到所述当前识别区域和所述***连通区域的补偿相同点数;
计算模块,用于根据所述第一相同点数、第二相同点数和补偿相同点数计算所述当前识别区域与所述目标区域的相似度,包括:按照所述第一相同点数、所述第二相同点数、所述补偿相同点数在相似度计算中的不同比重设置多个相似度计算公式;根据当前识别场景从所述多个相似度计算公式中选择一个当前相似度计算公式;根据所述第一相同点数、所述第二相同点数、所述补偿相同点数及所述当前相似度计算公式计算得到所述当前识别区域与所述目标区域的相似度;
判断模块,用于根据相似度计算结果和预定阈值识别出所述图片中与所述目标区域对应的图形。
8.一种电子装置,其特征在于,所述电子装置包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的图形识别程序,所述图形识别程序被所述处理器执行时实现如权利要求1-6中任一项所述的图形识别方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有图形识别程序,所述图形识别程序可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-6中任一项所述的图形识别方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011478867.XA CN112507910B (zh) | 2020-12-15 | 2020-12-15 | 基于像素变形的图形识别方法、***、电子装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011478867.XA CN112507910B (zh) | 2020-12-15 | 2020-12-15 | 基于像素变形的图形识别方法、***、电子装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112507910A CN112507910A (zh) | 2021-03-16 |
CN112507910B true CN112507910B (zh) | 2023-01-17 |
Family
ID=74973706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011478867.XA Active CN112507910B (zh) | 2020-12-15 | 2020-12-15 | 基于像素变形的图形识别方法、***、电子装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112507910B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107886495A (zh) * | 2017-09-30 | 2018-04-06 | 北京得华机器人技术研究院有限公司 | 一种基于相似度匹配的汽车零配件缺陷识别方法 |
CN111401326A (zh) * | 2020-04-21 | 2020-07-10 | 招商局金融科技有限公司 | 基于图片识别的目标身份识别方法、服务器及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008234203A (ja) * | 2007-03-19 | 2008-10-02 | Ricoh Co Ltd | 画像処理装置 |
CN105631449B (zh) * | 2015-12-21 | 2019-06-28 | 华为技术有限公司 | 一种图片分割方法、装置及设备 |
CN105760842A (zh) * | 2016-02-26 | 2016-07-13 | 北京大学 | 一种基于边缘和纹理特征结合的台标识别方法 |
-
2020
- 2020-12-15 CN CN202011478867.XA patent/CN112507910B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107886495A (zh) * | 2017-09-30 | 2018-04-06 | 北京得华机器人技术研究院有限公司 | 一种基于相似度匹配的汽车零配件缺陷识别方法 |
CN111401326A (zh) * | 2020-04-21 | 2020-07-10 | 招商局金融科技有限公司 | 基于图片识别的目标身份识别方法、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112507910A (zh) | 2021-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107633526B (zh) | 一种图像跟踪点获取方法及设备、存储介质 | |
CN109753838A (zh) | 二维码识别方法、装置、计算机设备及存储介质 | |
CN110807110B (zh) | 结合局部和全局特征的图片搜索方法、装置及电子设备 | |
CN108960280B (zh) | 一种图片相似度检测方法及*** | |
CN107578011A (zh) | 视频关键帧的判定方法及装置 | |
US9131193B2 (en) | Image-processing device removing encircling lines for identifying sub-regions of image | |
CN107610097A (zh) | 仪表定位方法、装置和终端设备 | |
CN111080665B (zh) | 图像边框识别方法、装置、设备和计算机存储介质 | |
CN107563986B (zh) | 图像区域的判断方法和*** | |
CN111260655A (zh) | 基于深度神经网络模型的图像生成方法与装置 | |
CN111401424B (zh) | 目标检测方法、装置和电子*** | |
CN112507910B (zh) | 基于像素变形的图形识别方法、***、电子装置及存储介质 | |
CN113627423A (zh) | 圆形***字符识别方法、装置、计算机设备和存储介质 | |
CN110807342B (zh) | 条形码定位方法、装置、计算机设备和存储介质 | |
CN109919164B (zh) | 用户界面对象的识别方法及装置 | |
CN116229098A (zh) | 一种基于掩模轮廓跟踪的图像识别方法及相关产品 | |
CN113255696B (zh) | 图像识别方法、装置、计算机设备和存储介质 | |
JP5761353B2 (ja) | 隆線方向抽出装置、隆線方向抽出方法、隆線方向抽出プログラム | |
CN111753573B (zh) | 二维码图像识别方法、装置、电子设备以及可读存储介质 | |
CN111256712B (zh) | 地图优化方法、装置及机器人 | |
CN115221910A (zh) | 二维码识别方法、装置、设备及计算机可读存储介质 | |
CN112507921B (zh) | 基于目标区域的图形搜索方法、***、电子装置及存储介质 | |
CN112529923A (zh) | 一种控件识别方法及装置 | |
CN112825141B (zh) | 识别文本的方法、装置、识别设备和存储介质 | |
CN117252767A (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 |