1.本发明涉及图像识别技术领域,具体而言,涉及一种图像相似度计算方法及装置。
背景技术:2.现有技术识别图形时计算图形的相似度一般采用编辑距离来计算图形的相似度,如汉明距离、莱文斯坦距离等。在现有图形识别过程中,一般将图形进行降噪、二值化处理,遍历查找二值化的图形信息,通过相似度算法计算的相似度满足阈值时,则认为当前图形与目标图形是相似的。可以看出,图形识别过程中最重要的是相似度计算方法,精准的相似度计算方法直接决定了图形识别算法的效率。
3.目前这种相似度计算方式通过图形整体相同的像素点数量实现,以这种计算相似度的方式偏重图形整体的空间特性,从而将图形的任何原子像素点都按照相同权重进行计算,忽略了图形局部特征的重要性,在某些情况下会使得不相似图形的相似度很高,从而使得图形识别效率降低。此外,现有计算图形相似度的算法计算出的相似度会随着相同像素点数的增加而成直线增加,这种计算模型在在实际应用中效果往往较差,尤其是在干扰图形很多且很复杂的情况下表现欠佳。
4.采用编辑距离计算相似度时,随着相同像素点数增加,相似度往往成线性增长。如一个图形由a个像素点组成,另外一个图形与该图形比较时,相同黑色点个数为d,白色点相同个数为c,则根据汉明距离计算相似度为总相同点个数(d+c)/a,这种方式计算的相似度与总相同点数(d+c)成正比,假设图形总点数为100,而外围黑色点仅有20,则将该图形与空白区域(没有黑色点的区域)比较时,得到相似度却可以达到80%,这显然时不合理的。
5.由此可见,针对现有技术的相似度计算方法导致图形识别准确性不足的技术问题,现有技术急需一种解决方案。
技术实现要素:6.本发明为了解决上述背景技术中的至少一个技术问题,提出了一种图像相似度计算方法及装置。
7.为了实现上述目的,根据本发明的一个方面,提供了一种图像相似度计算方法,该方法包括:
8.获取对比基准图像和待对比图像,其中,所述对比基准图像包含第一封闭图形,所述第一封闭图形包括:第一外围连通区域和第一内部区域,所述待对比图像包含第二封闭图形,所述第二封闭图形包括:第二外围连通区域和第二内部区域;
9.确定所述第一外围连通区域的第一像素点数数据、所述第一内部区域的第二像素点数数据、所述第一外围连通区域与所述第二外围连通区域相同的第三像素点数数据以及所述第一内部区域与所述第二内部区域相同的第四像素点数数据;
10.根据所述第一像素点数数据以及所述第三像素点数数据确定外围连通区域相似度;
11.根据所述第二像素点数数据以及所述第四像素点数数据确定内部区域相似度;
12.根据所述外围连通区域相似度和所述内部区域相似度,确定所述待对比图像与所述对比基准图像的相似度。
13.可选的,所述根据所述第一像素点数数据以及所述第三像素点数数据确定外围连通区域相似度,具体包括:
14.根据所述第一像素点数数据以及所述第三像素点数数据确定第一参数;
15.将所述第一参数带入s型生长曲线函数中,得到所述外围连通区域相似度。
16.可选的,所述根据所述第二像素点数数据以及所述第四像素点数数据确定内部区域相似度,具体包括:
17.根据所述第二像素点数数据以及所述第四像素点数数据确定第二参数;
18.将所述第二参数带入s型生长曲线函数中,得到所述内部区域相似度。
19.可选的,所述根据所述第一像素点数数据以及所述第三像素点数数据确定第一参数,具体包括:
20.计算出所述第三像素点数数据与所述第一像素点数数据的第一比值;
21.根据所述第一比值确定所述第一参数。
22.可选的,所述根据所述第二像素点数数据以及所述第四像素点数数据确定第二参数,具体包括:
23.计算出所述第四像素点数数据与所述第二像素点数数据的第二比值;
24.根据所述第二比值确定所述第二参数。
25.可选的,所述根据所述外围连通区域相似度和所述内部区域相似度,确定所述待对比图像与所述对比基准图像的相似度,具体包括:
26.通过计算所述外围连通区域相似度和所述内部区域相似度的均值或加权平均值,得到所述待对比图像与所述对比基准图像的相似度。
27.为了实现上述目的,根据本发明的另一方面,提供了一种图像相似度计算装置,该装置包括:
28.图像获取单元,用于获取对比基准图像和待对比图像,其中,所述对比基准图像包含第一封闭图形,所述第一封闭图形包括:第一外围连通区域和第一内部区域,所述待对比图像包含第二封闭图形,所述第二封闭图形包括:第二外围连通区域和第二内部区域;
29.像素点统计单元,用于确定所述第一外围连通区域的第一像素点数数据、所述第一内部区域的第二像素点数数据、所述第一外围连通区域与所述第二外围连通区域相同的第三像素点数数据以及所述第一内部区域与所述第二内部区域相同的第四像素点数数据;
30.外围连通区域相似度确定单元,用于根据所述第一像素点数数据以及所述第三像素点数数据确定外围连通区域相似度;
31.内部区域相似度确定单元,用于根据所述第二像素点数数据以及所述第四像素点数数据确定内部区域相似度;
32.最终相似度确定单元,用于根据所述外围连通区域相似度和所述内部区域相似度,确定所述待对比图像与所述对比基准图像的相似度。
33.可选的,所述外围连通区域相似度确定单元,具体包括:
34.第一参数计算模块,用于根据所述第一像素点数数据以及所述第三像素点数数据
确定第一参数;
35.第一函数计算模块,用于将所述第一参数带入s型生长曲线函数中,得到所述外围连通区域相似度。
36.可选的,所述内部区域相似度确定单元,具体包括:
37.第二参数计算模块,用于根据所述第二像素点数数据以及所述第四像素点数数据确定第二参数;
38.第二函数计算模块,用于将所述第二参数带入s型生长曲线函数中,得到所述内部区域相似度。
39.为了实现上述目的,根据本发明的另一方面,还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述图像相似度计算方法的步骤。
40.为了实现上述目的,根据本发明的另一方面,还提供了一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现上述图像相似度计算方法的步骤。
41.为了实现上述目的,根据本发明的另一方面,还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述图像相似度计算方法的步骤。
42.本发明的有益效果为:
43.本发明实施例在计算图像的相似度时,先分别计算出图像外围连通区域相似度和图像内部区域相似度,进而根据所述外围连通区域相似度和所述内部区域相似度,确定最终图像的相似度,与现有技术的通过图形整体相同的像素点数量来计算相似度的方法相比,图形识别准确性更高。
附图说明
44.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
45.图1是本发明实施例图像相似度计算方法的流程图;
46.图2是本发明实施例确定外围连通区域相似度的流程图;
47.图3是本发明实施例确定内部区域相似度的流程图;
48.图4是本发明实施例确定第一参数的流程图;
49.图5是本发明实施例确定第二参数的流程图;
50.图6是本发明实施例封闭图形示意图;
51.图7是本发明实施例图像相似度计算装置的结构框图;
52.图8是本发明实施例外围连通区域相似度确定单元的结构框图;
53.图9是本发明实施例内部区域相似度确定单元的结构框图;
54.图10是本发明实施例计算机设备示意图。
具体实施方式
55.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
56.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
57.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
58.需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
59.需要说明的是,本技术技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
60.需要说明的是,本发明的图像相似度计算方法及装置可以应用于金融领域也可以应用于其他技术领域。
61.需要说明的是,本发明的封闭图形是由n(n为正整数)条线段或弧组成的闭合图形,本发明指二维平面下的闭合图形,如三角形,矩形。
62.需要说明的是,本发明的连通区域一般是指图像中具有相同像素值且位置相邻的像素点组成的图像区域。
63.本发明可以根据特定图形识别出与之相似的图形,可应用于识别图片中的某些图形,如根据职场平面施工图识别出所有的工位、家具、桌椅等,并可标注出工位、家具及桌椅等位置信息,方便将职场信息进行数字化录入。
64.图1是本发明实施例图像相似度计算方法的流程图,如图1所示,在本发明一个实施例中,本发明的图像相似度计算方法包括步骤s101至步骤s105。
65.步骤s101,获取对比基准图像和待对比图像,其中,所述对比基准图像包含第一封闭图形,所述第一封闭图形包括:第一外围连通区域和第一内部区域,所述待对比图像包含第二封闭图形,所述第二封闭图形包括:第二外围连通区域和第二内部区域。
66.在本发明一个实施例中,对比基准图像和待对比图像均为二值化图像。
67.图6是本发明实施例封闭图形示意图,如图6所示,本发明的封闭图形由外围连通区域和内部区域组成。
68.在本发明一个实施例中,外围连通区域的像素值均为1。
69.在本发明一个实施例中,内部区域为内部连通区域,内部连通区域的像素值均为0。
70.在本发明另一个实施例中,内部区域为位于所述外围连通区域内部的所有像素点。
71.步骤s102,确定所述第一外围连通区域的第一像素点数数据、所述第一内部区域的第二像素点数数据、所述第一外围连通区域与所述第二外围连通区域相同的第三像素点数数据以及所述第一内部区域与所述第二内部区域相同的第四像素点数数据。
72.在本发明中,第一像素点数数据具体为所述第一外围连通区域的像素点数,在本发明中用tb表示。
73.在本发明中,第二像素点数数据具体为所述第一内部区域的像素点数,在本发明中用tw表示。
74.在本发明中,第三像素点数数据具体为所述第一外围连通区域与所述第二外围连通区域相同的像素点数,在本发明中用b表示。
75.在本发明中,第四像素点数数据具体为所述第一内部区域与所述第二内部区域相同的像素点数,在本发明中用w表示。
76.步骤s103,根据所述第一像素点数数据以及所述第三像素点数数据确定外围连通区域相似度。
77.步骤s104,根据所述第二像素点数数据以及所述第四像素点数数据确定内部区域相似度。
78.步骤s105,根据所述外围连通区域相似度和所述内部区域相似度,确定所述待对比图像与所述对比基准图像的相似度。
79.在本发明一个实施例中,本步骤具体可以通过计算所述外围连通区域相似度和所述内部区域相似度的均值或加权平均值,得到所述待对比图像与所述对比基准图像的相似度。
80.在本发明一个具体实施例中,在得到外围连通区域相似度s1和内部区域相似度s2之后,本发明可以计算其两者的均值得到两个图像的相似度s=(s1+s2)/2。
81.图2是本发明实施例确定外围连通区域相似度的流程图,如图2所示,在本发明一个实施例中,上述步骤s103的根据所述第一像素点数数据以及所述第三像素点数数据确定外围连通区域相似度,具体包括步骤s201和步骤s202。
82.步骤s201,根据所述第一像素点数数据以及所述第三像素点数数据确定第一参数。
83.步骤s202,将所述第一参数带入s型生长曲线函数中,得到所述外围连通区域相似度。
84.在本发明中,s型生长曲线的函数具体为:
[0085][0086]
在本发明中,本步骤具体将第一参数带入上述s型生长曲线的函数中的x中,得到所述外围连通区域相似度s1=y(x)。
[0087]
图3是本发明实施例确定内部区域相似度的流程图,如图3所示,在本发明一个实施例中,上述步骤s104的根据所述第二像素点数数据以及所述第四像素点数数据确定内部区域相似度,具体包括步骤s301和步骤s302。
[0088]
步骤s301,根据所述第二像素点数数据以及所述第四像素点数数据确定第二参数。
[0089]
步骤s302,将所述第二参数带入s型生长曲线函数中,得到所述内部区域相似度。
[0090]
在本发明中,本步骤具体将第二参数带入上述s型生长曲线的函数中的x中,得到所述内部区域相似度s2=y(x)。
[0091]
图4是本发明实施例确定第一参数的流程图,如图4所示,在本发明一个实施例中,上述步骤s201的根据所述第一像素点数数据以及所述第三像素点数数据确定第一参数,具体包括步骤s401和步骤s402。
[0092]
步骤s401,计算出所述第三像素点数数据与所述第一像素点数数据的第一比值。
[0093]
在本发明中,所述第一比值可以用b/tb来表示。
[0094]
步骤s402,根据所述第一比值确定所述第一参数。
[0095]
在本发明一个实施例中,本步骤具体先用所述第一比值乘以预设的第一系数,然后用乘积减去第一预设值,得到所述第一参数。
[0096]
在本发明一个具体实施例中,所述第一系数可以为10,所述第一预设值可以为6,在本发明一个具体实施例中,所述第一参数具体为:
[0097][0098]
图5是本发明实施例确定第二参数的流程图,如图5所示,在本发明一个实施例中,上述步骤s301的根据所述第二像素点数数据以及所述第四像素点数数据确定第二参数,具体包括步骤s501和步骤s502。
[0099]
步骤s501,计算出所述第四像素点数数据与所述第二像素点数数据的第二比值。
[0100]
在本发明中,所述第二比值可以用w/tw来表示。
[0101]
步骤s502,根据所述第二比值确定所述第二参数。
[0102]
在本发明一个实施例中,本步骤具体先用所述第二比值乘以预设的第二系数,然后用乘积减去第二预设值,得到所述第二参数。
[0103]
在本发明一个具体实施例中,所述第二系数可以为10,所述第二预设值可以为6,所述第二参数具体为:
[0104][0105]
由以上实施例可以看出,本发明中的相似度算法有效降低图形识别的噪点数量,提高图形识别的准确性,对于像素变形后的图形也有良好的识别效果。
[0106]
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0107]
基于同一发明构思,本发明实施例还提供了一种图像相似度计算装置,可以用于实现上述实施例所描述的图像相似度计算方法,如下面的实施例所述。由于图像相似度计算装置解决问题的原理与图像相似度计算方法相似,因此图像相似度计算装置的实施例可以参见图像相似度计算方法的实施例,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地
以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
[0108]
图7是本发明实施例图像相似度计算装置的结构框图,如图7所示,在本发明一个实施例中,本发明的图像相似度计算装置包括:
[0109]
图像获取单元1,用于获取对比基准图像和待对比图像,其中,所述对比基准图像包含第一封闭图形,所述第一封闭图形包括:第一外围连通区域和第一内部区域,所述待对比图像包含第二封闭图形,所述第二封闭图形包括:第二外围连通区域和第二内部区域;
[0110]
像素点统计单元2,用于确定所述第一外围连通区域的第一像素点数数据、所述第一内部区域的第二像素点数数据、所述第一外围连通区域与所述第二外围连通区域相同的第三像素点数数据以及所述第一内部区域与所述第二内部区域相同的第四像素点数数据;
[0111]
外围连通区域相似度确定单元3,用于根据所述第一像素点数数据以及所述第三像素点数数据确定外围连通区域相似度;
[0112]
内部区域相似度确定单元4,用于根据所述第二像素点数数据以及所述第四像素点数数据确定内部区域相似度;
[0113]
最终相似度确定单元5,用于根据所述外围连通区域相似度和所述内部区域相似度,确定所述待对比图像与所述对比基准图像的相似度。
[0114]
图8是本发明实施例外围连通区域相似度确定单元的结构框图,如图8所示,在本发明一个实施例中,所述外围连通区域相似度确定单元3具体包括:
[0115]
第一参数计算模块301,用于根据所述第一像素点数数据以及所述第三像素点数数据确定第一参数;
[0116]
第一函数计算模块302,用于将所述第一参数带入s型生长曲线函数中,得到所述外围连通区域相似度。
[0117]
图9是本发明实施例内部区域相似度确定单元的结构框图,如图9所示,在本发明一个实施例中,所述内部区域相似度确定单元4具体包括:
[0118]
第二参数计算模块401,用于根据所述第二像素点数数据以及所述第四像素点数数据确定第二参数;
[0119]
第二函数计算模块402,用于将所述第二参数带入s型生长曲线函数中,得到所述内部区域相似度。
[0120]
在本发明一个实施例中,所述第一参数计算模块301,具体用于计算出所述第三像素点数数据与所述第一像素点数数据的第一比值;进而根据所述第一比值确定所述第一参数。
[0121]
在本发明一个实施例中,所述第二参数计算模块401,具体用于计算出所述第四像素点数数据与所述第二像素点数数据的第二比值;进而根据所述第二比值确定所述第二参数。
[0122]
在本发明一个实施例中,所述最终相似度确定单元5,具体用于通过计算所述外围连通区域相似度和所述内部区域相似度的均值或加权平均值,得到所述待对比图像与所述对比基准图像的相似度。
[0123]
为了实现上述目的,根据本技术的另一方面,还提供了一种计算机设备。如图10所示,该计算机设备包括存储器、处理器、通信接口以及通信总线,在存储器上存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例方法中的步
骤。
[0124]
处理器可以为中央处理器(central processing unit,cpu)。处理器还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
[0125]
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及单元,如本发明上述方法实施例中对应的程序单元。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及作品数据处理,即实现上述方法实施例中的方法。
[0126]
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0127]
所述一个或者多个单元存储在所述存储器中,当被所述处理器执行时,执行上述实施例中的方法。
[0128]
上述计算机设备具体细节可以对应参阅上述实施例中对应的相关描述和效果进行理解,此处不再赘述。
[0129]
为了实现上述目的,根据本技术的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序在计算机处理器中执行时实现上述图像相似度计算方法中的步骤。本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。
[0130]
为了实现上述目的,根据本技术的另一方面,还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述图像相似度计算方法的步骤。
[0131]
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0132]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技
术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。