1.本发明涉及水印去除技术领域,具体涉及一种随背景变化的灰度视频文字类水印去除方法及系统。
背景技术:2.在视频图像应用领域经常会使用灰度成像,各种灰度成像的视频带有视频注释、日期、时间等水印,这类水印在此统称为文字类水印。这些水印有几个主要的特点:第一水印是变化的,比如时间会变化;第二水印的明暗是变化的,比如背景呈深色,水印呈浅色;背景呈浅色,水印呈深色;第三水印具有细长的线条,水印和背景相互交融;第四水印自身灰度值保持一致。
3.近年来利用人工智能算法处理视频和图像越来越普遍,比如目标检测、目标分类等。人工智能算法尤其是最近几年流行的有监督深度学习算法是基于大量数据进行工作的。首先搭建神经网络,然后将标注好的训练集数据输入网络进行训练得到训练好的模型,最后使用训练好的模型进行实时工作。
4.数据获取对深度学习来说是很重要但是也是一件不容易的事情,特别是一些专业和小众的领域,在互联网很难找到相关的数据资源。将一些现有的视频和图像收集起来加以利用,比如用来进行模型训练是非常明智和有效的方式。但是很多时候我们获得的图像或者视频都有水印,这些水印对训练集的标注和后期的训练形成干扰,降低了项目推进的效率。
5.现有的去水印技术可以分为两大类,一类是基于机器学习的算法,另一类是传统的算法。基于机器学习的算法大多要用到训练数据。现有的传统的去水印算法大多是基于静态的图像,需要手动去标识水印,或者使用较复杂的算法检测水印再用水印附近的区域去填充水印区域。模板匹配检测水印是针对水印样式固定不变的情况,水印样式是变化的时候无法使用传统的模板匹配是检测水印。还有一种去水印方法比较直接,直接将水印部分进行覆盖添加新的水印,或者将水印部分进行模糊处理,这种方法对背景技术种提到的模型训练没有帮助。本文种提到的文字类水印是跟背景相互交融,也就是说文字的镂空部分是背景,不能单纯的将水印连带镂空背景一起抹去,这样会使得去水印之后的图像看起来非常突兀。
6.然后,以上现有的水印去除技术并不适应于随背景变化的灰度视频文字类水印去除,无法解决针对灰度成像的视频实时去除特定位置的水印;且很难快速对视频或者图像进行快速批量处理。
技术实现要素:7.本发明所要解决的技术问题是现有的水印去除技术并不适应于随背景变化的灰度视频文字类水印去除,无法解决针对灰度成像的视频实时去除特定位置的水印。本发明目的在于提供一种随背景变化的灰度视频文字类水印去除方法及系统,通过该方法解决随
背景变化的灰度视频文字类水印去除问题,针对灰度成像的视频实时去除特定位置的水印,并克服水印会根据图像的明暗变化而发生的变化;另外,可以批量获得除去水印的干净数据。
8.本发明通过下述技术方案实现:
9.第一方面,本发明提供了一种随背景变化的灰度视频文字类水印去除方法,该方法包括:
10.获取待处理灰度视频,对待处理灰度视频中的原始图像进行预处理,得到初步定位的水印区域;
11.根据所述初步定位的水印区域,采用两路水印检测处理法对所述初步定位的水印区域进行水印检测处理(即精确定位),得到两路中间结果;对所述两路中间结果进行运算(求交集),生成水印模板,提取所述水印模板中相同像素值个数最多的像素作为精确定位的水印区域,同时得到背景区域;其中,精确定位的水印区域以外的区域即是背景区域;
12.使用所述背景区域对所述精确定位的水印区域进行填充,得到水印去除后的图像。
13.工作原理是:现有的传统水印去除技术并不适应于随背景变化的灰度视频文字类水印去除,无法解决针对灰度成像的视频实时去除特定位置的水印;而基于机器学习的算法大多要用到训练数据。因此,本发明设计了一种随背景变化的灰度视频文字类水印去除方法,包括首先,获取待处理水印图像,并对所述待处理水印图像进行预处理,得到初步定位的水印区域;其中图像预处理,包含水印区域初步定位以及噪声滤除;水印区域初步定位主要作用是减少计算量,其次可以减少背景对阈值分割的干扰;噪声滤除是为了减少对边缘检测的干扰。其次,在初步定位的水印区域内对水印进行精确定位,生成水印模板;然后,根据水印模板对水印区域进行填充,去除水印;最后,进行图像后处理,改善水印去除后水印区域边界处出现的割裂感。
14.本发明流程合理,解决随背景变化的灰度视频文字类水印去除问题,针对灰度成像的视频实时去除特定位置的水印,并克服水印会根据图像的明暗变化而发生的变化;另外,可以批量获得除去水印的干净数据。
15.进一步地,所述的对所述待处理水印图像进行预处理包括水印区域初步定位和噪声滤除处理。
16.进一步地,所述水印区域初步定位是对水印进行初步定位,前提是水印的位置不发生变化。特定位置的水印只需要基于水印的中心画一个矩形框即可,矩形框的长边要超过水印整体的长度,短边是水印宽度的3倍,确保背景在初定位中的占比高于水印,同时也尽可能地减小运算量。
17.进一步地,所述的采用两路水印检测处理法对所述初步定位的水印区域进行水印检测处理,具体包括:
18.第一路水印检测处理:对所述初步定位的水印区域采用sobel边缘检测法分别对水平和垂直方向进行边缘检测,得到水平边缘和垂直边缘;并将水平边缘和垂直边缘叠加,得到叠加后的边缘图像;对叠加后的边缘图像进行自适应阈值分割,得到第一二值图像;对得到的第一二值图像进行形态学膨胀得到膨胀结果,对膨胀的结果与第二路中间结果做运算,得到第一路中间结果,即第一路水印模板;
19.第二路水印检测处理:检测所述初步定位的水印区域的水印灰度值,以所述水印灰度值作为阈值,进行阈值分割,得到第二二值图像;并对得到的第二二值图像进行形态学膨胀,得到第二路中间结果,即第二路水印模板。
20.以上采用两路水印检测处理法是基于如下设计考虑:第一路水印检测处理是根据边缘求解水印区域,这是考虑到水印与背景差异明显,水印的边缘很容易找到,所以先根据边缘用第一路水印检测处理求得水印区域,但是这个过程中背景可能会对水印存在一定的干扰,所以接下来结合了第二路水印检测处理;第二路水印检测处理是根据水印灰度值找水印区域,这是基于水印灰度值是一直的,但是背景区域个别灰度值会被误认为是水印,这样单独基于水印灰度值利用第二路水印检测处理效果也不是那么好。因此,本发明考虑结合边缘求解和水印灰度值求解两种检测方式,来增加检测水印置信度,使检测出的水印区域更加精准。
21.在两路水印检测处理法中均加入了形态学膨胀的处理,其中对第一路边缘图像进行形态学膨胀的原因是水印具有一定的宽度,膨胀可以填充边缘线条间的镂空,也可以将漏掉的边缘尽可能包含进来,遵循宁可误将背景当作水印不可将水印误当成背景的原则。对第二路的分割结果进行膨胀的原因也遵循了宁可误将背景当作水印不可将水印误当成背景的原则,尽可能少的将水印当成背景。
22.进一步地,所述第一路中间结果的水印区域为1或255,背景区域为0。
23.第一路水印检测处理进行自适应分割和形态学膨胀之后选择二值图像的中心点为锚点,按照初步定位的水印区域的长宽等比例缩小3倍画一个小的矩形框,同样在第二路的中间结果的二值图像上的相同位置画相同大小的小矩形框。对这两个小矩形框求两次交集:两次求交中第二路的中间结果的小矩形区域的像素值保持不变,第一路的小矩形区域的像素值在第一次求交的时候保持不变,第二次求交的时候将像素值取反。统计这两次交集之后像素值为1或255的像素个数,查看个数多的那次求交对应的第一路二值图像的小矩形区域的像素值是否取反,若取反则对第一路的形态学膨胀之后的二值图像像素值进行求反得到第一路的中间结果,若没有取反则直接将第一路形态学膨胀之后的二值图像作为第一路中间结果。
24.第二路水印检测处理在求取水印的灰度值之后,以该灰度值为阈值进行阈值分割。求取初步定位的水印区域图像灰度值的平均值,将其与水印灰度值进行比较,选择对应的阈值分割的参数保证分割后水印的值为1或255,背景的值为0。
25.进一步地,所述水印灰度值的检测采用滑窗方式进行确定。
26.进一步地,该方法水印去除后,还包括图像后处理,采用alpha融合法将水印去除前初步定位的水印区域和水印去除后相对应的水印区域进行alpha融合,并叠加到背景区域的图像上。其中,水印去除后相对应的水印区域是水印去除后与水印去除前初步定位的水印区域完全一致的区域。
27.进一步地,所述alpha融合法进行融合的权重采用高斯系数。
28.第二方面,本发明又提供了一种随背景变化的灰度视频文字类水印去除系统,该系统支持所述的一种随背景变化的灰度视频文字类水印去除方法;该系统包括获取单元、预处理单元、水印检测单元、水印去除单元和图像后处理单元;
29.所述获取单元,用于获取待处理灰度视频;
30.所述预处理单元,用于对待处理灰度视频中的原始图像进行预处理,得到初步定位的水印区域;
31.所述水印检测单元,用于根据所述初步定位的水印区域,采用两路水印检测处理法对所述初步定位的水印区域进行水印检测处理(即精确定位),得到两路中间结果;对所述两路中间结果进行运算(求交集),生成水印模板;提取所述水印模板中相同像素值个数最多的像素作为精确定位的水印区域,同时得到背景区域;其中,精确定位的水印区域以外的区域即是背景区域;
32.所述水印去除单元,用于使用所述背景区域对所述精确定位的水印区域进行填充,得到水印去除后的图像;
33.所述图像后处理单元,用于采用alpha融合法将水印去除前初步定位的水印区域和水印去除后相对应的水印区域进行alpha融合,并叠加到背景区域的图像上。
34.进一步地,所述水印检测单元包括第一路水印检测处理子单元、第二路水印检测处理子单元和计算子单元;
35.所述第一路水印检测处理子单元,用于对所述初步定位的水印区域采用sobel边缘检测法分别对水平和垂直方向进行边缘检测,得到水平边缘和垂直边缘;并将水平边缘和垂直边缘叠加,得到叠加后的边缘图像;对叠加后的边缘图像进行自适应阈值分割,得到第一二值图像;对得到的第一二值图像进行形态学膨胀得到膨胀结果,对膨胀的结果与第二路中间结果做运算,得到第一路中间结果,即第一路水印模板;
36.所述第二路水印检测处理子单元,用于检测所述初步定位的水印区域的水印灰度值,以所述水印灰度值作为阈值,进行阈值分割,得到第二二值图像;并对得到的第二二值图像进行形态学膨胀,得到第二路中间结果,即第二路水印模板;
37.所述计算子单元,用于对所述第一路中间结果和第二路中间结果进行运算(求交集),生成水印模板。
38.本发明与现有技术相比,具有如下的优点和有益效果:
39.1、本发明流程合理,解决随背景变化的灰度视频文字类水印去除问题,针对灰度成像的视频实时去除特定位置的水印,并克服水印会根据图像的明暗变化而发生的变化;另外,可以批量获得除去水印的干净数据。
40.2、在很多领域通常会用到灰度成像,人工智能技术在这些领域的使用越来越频繁,数据收集和标记对人工智能至关重要,本发明可以为数据标记和训练提供干净的数据。
附图说明
41.此处所说明的附图用来提供对本发明实施例的进一步理解,构成本技术的一部分,并不构成对本发明实施例的限定。在附图中:
42.图1为本发明一种随背景变化的灰度视频文字类水印去除方法流程图。
43.图2为本发明一种随背景变化的灰度视频文字类水印去除方法中两路水印检测流程图。
44.图3为本发明水印灰度值检测的滑窗示意图。
45.图4为本发明alpha融合法融合模板示意图。
46.图5为本发明alpha融合法融合模板叠加到图像上的示意图。
47.图6为本发明滑窗像素值个数统计示意图。
48.图7为本发明一种随背景变化的灰度视频文字类水印去除系统结构示意图。
具体实施方式
49.为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
50.实施例1
51.如图1至图6所示,本发明一种随背景变化的灰度视频文字类水印去除方法,如图1所示,该方法包括:
52.获取待处理灰度视频,对待处理灰度视频中的原始图像进行预处理,得到初步定位的水印区域;
53.根据所述初步定位的水印区域,采用两路水印检测处理法对所述初步定位的水印区域进行水印检测处理(即精确定位),得到两路中间结果;对所述两路中间结果进行运算(求交集),生成水印模板;提取所述水印模板中相同像素值个数最多的像素作为精确定位的水印区域,同时得到背景区域;其中,精确定位的水印区域以外的区域即是背景区域;
54.使用所述背景区域对所述精确定位的水印区域进行填充,得到水印去除后的图像。
55.具体地,所述的对所述待处理水印图像进行预处理包括水印区域初步定位和噪声滤除处理;水印区域初步定位主要作用是减少计算量,其次可以减少背景对阈值分割的干扰。噪声滤除是为了减少对边缘检测的干扰。
56.其中,所述水印区域初步定位是对水印进行初步定位,前提条件是该水印出现在画面的固定区域,比如中心,边角等位置。
57.具体地,水印检测是本方法的核心之一。如图2所示,输入预处理之后的初步定位的水印区域,然后采用两路水印检测处理法对所述初步定位的水印区域进行水印检测处理。采用两路水印检测处理法是基于如下设计考虑:第一路水印检测处理是根据边缘求解水印区域,这是考虑到水印与背景差异明显,水印的边缘很容易找到,所以先根据边缘用第一路水印检测处理求得水印区域,但是这个过程中背景可能会对水印存在一定的干扰,所以接下来结合了第二路水印检测处理;第二路水印检测处理是根据水印灰度值找水印区域,这是基于水印灰度值是一直的,但是背景区域个别灰度值会被误认为是水印,这样单独基于水印灰度值利用第二路水印检测处理效果也不是那么好。因此,本发明考虑结合边缘求解和水印灰度值求解两种检测方式,来增加检测水印置信度,使检测出的水印区域更加精准。
58.具体地:
59.第一路水印检测处理:对所述初步定位的水印区域采用sobel边缘检测法分别对水平和垂直方向进行边缘检测,得到水平边缘和垂直边缘;并将水平边缘和垂直边缘叠加,得到叠加后的边缘图像;对叠加后的边缘图像进行自适应阈值分割,得到第一二值图像;对得到的第一二值图像进行形态学膨胀得到膨胀结果,对膨胀的结果与第二路中间结果做运算,得到第一路中间结果,即第一路水印模板;
60.第二路水印检测处理:检测所述初步定位的水印区域的水印灰度值,以所述水印灰度值作为阈值,进行阈值分割,得到第二二值图像;并对得到的第二二值图像进行形态学膨胀,得到第二路中间结果,即第二路水印模板。具体实施:首先检测水印灰度值,将初步定位的水印区域的中心位置设置为锚点,如图3所示的虚线框的中心点。以锚点为中心设置一个包含水印的小滑窗,该滑窗的高度应不高于水印的高度,来确保检测出的边缘最大程度不包含背景中的物体边缘。对以锚点为中心的滑窗区域进行sobel边缘检测,检测水平和垂直边缘并叠加,然后以滑窗的宽度的步长分别向左和右滑动一个滑窗,并用相同的方法求取边缘,得到3个边缘模板。对3个边缘模板进行形态学闭操作,缝合边缘之间的小缝隙和小的断裂,然后分别统计边缘覆盖下原图的灰度值,并将某个灰度值对应的像素个数统计为图6所示,然后将个数num从大到小排序。三个列表表示为l1,l2,l3。对应的列表的最多像素值的个数和像素值对表示为(nummax1,vmax1),(nummax2,vmax 2),(nummax3,vmax 3),nummaxi表示列表li中相同像素值最多的像素个数,对应的像素值为vmax i。如果vmax 1、vmax 2、vmax 3中大于等于两个数字相同,则认为该值为水印的像素值。如果相同的值小于两个,也就是vmax 1、vmax 2、vmax 3都不相同,则继续往左和往右滑动滑块,统计滑块对应的边缘覆盖下的各像素值个数,直到生成的列表li中nummaxi对应的像素值vmax i相同的个数大于等于3个,则取个数最多的列表对应的相同像素值为边缘的灰度值。比如现在有5个列表,有3个列表中的nummax对应的vmax都相同,则认为像素值vmax为水印的像素值。如果生成的列表中最多像素对应的像素值相同的列表个数有两个或两个以上相同,比如最多像素个数nummax对应的像素值为v1的列表有3个,最多像素个数nummax对应的像素值为v2的列表也有3个,则继续滑动滑块直到出现唯一的最多的满足要求的列表个数。从实践上看,基本上使用三个滑窗就可以鲁棒确定水印灰度值。
61.其中,所述第一路中间结果的水印区域为1或255,背景区域为0。
62.在上述处理的基础上,将两路得到的中间结果(第一路中间结果、第二路中间结果)进行求交集的运算,交集则为进一步缩小的水印轮廓,即水印模板。
63.因为水印跟随背景在变化,所以水印跟背景是有明显的差异的,因此第一路水印检测处理可以将水印的边缘检测出来,同时也会检测出背景的物体边缘。通过自适应阈值分割可以降低背景边缘的干扰,因为水印的边缘梯度很多时候比背景都要大。第二路水印检测处理进行阈值分割,其原理是类间方差最大化,这里分为水印和背景两类。在预处理阶段对水印进行了初步的定位,将背景区域缩小到水印的周围,可以很大程度上避免大面积的背景跟水印属于同一类从而使得水印分割失败。将两路的结果求交集,可去掉大部分背景在边缘和类间方差上的干扰,同时增加求得的水印的鲁棒性。
64.具体地,所述的使用所述背景区域对所述精确定位的水印区域进行填充,即进行水印去除;这是对求交的之后的水印模板进行膨胀,然后使用opencv自带的inpaint函数结合膨胀之后的水印模板进行水印去除,原理是将背景区域的像素填充到水印区域。这里对水印模板进行膨胀的思想是尽可能减少遗漏边缘的情况,即使误将边缘周围的背景加入到边缘里来,也可以通过下一步背景填充来弥补。
65.为了进一步的对本实施例进行说明,该方法水印去除后,还包括图像后处理,采用alpha融合法将水印去除前初步定位的水印区域和水印去除后相对应的水印区域进行alpha融合,并叠加到背景区域的图像上。其中,水印去除后相对应的水印区域是水印去除
后与水印去除前初步定位的水印区域完全一致的区域。这是考虑到对水印区域进行水印去除之后可能会导致副作用:背景区域的会有一些地方被误检测为水印区域,从而在进行填充之后会导致该区域跟背景出现割裂感。图像后处理使用alpha融合,将水印去除前初步定位的水印区域和水印去除后相对应的水印区域进行alpha融合,融合的权重采用高斯系数,alpha融合模板如图4所示,alpha融合模板叠加到图像上的示意图如图5所示。
66.工作原理是:现有的传统水印去除技术并不适应于随背景变化的灰度视频文字类水印去除,无法解决针对灰度成像的视频实时去除特定位置的水印;而基于机器学习的算法大多要用到训练数据。因此,本发明设计了一种随背景变化的灰度视频文字类水印去除方法,包括首先,获取待处理水印图像,并对所述待处理水印图像进行预处理,得到初步定位的水印区域;其中图像预处理,包含水印区域初步定位以及噪声滤除;水印区域初步定位主要作用是减少计算量,其次可以减少背景对阈值分割的干扰;噪声滤除是为了减少对边缘检测的干扰。其次,在初步定位的水印区域内对水印进行精确定位,生成水印模板;然后,根据水印模板对水印区域进行填充,去除水印;最后,进行图像后处理,改善水印去除后水印区域边界处出现的割裂感。
67.本发明流程合理,解决随背景变化的灰度视频文字类水印去除问题,针对灰度成像的视频实时去除特定位置的水印,并克服水印会根据图像的明暗变化而发生的变化;另外,可以批量获得除去水印的干净数据。
68.在很多领域通常会用到灰度成像,人工智能技术在这些领域的使用越来越频繁,数据收集和标记对人工智能至关重要,本发明可以为数据标记和训练提供干净的数据。
69.实施例2
70.如图7所示,本实施例与实施例1的区别在于,本实施例提供了一种随背景变化的灰度视频文字类水印去除系统,该系统支持实施例1所述的一种随背景变化的灰度视频文字类水印去除方法;该系统包括获取单元、预处理单元、水印检测单元、水印去除单元和图像后处理单元;
71.所述获取单元,用于获取待处理灰度视频;
72.所述预处理单元,用于对待处理灰度视频中的原始图像进行预处理,得到初步定位的水印区域;
73.所述水印检测单元,用于根据所述初步定位的水印区域,采用两路水印检测处理法对所述初步定位的水印区域进行水印检测处理(即精确定位),得到两路中间结果;对所述两路中间结果进行运算(求交集),生成水印模板;提取所述水印模板中相同像素值个数最多的像素作为精确定位的水印区域,同时得到背景区域;其中,精确定位的水印区域以外的区域即是背景区域;
74.所述水印去除单元,用于使用所述背景区域对所述精确定位的水印区域进行填充,得到水印去除后的图像;
75.所述图像后处理单元,用于采用alpha融合法将水印去除前初步定位的水印区域和水印去除后相对应的水印区域进行alpha融合,并叠加到背景区域的图像上。
76.本实施例中,所述水印检测单元包括第一路水印检测处理子单元、第二路水印检测处理子单元和计算子单元;
77.所述第一路水印检测处理子单元,用于对所述初步定位的水印区域采用sobel边
缘检测法分别对水平和垂直方向进行边缘检测,得到水平边缘和垂直边缘;并将水平边缘和垂直边缘叠加,得到叠加后的边缘图像;对叠加后的边缘图像进行自适应阈值分割,得到第一二值图像;对得到的第一二值图像进行形态学膨胀得到膨胀结果,对膨胀的结果与第二路中间结果做运算,得到第一路中间结果,即第一路水印模板;
78.所述第二路水印检测处理子单元,用于检测所述初步定位的水印区域的水印灰度值,以所述水印灰度值作为阈值,进行阈值分割,得到第二二值图像;并对得到的第二二值图像进行形态学膨胀,得到第二路中间结果,即第二路水印模板;
79.所述计算子单元,用于对所述第一路中间结果和第二路中间结果进行运算(求交集),生成水印模板。
80.其他各个单元的执行过程按照实施例1所述的一种随背景变化的灰度视频文字类水印去除方法流程步骤执行即可,此实施例中不再一一赘述。
81.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
82.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
83.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
84.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
85.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。