一种马赛克区域检测方法、装置及设备与流程

文档序号:15935899发布日期:2018-11-14 02:23阅读:187来源:国知局

本申请涉及数据处理领域,具体涉及一种马赛克区域检测方法、装置及设备。

背景技术

由于拍摄设备的老化和其他缺陷问题,可能导致利用上述设备进行拍摄的图片、视频等存在马赛克区域,而存在马赛克区域的图像对于用户来说是不清楚的,所以,可以通过对马赛克区域的检测确定出图像或视频中的马赛克区域,以便技术人员对图像或视频进行修复。

现有的马赛克区域检测方法是基于图像的边缘检测的,通常是将原始的彩色图像转换为灰度图像,通过对灰度图像进行边缘提取,最终基于提取到边缘的图像进行马赛克区域的确定。

上述基于边缘检测的马赛克区域检测方法,只适用于正常区域和马赛克区域的边缘强度存在明显的模式差异的图像,对于不满足上述条件的图像,该方法并不能完成对马赛克区域的检测。另外,现有的方法是基于马赛克区域为矩形的前提进行检测的,对于其他形状的马赛克区域也不能准确检测。同时,对于图像中存在与马赛克区域的边缘形状模式相似的方格形字符(如中日韩文字)、条纹、方格状的围巾或地面砖等时,该方法会出现明显的误检。

所以,目前亟需一种能够准确检测出马赛克区域的方法。



技术实现要素:

为解决上述问题,本申请提供了一种马赛克区域检测方法、装置及设备,具体技术方案如下:

第一方面,本申请提供了一种马赛克区域检测方法,所述方法包括:将待检测图片输入至图像分割模型;其中,所述图像分割模型是利用标记出马赛克区域的图片作为训练样本,对神经网络模型进行训练后得到的;

由所述图像分割模型对所述待检测图片进行图像分割处理后,输出所述待检测图片的马赛克区域。

可选的,所述将待检测图片输入至图像分割模型之前,还包括:

生成标记出马赛克区域的图片;

将所述图片作为训练样本,并由若干所述训练样本组成训练样本集;其中所述训练样本集用于训练神经网络模型。

可选的,所述生成标记出马赛克区域的图片,包括:

将任一张不包含马赛克区域的图片确定为图片i;

将所述图片i缩小n1倍后,按照最近邻方法放大到与所述图片i相同大小,得到图片i1;

对所述图片i或所述图片i1按照纹理和颜色进行图像分割,得到具有若干分割块的图片s;其中,所述图片s的若干分割块包括马赛克区域块和正常区域块,所述马赛克区域块中的像素值为1,所述正常区域块中的像素值为0;

根据所述图片s、所述图片i和所述图片i1,生成图片im;其中,所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片i1中对应位置像素值相同,所述图片im中与所述图片s的正常区域块对应的位置的像素值与所述图片i中对应位置像素值相同;

将所述图片im与所述图片s作为标记出马赛克区域的图片;其中,所述图片s用于标记出所述图片im的马赛克区域。

可选的,所述生成图片im之前,还包括:

将所述图片i缩小n2倍后,按照最近邻方法放大到与所述图片i相同大小,得到图片i2;

将所述图片i1和所述图片i2按照随机生成的比例加权得到图片m;

相应的,所述对所述图片i或所述图片i1按照纹理和颜色进行图像分割,得到具有若干分割块的图片s,包括:

对所述图片i、所述图片i1或所述图片i2按照纹理和颜色进行图像分割,得到具有若干分割块的图片s;

相应的,所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片i1中对应位置像素值相同,具体为:

所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片m中对应位置像素值相同。

可选的,所述神经网络模型包括全卷积神经网络模型或带洞的卷积神经网络模型。

第二方面,本申请还提供了一种马赛克区域检测装置,所述装置包括:

输入模块,用于将待检测图片输入至图像分割模型;其中,所述图像分割模型是利用标记出马赛克区域的图片作为训练样本,对神经网络模型进行训练后得到的;

输出模块,用于由所述图像分割模型对所述待检测图片进行图像分割处理后,输出所述待检测图片的马赛克区域。

可选的,所述装置还包括:

生成模块,用于生成标记出马赛克区域的图片;

训练模块,用于将所述图片作为训练样本,并由若干所述训练样本组成训练样本集;其中所述训练样本集用于训练神经网络模型。

可选的,所述生成模块,包括:

第一确定子模块,用于将任一张不包含马赛克区域的图片确定为图片i;

第一缩小放大子模块,用于将所述图片i缩小n1倍后,按照最近邻方法放大到与所述图片i相同大小,得到图片i1;

图像分割子模块,用于对所述图片i或所述图片i1按照纹理和颜色进行图像分割,得到具有若干分割块的图片s;其中,所述图片s的若干分割块包括马赛克区域块和正常区域块,所述马赛克区域块中的像素值为1,所述正常区域块中的像素值为0;

第一生成子模块,用于根据所述图片s、所述图片i和所述图片i1,生成图片im;其中,所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片i1中对应位置像素值相同,所述图片im中与所述图片s的正常区域块对应的位置的像素值与所述图片i中对应位置像素值相同;

第二确定子模块,用于将所述图片im与所述图片s作为标记出马赛克区域的图片;其中,所述图片s用于标记出所述图片im的马赛克区域。

可选的,所述装置还包括:

第二缩小放大子模块,用于将所述图片i缩小n2倍后,按照最近邻方法放大到与所述图片i相同大小,得到图片i2;

加权子模块,用于将所述图片i1和所述图片i2按照随机生成的比例加权得到图片m;

相应的,所述图像分割子模块,具体用于:

对所述图片i、所述图片i1或所述图片i2按照纹理和颜色进行图像分割,得到具有若干分割块的图片s;

相应的,所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片i1中对应位置像素值相同,具体为:所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片m中对应位置像素值相同。

第三方面,本申请还提供了一种马赛克区域检测设备,所述设备包括存储器和处理器,

所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;

所述处理器用于根据所述程序代码中的指令,执行上述任一项所述的马赛克区域检测方法。

本申请提供了一种马赛克区域检测方法,首先,将待检测图片输入至图像分割模型;其中,所述图像分割模型是利用标记出马赛克区域的图片作为训练样本,对神经网络模型进行训练后得到的;由所述图像分割模型对所述待检测图片进行图像分割处理后,输出所述待检测图片的马赛克区域。本申请利用神经网络模型实现马赛克区域检测,能够很大程度上提高马赛克区域的检测准确性,同时不存在现有的边缘检测方法中的各种问题。

附图说明

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

图1为本申请实施例提供的一种马赛克区域检测方法的流程图;

图2为本申请实施例提供的一种自动生成训练样本的方法流程图;

图3为本申请实施例提供一种用马赛克区域检测装置的结构示意图;

图4为本申请实施例提供一种马赛克区域检测设备的结构示意图。

具体实施方式

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

现有的马赛克区域的检测方法是通过边缘检测,在边缘中寻找固定的模式实现的。对于正常区域和马赛克区域的边缘强度未存在明显的模式差异的图像,不能完成对马赛克区域的准确检测;对于存在与马赛克区域的边缘形状模式相似的方格形字符(如中日韩文字)、条纹、方格状的围巾或地面砖等的图片,也不能完成对马赛克区域的准确检测;对于非矩形马赛克区域的图片也不能完成对马赛克区域的准确检测。对于上述各种问题,本申请提供的马赛克区域检测方法,通过将马赛克区域检测问题转换为图像分割问题,利用深度学习技术,通过大量训练样本对神经网络模型进行训练得到图像分割模型,利用图像分割模型对马赛克区域进行检测,能够解决上述现有技术中不能解决的问题,很大程度上提高了马赛克区域的检测精度。

具体的,本申请提供了一种马赛克区域检测方法,首先,将待检测图片输入至图像分割模型;其中,所述图像分割模型是利用标记出马赛克区域的图片作为训练样本,对神经网络模型进行训练后得到的;由所述图像分割模型对所述待检测图片进行图像分割处理后,输出所述待检测图片的马赛克区域。本申请利用神经网络模型实现马赛克区域检测,能够很大程度上提高马赛克区域的检测准确性,同时不存在现有的边缘检测方法中的各种问题。

以下具体介绍本申请提供的一种马赛克区域检测方法的实施例,参考图1,为本申请实施例提供的一种马赛克区域检测方法的流程图,该方法具体包括:

s101:将待检测图片输入至图像分割模型;其中,所述图像分割模型是利用标记出马赛克区域的图片作为训练样本,对神经网络模型进行训练后得到的。

本申请实施例中的待检测图片可以是单一的图片,也可以是马赛克视频的某一帧图片。本申请实施例提供的马赛克区域检测方法可以用于对马赛克视频进行检测,具体应用于对质量有问题的视频进行马赛克区域检测,以便于对该视频进行有效修复;另外,还可以应用于对经过马赛克处理的色情视频的检测等。

本申请实施例中,在对图片进行马赛克区域的检测之前,首先获取图像分割模型,后续利用图像分割模型,对待检测图片进行马赛克区域的检测,将马赛克区域检测问题转换成图像分割问题,高效准确的完成马赛克区域的检测。

具体的,图像分割模型是利用标记出马赛克区域的图片作为训练样本,对神经网络模型进行训练后得到的。其中,标记出马赛克区域的图片可以通过人工标注的方式得到,但是,由于训练样本的量级较大,通过人工标注的方式显然效率较低。

为此,本申请实施例提供了一种自动生成标记出马赛克区域的图片即训练样本的方法,在生成标记出马赛克区域的图片后,将这些图片作为训练样本,并由大量的训练样本组成训练样本集,用于对神经网络模型的训练中。

参考图2,为本申请实施例提供的一种自动生成训练样本的方法流程图,该方法具体包括:

s201:将任一张不包含马赛克区域的图片确定为图片i。

在自动生成训练样本之前,首先获取一个包含大量图片的数据集,其中,确保数据集中的图片不包含马赛克区域。对于数据集中的各个图片均需要经过s201-s205的依次处理,最终得到用于对神经网络模型训练的训练样本集。

s202:将所述图片i缩小n1倍后,按照最近邻方法放大到与所述图片i相同大小,得到图片i1。

在s201中从数据集中选取一张图片i后,首先将图片i缩小n1倍,再按照最近邻方法将缩小n1倍的图片i放大到原图像大小,最终得到图片i1。上述对图片i缩小n1倍后又放大至原图像大小的处理,相当于对原图片i添加格点大小为n1个像素的马赛克。

s203:对所述图片i或所述图片i1按照纹理和颜色进行图像分割,得到具有若干分割块的图片s;其中,所述图片s的若干分割块包括马赛克区域块和正常区域块,所述马赛克区域块中的像素值为1,所述正常区域块中的像素值为0。

本申请实施例中,对图片i或者图片i1,按照纹理和颜色进行图像分割后,得到若干分割块,其中,分割块的个数一般不超过10块,且分割块的大小通常不一致,另外,按照纹理和颜色进行图像分割的算法通常可以使用slic算法。将其中的随机指定的几个(一般为2-6个)分割块标注为马赛克区域,并且将标注为马赛克区域内的像素点的像素值设置为1;将未被标注为马赛克区域的其他分割块标注为正常区域,并且将正常区域内的像素点的像素值设置为0,最终得到包含上述马赛克区域和正常区域的图片s,其大小与图片i和图片i1的大小相同。由于图片s的马赛克区域的像素值均为1,其他区域的像素值均为0,所以通过图片s能够直观的获知其中的马赛克区域。

s204:根据所述图片s、所述图片i和所述图片i1,生成图片im;其中,所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片i1中对应位置像素值相同,所述图片im中与所述图片s的正常区域块对应的位置的像素值与所述图片i中对应位置像素值相同。

本申请实施例中,由于图片s中包括马赛克区域和正常区域,所以,将图片im首先根据图片s的区域划分方法划分成两个区域,分别对应图片s中的马赛克区域和正常区域。其次,将图片im中的马赛克区域的像素点设置为与图片i1中对应位置的像素点的像素值相同;且将图片im中的正常区域的像素点设置为与图片i中对应位置的像素点相同,最终得到的图片im为包含s203中图片s上确定出的马赛克区域的图片。

s205:将所述图片im与所述图片s作为标记出马赛克区域的图片;其中,所述图片s用于标记出所述图片im的马赛克区域。

由于图片s可以用于标记图片im上的马赛克区域,所以,图片im和图片s组合起来,作为一对用于对神经网络模型训练的训练样本和真值。

通过上述处理方式,本申请实施例可以得到大量的图片im和图片s的组合,用于对神经网络模型进行训练,通过不断的优化神经网络模型的参数,最终得到经过训练的神经网络模型,即用于检测马赛克区域的图像分割模型。

另外,为了提高生成的马赛克区域的真实性,本申请实施例的s203之前还可以包括s2和s3,具体的:

s1:将所述图片i缩小n1倍后,按照最近邻方法放大到与所述图片i相同大小,得到图片i1。

s2:将所述图片i缩小n2倍后,按照最近邻方法放大到与所述图片i相同大小,得到图片i2。

s3:将所述图片i1和所述图片i2按照随机生成的比例加权得到图片m。

其中,利用相同的方式得到图片i1和图片i2后,按照随机生成的比例加权得到图片m,具体的,图片i1和图片i2的对应位置的像素点分别进行加权,得到图片m。

相应的,s203中也是对图片i、图片i1或图片i2按照纹理和颜色进行图像分割。s204中图片im中的马赛克区域的像素值与图片m对应位置的像素值相同。

值得注意的是,还可以利用s1和s2的方式生成更多张图片,虽然能够提高马赛克区域生成的真实性,但是由于图片数量越多,相应的系统处理效率越低,所以,本申请实施例可以均衡系统性能后,实现图片m的生成。

在利用上述步骤生成的训练样本集完成对神经网络模型的训练后,还可以确定出验证样本集,进一步的利用验证样本集对经过训练的神经网络模型进行验证,以得到更准确的图像分割模型,其中,验证样本集可以由从训练样本集中随机抽取的若干训练样本组成。

在得到图像分割模型后,可以利用该图像分割模型进行马赛克区域的检测,具体的,将待检测图片输入该图像分割模型,以便s102对该待检测图片进行进一步的处理。

值得注意的是,待检测图片可以是单一的图片,也可以是马赛克视频的某一帧图片,也就是说,本申请实施例提供的马赛克区域检测方法可以用于对马赛克视频进行检测,具体应用于对质量有问题的视频进行马赛克区域检测,以便于对该视频进行有效修复;另外,还可以应用于对经过马赛克处理的色情视频的检测。

s102:由所述图像分割模型对所述待检测图片进行图像分割处理后,输出所述待检测图片的马赛克区域。

在将待检测图片输入至图像分割模型后,由该图像分割模型对该待检测图片进行图像分割处理,最终输出该待检测图片上各个像素点为马赛克区域的概率,即马赛克概率图,通过该马赛克概率图能够直观的获知待检测图片上的马赛克区域。进一步的可以按照0.5的阈值对输出的马赛克概率图上的各个像素点进行二值化处理,以便更清楚的向用户输出待检测图片上的马赛克区域,。另外,还可以以其他形式输出待检测图片的马赛克区域,在此不做限定,只要用户通过输出参数能够获知马赛克区域即可。

值得注意的是,为了保证马赛克区域检测的准确性,本申请实施例中的神经网络模型可以是全卷积神经网络模型或带洞的卷积神经网络模型等。

一种具体的实现方式中,可以采用谷歌最新提出的基于带洞的卷积神经网络的deeplab-v3系统来训练图像分割模型,这一模型以resnet-101为基准网络,能够有效地用于非常复杂的语义图像分割任务,比如路面,天空,草地等区域类型的识别,因此在样本量足够的前提下,能够训练得到较准确的图像分割模型。本方法在训练样本集上运行30个epoch后终止,将最终训练得到的模型固定保存即可使用。在独立的验证样本集上,本算法得到的像素点的iou精度为94.8%。在实际的包含马赛克的图片中,本方法也取得了很准确的预测结果。

本申请实施例提供的马赛克区域检测方法中,首先,将待检测图片输入至图像分割模型;其中,所述图像分割模型是利用标记出马赛克区域的图片作为训练样本,对神经网络模型进行训练后得到的;由所述图像分割模型对所述待检测图片进行图像分割处理后,输出所述待检测图片的马赛克区域。本申请实施例利用神经网络模型实现马赛克区域检测,能够很大程度上提高马赛克区域的检测准确性,同时不存在现有的边缘检测方法中的各种问题。

与上述方法实施例相对应的,本申请还提供了一种马赛克区域检测装置,参考图3,为本申请实施例提供的一种马赛克区域检测装置的结构示意图,所述装置包括:

输入模块301,用于将待检测图片输入至图像分割模型;其中,所述图像分割模型是利用标记出马赛克区域的图片作为训练样本,对神经网络模型进行训练后得到的;

输出模块302,用于由所述图像分割模型对所述待检测图片进行图像分割处理后,输出所述待检测图片的马赛克区域。

所述装置还包括:

生成模块,用于生成标记出马赛克区域的图片;

训练模块,用于将所述图片作为训练样本,并由若干所述训练样本组成训练样本集;其中所述训练样本集用于训练神经网络模型。

具体的,所述生成模块,包括:

第一确定子模块,用于将任一张不包含马赛克区域的图片确定为图片i;

第一缩小放大子模块,用于将所述图片i缩小n1倍后,按照最近邻方法放大到与所述图片i相同大小,得到图片i1;

图像分割子模块,用于对所述图片i或所述图片i1按照纹理和颜色进行图像分割,得到具有若干分割块的图片s;其中,所述图片s的若干分割块包括马赛克区域块和正常区域块,所述马赛克区域块中的像素值为1,所述正常区域块中的像素值为0;

第一生成子模块,用于根据所述图片s、所述图片i和所述图片i1,生成图片im;其中,所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片i1中对应位置像素值相同,所述图片im中与所述图片s的正常区域块对应的位置的像素值与所述图片i中对应位置像素值相同;

第二确定子模块,用于将所述图片im与所述图片s作为标记出马赛克区域的图片;其中,所述图片s用于标记出所述图片im的马赛克区域。

另外,所述装置还包括:

第二缩小放大子模块,用于将所述图片i缩小n2倍后,按照最近邻方法放大到与所述图片i相同大小,得到图片i2;

加权子模块,用于将所述图片i1和所述图片i2按照随机生成的比例加权得到图片m;

相应的,所述图像分割子模块,具体用于:

对所述图片i、所述图片i1或所述图片i2按照纹理和颜色进行图像分割,得到具有若干分割块的图片s;

相应的,所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片i1中对应位置像素值相同,具体为:所述图片im中与所述图片s的马赛克区域块对应的位置的像素值与所述图片m中对应位置像素值相同。

所述神经网络模型包括全卷积神经网络模型或带洞的卷积神经网络模型。

本申请实施例提供的马赛克区域检测装置中,首先,将待检测图片输入至图像分割模型;其中,所述图像分割模型是利用标记出马赛克区域的图片作为训练样本,对神经网络模型进行训练后得到的;由所述图像分割模型对所述待检测图片进行图像分割处理后,输出所述待检测图片的马赛克区域。本申请实施例利用神经网络模型实现马赛克区域检测,能够很大程度上提高马赛克区域的检测准确性,同时不存在现有的边缘检测方法中的各种问题。

相应的,本发明实施例还提供一种马赛克区域检测设备,参见图4所示,可以包括:

处理器401、存储器402、输入装置403和输出装置404。马赛克区域检测设备中的处理器401的数量可以一个或多个,图4中以一个处理器为例。在本发明的一些实施例中,处理器401、存储器402、输入装置403和输出装置404可通过总线或其它方式连接,其中,图4中以通过总线连接为例。

存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行马赛克区域检测设备的各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。输入装置403可用于接收输入的数字或字符信息,以及产生与马赛克区域检测设备的用户设置以及功能控制有关的信号输入。

具体在本实施例中,处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现上述马赛克区域检测方法中的各种功能。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本申请实施例所提供的一种马赛克区域检测方法、装置及设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1