掌桥专利:专业的专利平台
掌桥专利
首页

图像重合度识别方法、电子设备及计算机可读存储介质

文献发布时间:2023-06-19 10:08:35


图像重合度识别方法、电子设备及计算机可读存储介质

【技术领域】

本申请涉及视频处理技术,尤其涉及一种图像重合度识别方法、电子设备及计算机可读存储介质。

【背景技术】

目前,随着互联网技术的快速发展和智能终端的普及,各种论坛、网站、自媒体平台不断涌现。视频制造商、用户每天会产生海量内容丰富多元的各种视频、图片,这些视频、图片会上传各种视频网站、论坛、自媒体平台等,供用户观看。

与此同时,盗版视频、盗版图片也层出不穷,尤其是图片,很容易被一些用户从某个网站、论坛、自媒体平台下载后上传到其他网站、论坛、自媒体平台。这样,导致网站、论坛、自媒体平台实际上重复收录了内容相同的图片,浪费了存储资源;另外,在向用户推荐图片时,很容易将内容相同的多个图片都推荐给用户,导致用户观看重复内容的图片,降低了用户体验。

现有技术中,一般是通过比对图片之间的名称,或者通过人工比对两个图片内容等方式来判断图片是否为相似图片,进而确定一个图片是否为盗版图片。但是,图片的名称是很容易被修改的,对于一些修改了名称的盗播图片,通过比对图片名称的方法很难识别出盗版图片,而通过人工比对两个图片内容的检测方法工作量较大,效率较低。

【发明内容】

本申请的多个方面提供一种图像重合度识别方法、电子设备及计算机可读存储介质,用以识别图像之间的重合度。

本申请的一方面,提供一种图像重合度识别方法,包括:

获取第一图像中的第一边界线;

获取所述第一边界线的斜率,以及获取第二图像中与所述第一边界线对应的第二边界线的斜率;

确定所述第一边界线的斜率和所述第二边界线的斜率之间的差异;

基于所述差异确定所述第一边界线和所述第二边界线之间的相似度,以便根据所述相似度确定所述第一图像和所述第二图像之间的重合度。

本申请的另一方面,提供一种电子设备,所述电子设备包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述一方面所提供的图像重合度识别方法。

本申请的另一方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述一方面所提供的图像重合度识别方法。

由上述技术方案可知,本申请实施例通过获取第一图像中的第一边界线,并进一步获取所述第一边界线的斜率、以及第二图像中与所述第一边界线对应的第二边界线的斜率,然后,确定所述第一边界线的斜率和所述第二边界线的斜率之间的差异,进而,基于所述差异确定所述第一边界线和所述第二边界线之间的相似度,以便根据所述相似度确定所述第一图像和所述第二图像之间的重合度,这样,实现了两个图像之间重合度的识别,从而能够识别内容重复的图像。

另外,采用本申请所提供的技术方案,由于能够基于图像中边界线的斜率识别是否存在内容重复的图像,可以避免网站、论坛、自媒体平台重复收录内容相同的图像,节约存储资源和维护资源。

另外,采用本申请所提供的技术方案,由于能够基于图像中边界线的斜率识别是否存在内容重复的图像,可以避免在向用户推荐图像时,将内容相同的多个图像推荐给用户,避免用户观看相同内容的图片,能够有效提高用户体验。

另外,采用本申请所提供的技术方案,相对于通过人工比对两个图片内容等方式来判断图片是否为相似图片的检测方法,降低了人力成本,提高了识别效率。

【附图说明】

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本申请一实施例提供的图像重合度识别方法的流程示意图;

图2为本申请实施例中接收到的图像和第一图像的一个示例图;

图3为本申请一实施例中获取所述第一边界线的斜率的一个流程示意图;

图4为本申请实施例中一个斜率二叉树的一个示例图;

图5为本申请实施例中带权重的斜率二叉树的一个示例图;

图6为本申请另一实施例提供的图像重合度识别方法的流程示意图;

图7为适于用来实现本申请实施方式的示例性计算机系统/服务器12的框图。

【具体实施方式】

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其它实施例,都属于本申请保护的范围。

需要说明的是,本申请实施例中所涉及的终端可以包括但不限于手机、个人数字助理(Personal Digital Assistant,PDA)、无线手持设备、平板电脑(Tablet Computer)、个人电脑(Personal Computer,PC)、MP3播放器、MP4播放器、可穿戴设备(例如,智能眼镜、智能手表、智能手环等)等。

另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

如背景技术中所述,各种图片,很容易被一些用户从某个网站、论坛、自媒体平台下载后上传到其他网站、论坛、自媒体平台。这样,导致网站、论坛、自媒体平台实际上重复收录了内容相同的图片,浪费了存储资源;另外,在向用户推荐图片时,很容易将内容相同的多个图片都推荐给用户,导致用户观看重复内容的图片,降低了用户体验。而通过比对图片之间的名称来判断图片是否为相似图片的方式,由于图片的名称是很容易被修改的,对于一些修改了名称的盗播图片,通过比对图片名称的方法很难识别出盗版图片;通过人工比对两个图片内容等方式来判断图片是否为相似图片的检测方法工作量较大,效率较低。

因此,亟需提供一种图片重复性识别方法,用以识别内容重复的图片。

图1为本申请一实施例提供的图像重合度识别的流程示意图,如图1所示。

101、获取第一图像中的第一边界线。

可选地,本申请实施例中的第一图像,是指需要识别是否与其他图像内容重复的图像。

另外,本申请实施例中的第一图像,可以是任意格式和内容的图片,例如,可以是bmp、jpg、png、tif、gif、pcx、tga、exif、fpx、svg、psd、cdr、pcd、dxf、ufo、eps、ai、raw、WMF、webp、avif等格式的图像。

另外,本申请实施例中的第一图像,可以是单独的图片,也可是从视频中截取的图片,本申请实施例对此不做限制。

另外,本申请实施例中的第一边界线,是指第一图像中的边界线,可以包括一条边界线,也可以包括任意多条边界线,或者可以包括第一图像中的全部边界线。其中的边界线是指第一图像中各部分内容(人物、物品等)的边缘线、轮廓线等线条。

102、获取所述第一边界线的斜率,以及获取第二图像中与所述第一边界线对应的第二边界线的斜率。

可选地,本申请实施例中的第二图像,是指用来与第一图像进行比较以识别第一图像内容是否与其重复的任意图像。

另外,本申请实施例中的第二图像,可以是任意格式和内容的图片,例如,可以是bmp、jpg、png、tif、gif、pcx、tga、exif、fpx、svg、psd、cdr、pcd、dxf、ufo、eps、ai、raw、WMF、webp、avif等格式的图像。

另外,本申请实施例中的第二图像,可以是单独的图片,也可是从视频中截取的图片,本申请实施例对此不做限制。

另外,本申请实施例中的第二边界线,是指第二图像中的边界线,可以包括一条边界线,也可以包括任意多条边界线,或者可以包括第二图像中的全部边界线。其中的边界线是指第二图像中各部分内容(人物、物品等)的边缘线、轮廓线等线条。

103、确定所述第一边界线的斜率和所述第二边界线的斜率之间的差异。

104、基于所述差异确定所述第一边界线和所述第二边界线之间的相似度,以便根据所述相似度确定所述第一图像和所述第二图像之间的重合度。

需要说明的是,101~104的执行主体的部分或全部可以为位于终端的应用,或者还可以为设置终端的应用中的插件或软件开发工具包(Software Development Kit,SDK)等功能单元,或者还可以为位于网络侧服务器中的应用,本申请实施例对此不进行特别限定。

可以理解的是,所述应用可以是安装在终端上的本地程序(nativeApp),或者还可以是终端上的浏览器的一个网页程序(webApp),本申请实施例对此不进行限定。

这样,实现了两个图像之间重合度的识别,从而能够识别内容重复的图像。

另外,采用本申请所提供的技术方案,由于能够基于图像中边界线的斜率识别是否存在内容重复的图像,可以避免网站、论坛、自媒体平台重复收录内容相同的图像,节约存储资源和维护资源。

另外,采用本申请所提供的技术方案,由于能够基于图像中边界线的斜率识别是否存在内容重复的图像,可以避免在向用户推荐图像时,将内容相同的多个图像推荐给用户,避免用户观看相同内容的图片,能够有效提高用户体验。

另外,采用本申请所提供的技术方案,相对于通过人工比对两个图片内容等方式来判断图片是否为相似图片的检测方法,降低了人力成本,提高了识别效率。

本申请实施例可以应用于任意网站、论坛、自媒体平台等,对用户上传的图像进行内容重复性识别。此时,所述第一图像即为用户上传的图像或者对上传的图像进行一些处理(例如锐化、黑白化等)得到的图像,所述第二图像为网站、论坛、自媒体平台等数据库中存储的任一图像,通过将第一图像与数据库中存储的所有图像进行一一对比,来识别用户上传的图像是否与数据库中的已有图像内容重复。

另外,本申请实施例可以应用于终端设备,用于比较任意两张图像的内容是否重复。

可选地,在其中一些实现方式中,在101之前,还可以对接收到的图像进行锐化,得到所述第一图像。

其中,图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空间域处理和频域处理两类。图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的特征。这种滤波方法提高了地物边缘与周围像元之间的反差,因此也被称为边缘增强。本申请实施例中,可以采用任意的图像锐化方法,例如一阶微分、二阶微分等方式,对接收到的图像进行锐化,本申请实施例不限制具体使用的图像锐化方法。

基于本实施例,通过对接收到的图像进行锐化,可以使得图像中地物的边缘线、轮廓线更清晰,有助于获得更清晰的边界线,由于更准确的确定两个图像中边界线之间的相似度,从而更准确的确定两个图像之间的重合度,提高了图像内容重复性的识别效果。

或者,在另一些实现方式中,在101之前,还可以依次对接收到的图像进行锐化、黑白化,得到所述第一图像。

其中,黑白化也即灰度化,就是将图像进行黑白处理,使其失去色彩。而从像素点出发,就是使各个像素点的红绿蓝(R、G、B)三种颜色分量的值相同。本申请实施例可以采用任意的黑白化方式,例如常用的最大值法(Maximum)、平均值法(Average)、加权平均值法(WeightedAverage)等,本申请实施例不限于具体的黑白化方式。

或者,在又一些实现方式中,在101之前,还可以依次对接收到的图像进行黑白化、锐化,得到所述第一图像。

图2为本申请实施例中接收到的图像和第一图像的一个示例图。如图2所示,左侧图像为接收到的图像(也可以称为原始图像),右侧图像为对左侧图像依次进行锐化、黑白化后得到的第一图像。右侧图像中帽沿、肩膀、头发等白色的边缘线即为边界线。

基于本实施例,在对图像锐化的基础上还对图像进行了黑白化,使各个像素点的三种颜色分量的值相同,有助于更准确、快速的确定图像中地物的边缘线、轮廓线,以提高边界线获取的准确性和效率。

可选地,在其中一些实现方式中,在101之前,还可以先获取所述第一边界线中长度最大的边界线的矩形边界区,也即长度最大的边界线的外接矩形区域,然后,基于预设尺寸、以及所述矩形边界区的长度和高度,对所述第一边界线沿预设平面坐标系中的两个坐标轴方向等比例缩放。

基于本实施例,获取第一边界线中长度最大的边界线的矩形边界区,基于该矩形边界区的长度和高度,以预设尺寸为标准对第一边界线沿预设平面坐标系中的两个坐标轴方向等比例缩放,在不改变边界线形状的情况下,将边界线在两个方向等比例缩放至预设标准尺寸,可以避免第一图像由于尺寸较小导致无法准确获取到第一边界线的斜率,也可以避免第一图像尺寸较大导致一些位于波峰和波谷的点的斜率被放大从而影响整体的斜率,有助于准确确定第一边界线的斜率,从而提高边界线之间的相似度结果,最终提高图像之间的重合度识别结果。

可选地,在其中一些实现方式中,在101中,具体可以基于预设方式,获取所述第一图像中的至少一条边界线作为所述第一边界线。

例如,可以从所述第一图像中选取最长的一条边界线作为所述第一边界线,或者,可以从所述第一图像中选取最长的一条边界线、以及与所述最长的一条边界线相交的至少一条边界线作为所述第一边界线,或者,也可以按照长度从大到小的顺序,从所述第一图像中选取至少一条边界线作为所述第一边界线。或者,还可以按照长度从大到小的顺序,从所述第一图像中选取多条边界线、以及分别与所述多条边界线中每条边界线相交的至少一条边界线作为所述第一边界线。本申请实施例对选取第一边界线的方式、以及具体选取的边界线的数量不做限制,可以根据具体需求设定。

由于较长边界线对应于图像中较大的地物轮廓,更能从整体上反应图像的内容,基于本实施例,从图像中选取长度较长的边界线、或进一步选取相交的边界线用于确定所在的图像与其他图像之间的重合度,有助于提高图像重合度识别结果的准确性。

可选地,在其中一些实现方式中,所述第一边界线包括至少一条待识别边界线。相应地,在102中,获取所述第一边界线的斜率时,可以分别针对所述至少一条待识别边界线中的每一条待识别边界线,计算每一条待识别边界线的斜率,并采用二分法递归计算每一条待识别边界线上分线段的斜率。

可选地,在其中一些实现方式中,所述第二边界线包括至少一条参考边界线。

可选地,在本申请上述各实施例中,还可以分别针对每一条待识别边界线,比较每一条待识别边界线对应的斜率个数与每一条待识别边界线对应的至少一条参考边界线中每一条参考边界线对应的斜率个数是否一致。其中,每一条待识别边界线对应的斜率个数为每一条待识别边界线的斜率与该每一条待识别边界线上所有分线段的斜率的数量,每一条参考边界线对应的斜率个数为每一条参考边界线的斜率与该每一条参考边界线上所有分线段的斜率的数量。若每一条待识别边界线对应的斜率个数与对应的每一条参考边界线对应的斜率个数不一致,则可以基于每一条参考边界线对应的斜率个数,对对应的每一条待识别边界线的斜率进行插值或者抽样,以使插值或者抽样得到的每一条待识别边界线对应的斜率个数与对应的每一条参考边界线对应的斜率个数一致。

基于本实施例,可以使得比较的两条边界线的斜率个数一致,从而实现对两条边界线的斜率的对应比较。

图3为本申请一实施例中获取所述第一边界线的斜率的一个流程示意图。如图3所示,获取每一条待识别边界线的斜率,可以通过如下方式实现:

301、计算每一条待识别边界线的斜率。

302、基于所述每一条待识别边界线的中点将所述每一条待识别边界线切分为两条分线段。

303、分别计算所述两分条线段中每一条分线段的斜率。

304、分别以所述每一条分线段作为所述每一条待识别边界线,迭代执行302~303的操作,直至满足预设条件。

基于本实施例,可以计算每一条待识别边界线的斜率,然后采用二分法递归计算每一条待识别边界线上分线段的斜率,相对于逐点计算每一条待识别边界线上的斜率,降低了计算数据量,提高了计算效率。

可选地,在其中一些实现方式中,满足预设条件,例如可以是:迭代执行302~303的操作的次数达到预设次数;和/或,所述每一条分线段的斜率和所述每一条分线段被切分前的线段的斜率之间的差值小于预设阈值,即,某一分线段被切分前的效率和进一步切分得到的两个分线段中任一分线段的斜率之间的差值小于预设阈值,即认为二者斜率趋于相同,便无需再切分;和/或,各分线段的起点和终点重合。由于计算的斜率越多,斜率比较的结果越准确、同时需要消耗的计算和存储资源越多,实际计算中,可以根据计算和存储性能、以及对图像重合度识别结果的精度需求,确定需要切分线段计算斜率的次数。

基于图3所示实施例的方式,可以分别计算所述第一边界线中每一条待识别边界线的斜率,从而得到所述第一边界线的斜率。

可选地,在其中一些实现方式中,通过图3所示实施例得到每一条待识别边界线的斜率之后,还可以以树形结构存储所述每一条待识别边界线的斜率和所述每一条待识别边界线上的分线段的斜率,得到第一斜率二叉树。其中,所述第一斜率二叉树中每一层节点的节点值表示所述每一条待识别边界线被切分对应次数后得到的线段的斜率。节点在所述树形结构中所在的层次越深,对应的切分次数越多。例如,第一层(最高层)节点的节点值表示每一条待识别边界线的斜率,可以理解为每一条待识别边界线被切分0次(即未切分)后得到的线段的斜率;第二层节点的节点值表示每一条待识别边界线被切分1次后得到的两条线段的斜率;第三层节点的节点值表示每一条待识别边界线被切分2次(即对被切分1次后得到的两条线段分别进行切分)后得到的四条线段的斜率,…,依次类推,可以通过更深层次的节点存储切分次数更多的分线段的斜率。

可选地,在其中一些实现方式中,在102中,获取第二图像中与所述第一边界线对应的第二边界线的斜率时,可以从数据库中获取所述第二边界线中每一条参考边界线对应的第二斜率二叉树。其中,所述第二斜率二叉树以树形结构存储所述每一条参考边界线的斜率和所述每一条参考边界线采用二分法递归切分得到分线段的斜率,第二斜率二叉树中每一层节点的节点值表示所述每一条参考边界线被切分对应次数后得到的线段的斜率,节点的层次越深,对应的切分次数越多。

图4为本申请实施例中一个斜率二叉树的一个示例图。该斜率二叉树即以树形结构存储的边界线的斜率和该边界线上的分线段的斜率示例,可以是第一斜率二叉树或第二斜率二叉树。以第一斜率二叉树存储的一条待识别边界线的斜率为例,表示该待识别边界线被切分了两次,第一次将该待识别边界线切分成了两条线段:线段1和线段2,第二次分别将线段1和线段2各自切分成了两条线段:线段11、线段12、线段21、线段22。其中,第一层(最高层)节点的节点值0表示一条待识别边界线的斜率,第二层节点的节点值1.2、2.3分别表示该待识别边界线被切分1次后得到的线段1和线段2的斜率;第三层节点的节点值0.5、-8.1分别表示对线段1切分得到的线段11、线段12的斜率,第三层节点的节点值1.3、4.2分别表示对线段2切分得到的线段21、线段22的斜率。

相应地,在103中,可以分别确定所述每一条待识别边界线的第一斜率二叉树中和对应的所述每一条参考边界线的第二斜率二叉树中各对应层次节点的节点值之间的差异,从而得到所述第一边界线的斜率和所述第二边界线的斜率之间的差异。例如,可以将所述第一边界线中所有待识别边界线的第一斜率二叉树中和对应的所述每一条参考边界线的第二斜率二叉树中各对应层次节点的节点值之间的差异求和,得到所述第一边界线的斜率和所述第二边界线的斜率之间的差异。

本申请实施例中,可以预先采用上述实施例中获取第一边界线的斜率的方式,来获取第二图像中第二边界线的斜率,并与该第二图像对应存储在数据库中。或者,也可以采用上述实施例中获取第一边界线的斜率的方式,实时获取第二图像中第二边界线的斜率。本申请实施例对此不做限制。

可选地,在其中一些实现方式中,在104中,可以分别针对所述每一条待识别边界线和对应的所述每一条参考边界线,基于各对应层次节点的节点值之间的差异和各层次节点在树形结构中层次深度对应的权重,确定所述每一条待识别边界线和对应的所述每一条参考边界线之间的相似度。

其中,各层次节点在树形结构中的层次深度越深,对应的权重越小。如图5所示,为本申请实施例中带权重的斜率二叉树的一个示例图。其中,两个节点之间连接线上的数值1、0.8为该连接线连接的上面一个层次节点的节点值之间的差异对应的权重。

例如,在一个具体实现方式中,可以通过如下公式计算每一条待识别边界线和对应的每一条参考边界线之间的相似度R:

其中,Wi表示各层次节点在树形结构中层次深度对应的权重,Di表示对应层次节点的节点值之间的差异,k表示归一化系数,具体为大于0且小于1的数值。R的取值越小,表示每一条待识别边界线和对应的每一条参考边界线之间越相似。

具体地,可以分别以各层次节点在树形结构中层次深度对应的权重对所述每一条待识别边界线和对应的所述每一条参考边界线中对应层次节点的节点值之间的差异进行加权、然后求和,得到所述每一条待识别边界线和对应的所述每一条参考边界线之间的相似度。然后,可以分别对第一边界线中所有待识别边界线和对应的每一条参考边界线之间的相似度求和,得到所述第一边界线和所述第二边界线之间的相似度。

可选地,在其中一些实现方式中,可以按照预设规则,预先针对不同长度的边界线设置不同的权重,长度越长的边界线权重越高,长度越短的边界线权重越低。基于所述每一条待识别边界线和对应的所述每一条参考边界线之间的相似度,确定所述第一边界线和所述第二边界线之间的相似度时,可以先确定所述第一边界线中各待识别边界线的长度对应的权重,分别以各待识别边界线的长度对应的权重对该待识别边界线和对应的所述每一条参考边界线之间的相似度进行加权,然后对所有待识别边界线对应的、加权后相似度求和,得到所述第一边界线和所述第二边界线之间的相似度。

基于本实施例,基于第一边界线中各待识别边界线的长度对应的权重对对应的相似度进行加权、然后再对所有待识别边界线对应的、加权后相似度求和,作为第一边界线和第二边界线之间的相似度,由于长度越长的边界线权重越高,长度越短的边界线权重越低,这样,可以提高图像中较大的轮廓(对应于较长边界线)在图像重合度判定中的作用、减小较小的细节(对应于较短边界线,例如脸部皱纹)对图像重合度判定中的影响,从而提高图像重合度识别结果的准确性。

图6为本申请另一实施例提供的图像重合度识别方法的流程示意图,如图6所示。

601、接收图像上传请求,所述图像上传请求用于请求上传所述第一图像。

该图像上传请求可由用户在请求上传第一图像时向网站、论坛、自媒体平台等平台发起。

602、获取第一图像中的第一边界线。

603、获取所述第一边界线的斜率,以及获取第二图像中与所述第一边界线对应的第二边界线的斜率。

604、确定所述第一边界线的斜率和所述第二边界线的斜率之间的差异。

605、基于所述差异确定所述第一边界线和所述第二边界线之间的相似度,并根据所述相似度确定所述第一图像和所述第二图像之间的重合度。

可选地,在其中一些实现方式中,可以直接以所述第一边界线和所述第二边界线之间的相似度作为所述第一图像和所述第二图像之间的重合度;或者,也可以预先设置边界线相似度与图像重合度之间的对应关系,确定所述第一边界线和所述第二边界线之间的相似度之后,查询该对应关系,得到所述第一边界线和所述第二边界线之间的相似度对应的重合度,即为所述第一图像和所述第二图像之间的重合度。

606、识别所述第一图像和所述第二图像之间的重合度是否低于预设阈值。

若所述第一图像和所述第二图像之间的重合度低于预设阈值,可以认为所述第一图像和所述第二图像之间不重合,执行607;否则,若所述第一图像和所述第二图像之间的重合度不低于预设阈值,可以认为所述第一图像和所述第二图像之间重合,执行608。

607、在数据库中存储所述第一图像和所述第一图像对应的斜率。

在数据库中存储所述第一图像和所述第一图像对应的斜率后,所述第一图像在后续便可作为所述第二图像,用于与用户请求上传的图像比较重合度。

608、输出图像上传失败的提示消息。

基于本实施例,可以在用户请求上传图像时及时识别数据库中是否已存在与用户请求上传的图像内容重合的图像,从而避免存储内容相同的图像,节约存储资源和维护资源,并避免后续将内容相同的多个图像推荐给其他用户,能够有效提高用户体验。

本申请的技术方案可以适用于终端、服务器等设备中的图片处理类应用。利用图片处理类应用,执行本申请实施例提供的图片重复性识别方法时,能够实现两个图像之间重合度的识别,从而能够识别内容重复的图像。

另外,采用本申请所提供的技术方案,由于能够基于图像中边界线的斜率识别是否存在内容重复的图像,可以避免网站、论坛、自媒体平台重复收录内容相同的图像,节约存储资源和维护资源。

另外,采用本申请所提供的技术方案,由于能够基于图像中边界线的斜率识别是否存在内容重复的图像,可以避免在向用户推荐图像时,将内容相同的多个图像推荐给用户,避免用户观看相同内容的图片,能够有效提高用户体验。

另外,采用本申请所提供的技术方案,相对于通过人工比对两个图片内容等方式来判断图片是否为相似图片的检测方法,降低了人力成本,提高了识别效率。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

图7示出了适于用来实现本申请实施方式的示例性计算机系统/服务器12的框图。图7显示的计算机系统/服务器12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图7所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,存储装置或者系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。

总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。

计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。

具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。

计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口44进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。

处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现图1~图6所对应的实施例任一实施例所提供的图片重复性识别方法。

本申请另一实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现图1~图6所对应的实施例任一实施例所提供的图片重复性识别方法。

具体来说,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或页面组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一个计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

相关技术
  • 图像重合度识别方法、电子设备及计算机可读存储介质
  • 图像重合度确定方法、电子设备及计算机可读存储介质
技术分类

06120112436166