CN111445454A - 一种图像真伪鉴别方法及其在证照识别中的应用 - Google Patents
一种图像真伪鉴别方法及其在证照识别中的应用 Download PDFInfo
- Publication number
- CN111445454A CN111445454A CN202010222849.9A CN202010222849A CN111445454A CN 111445454 A CN111445454 A CN 111445454A CN 202010222849 A CN202010222849 A CN 202010222849A CN 111445454 A CN111445454 A CN 111445454A
- Authority
- CN
- China
- Prior art keywords
- image
- tampered
- rgb
- node
- value
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012545 processing Methods 0.000 claims abstract description 11
- 238000012549 training Methods 0.000 claims description 24
- 230000004927 fusion Effects 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 15
- 230000004913 activation Effects 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 4
- 238000004140 cleaning Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims description 2
- 238000012795 verification Methods 0.000 claims 1
- 238000001514 detection method Methods 0.000 abstract description 25
- 238000013527 convolutional neural network Methods 0.000 abstract description 11
- 238000002474 experimental method Methods 0.000 abstract description 9
- 230000000694 effects Effects 0.000 abstract description 8
- 238000011161 development Methods 0.000 abstract description 3
- 230000011218 segmentation Effects 0.000 description 18
- 238000007906 compression Methods 0.000 description 16
- 230000006835 compression Effects 0.000 description 16
- 230000006870 function Effects 0.000 description 16
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000001914 filtration Methods 0.000 description 8
- 238000000605 extraction Methods 0.000 description 7
- 238000013135 deep learning Methods 0.000 description 5
- 230000000903 blocking effect Effects 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 235000013361 beverage Nutrition 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 241000272525 Anas platyrhynchos Species 0.000 description 1
- 241000282472 Canis lupus familiaris Species 0.000 description 1
- 235000002566 Capsicum Nutrition 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 239000006002 Pepper Substances 0.000 description 1
- 235000016761 Piper aduncum Nutrition 0.000 description 1
- 235000017804 Piper guineense Nutrition 0.000 description 1
- 244000203593 Piper nigrum Species 0.000 description 1
- 235000008184 Piper nigrum Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007797 corrosion Effects 0.000 description 1
- 238000005260 corrosion Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 150000003839 salts Chemical class 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
- G06T7/001—Industrial image inspection using an image reference approach
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
一种图像真伪鉴别方法及其在证照识别中的应用,属于数字图像处理领域。随着数字图像编辑软件的开发与应用,不法分子可以对身份证、营业执照、经营许可证等图像进行违规编辑,并造成一种以假乱真的效果。因此,图像取证的需求变得日益迫切起来,现有的模型大多只能检测出图像是否经过篡改,而不能很好地分割出篡改区域。本文提出了一种基于卷积神经网络的图像篡改检测方法,通过融合篡改图像的多种特征,可以有效地分割图像中的篡改区域。我们在多个数据集上做了实验,实验结果进一步表明了我们工作的有效性。
Description
技术领域
本发明提供一种基于深度学习的图片真伪鉴别方法,属于数字图像处理领域。
背景技术
随着科学技术的发展,数字图像在我们的生活中得到了广泛的应用,甚至在法庭上,图像和视频等也是很重要的证据来源。然而,数字图像在方便了用户的同时,也给了一些不法分子以可乘之机。在未经授权的情况下,不法分子对图像内容进行非法操作,如违规编辑、合成虚假图像等,从而造成篡改图像在人们社会生活中泛滥成灾。数字图像最常见的篡改方式主要有以下三种:图像拼接、图像复制粘贴、局部图像去除。如图1所示,图像拼接是指图像中添加了来源于其他图像的物体,如图1中水面上的飞鸟;图像复制粘贴则是把图像中的某个物体复制粘贴一次或多次并添加到原图像中,如图1帐篷上的花纹;局部图像去除则是移除图像本身的部分内容,如图1中被移除的白色鸭子。不法分子为了掩盖图像的篡改痕迹,还会对篡改后的图像进行高斯平滑或中值滤波等操作,使篡改区域更好的融入到整幅图像中,让人眼辨真假。数字图像的篡改是一种违法行为,不法分子甚至会利用篡改图像来影响国家政治,于是图像取证领域应运而生了。
数字图像取证的出发点是通过提取数字图像周期中留下的固有痕迹进行分析和理解数字图像的操作历史。早在十多年前,国内外学者就开始了关于这个领域的研究,传统的图像取证算法主要利用的是图像在不同域中的统计特征,例如:DCT(Discrete CosineTransform),SVD(Singular Value Decomposition),PCA(Principal ComponentAnalysis),DWT(Discrete Wavelet Transformation)等。还有的学者通过提取图像被多次JPEG压缩后的痕迹来检测图像是否被篡改,但这个方法仅限于检测JPEG格式的图像。近年来,随着深度学习在目标检测、场景检测、语义分割等领域大放异彩,诸如深度信念网络、深度自动编码器、卷积神经网络等都证明了其在特征提取过程中的有效性。
2014年前后,国内外学者陆续提出了一些基于卷积神经网络的图像取证算法。不同于传统的图像取证算法,深度学习算法不需要手动提取特征,它将特征提取和特征学习整合到了一起,通过一个卷积神经网络架构,直接输出我们想要的结果。文献[Chen J,KangX,Liu Y,et al.Median filtering forensics based on convolutional neuralnetworks[J].IEEE Signal Processing Letters,2015,22(11):1849-1853.]的作者根据中值滤波的特征提出了新型中值滤波卷积核,网络由卷积层和全连接层构成,可以有效识别出经过中值滤波后的篡改图像,并且对于被多次JPEG压缩后的篡改图像也有较高的识别率。文献[Amerini I,Uricchio T,Ballan L,et al.Localization of JPEG doublecompression through multi-domain convolutional neural networks[C]//2017IEEEConference on computer vision and pattern recognition workshops(CVPRW).IEEE,2017:1865-1871.]中使用卷积神经网络来检测二次JPEG压缩后的篡改图像,篡改图像有9种类别,分别采用不用的质量因子进行压缩,算法的特色是融合了图像的DCT(DiscreteCosine Transform)特征和RGB数值特征,当压缩因子为95时,模型有98%的识别准确率。文献[Choi H Y,Jang H U,Kim D,et al.Detecting composite image manipulation basedon deep neural networks[C]//2017International Conference on Systems,Signalsand Image Processing(IWSSIP).IEEE,2017:1-5.]中使用深度学习开展了关于多种图片篡改类型的研究,通过一个卷积神经网络可以识别7种不同篡改类型的图像。遗憾的是,以上提到这些图像取证算法仅能检测出图像是否被篡改,而不能分割出图像中的篡改区域。
图像篡改区域的分割和计算机视觉领域中的实例分割或是语义分割有很多相似之处,它们都是对图像进行像素分割,但不同的是,实例分割的依据主要是图像内容,例如ImageNet数据集中猫和狗的身体部位;然而对于图像篡改区域的分割,它依据的往往不是图像中的内容,而是图像中物体的边缘噪声或是图像在不同域中的统计差异。文献[BappyJ H,Roy-Chowdhury AK,Bunk J,et al.Exploiting spatial structure for localizingmanipulated image regions[C]//Proceedings of the IEEE internationalconference on computer vision.2017:4970-4979.]的作者认为篡改区域边界处存在着差异化特征(篡改后的区域边缘会更平滑一些),为了利用这种特征,该作者提出了CNN-LSTM(Convolutional neural network-Long Short-Term Memory Network)的混合模型来分割图像中的篡改区域。文献[Salloum R,Ren Y,Kuo C C J.Image splicinglocalization using a multi-task fully convolutional network(MFCN)[J].Journalof Visual Communication and Image Representation,2018,51:201-209.]的作者提出了多任务训练的方法,利用了篡改区域掩膜和篡改区域边界来训练网络,对输出做了边缘增强后的实验结果(F1_score)高出单任务训练7个百分点,充分地证明了篡改区域边缘特征的有效性。文献[Zhou P,Han X,Morariu V I,et al.Learning rich features forimage manipulation detection[C]//Proceedings of the IEEE Conference onComputer Vision and Pattern Recognition.2018:1053-1061.]的作者提出了一个双流的FasterRCNN网络,双流指的是RGB流和Noise流,RGB流的目的是从图像中提取诸如强对比度差异,非自然篡改边界等特征;Noise流则利用SRM(Steganalysis Rich Model)滤波器来提取图像中的噪声特征,最后通过双线性池化层来融合两个流的特征。由于特征的差异性,简单的把计算机视觉领域中热门的卷积神经网络框架迁移到图像取证领域并不能取得很好的效果,这其中主要的原因是因为图像取证领域的数据集较小,而且篡改的方式也比较多,导致用来训练的样本量不足。
本发明提出了一种新的卷积神经网络框架ISFD(Image splicing forgerydetection),可以有效地检测出经过图像拼接或复制粘贴篡改后的图像。网络使用了Mobilenetv2[Sandler M,Howard A,Zhu M,et al.Mobilenetv2:Inverted residuals andlinear bottlenecks[C]//Proceedings of the IEEE conference on computer visionand pattern recognition.2018:4510-4520.]来提取图像的RGB特征,再融合通过SRM(Steganalysis Rich Model)滤波器提取出来的图像的噪声特征,最后输出模型预测的篡改区域掩膜。因为篡改区域边界中存在着特有的纹理和噪声,所以我们采用滑动窗口的方式从篡改图像中获得128*128大小的图像块作为网络的输入。如果网络的输入为整张图像,图像就会被拉伸和变形到统一大小,导致篡改区域的边界特征被一定程度的破坏。特征融合把深层特征经过双线性插值后和浅层特征等进行多次融合,并且融合了图像的Noise特征。实验证明,融合了噪声特征后,模型分割的准确率得到了有效提升,在CASIA v1.0数据集中的F1_score提升了4个百分点。
发明内容
本发明旨在解决现有技术存在的问题,提供一种基于深度学习的图片篡改检测模型及方法。
本发明的技术方案:
一种基于深度学习的数字图像篡改检测方法,步骤如下:
步骤一、对数据集进行阈值处理后得到训练集;
步骤二、对训练集中的篡改图像进行分块,得到128*128大小的图像块;
步骤三、对图像块进行筛选和清洗,只保留包含篡改区域边界的图像块;
步骤四、对步骤三保留的图像块进行数据增强,并归一化到[0,1];
步骤五、使用Mobilenetv2来提取图像的RGB特征;
步骤六、保留图像的第2、4、7、11层的RGB特征;
步骤七、深层特征经过卷积和上采样操作后与浅层特征融合;
步骤八、使用4个SRM滤波器提取图像的Noise特征;
步骤九、对图像的RGB特征和Noise特征进行拼接;
步骤十、使用BatchNormalization对两种图像特征进行归一化;
步骤十一、经过最后的卷积操作及Sigmoid激活函数后得到结果;
步骤十二、模型在训练过程中的先使用交叉熵损失函数,再使用Focal loss。
所述步骤一中对数据集做了阈值处理,我们假设篡改图片为IT,背景图片为IB,ID为两张图片相应像素灰度值的绝对差值。公式如下:
ID=‖IT-IB‖
因为IT是基于背景图片IB篡改而生成的,所以IT和IB具有很大的相似度,除去IT中的篡改区域,剩下的其他区域像素的灰度值并没有大幅度的变化,所以我们可以设置一个阈值s=8,如果像素灰度值的绝对差值来得到图像的篡改区域掩膜,如果灰度值的绝对差值大于s,则该像素点为篡改区域,否则为真实区域。公式如下:
所述步骤二中模型接受输入为128×128的图像块,图像块是通过滑动窗口采用无重叠的滑动方式从篡改图像中获得的。
所述步骤三中对图像块进行了筛选和清洗,使用滑动窗口得到的图像块并不是都包含有篡改区域边界,据统计,约有68.4%的图像块是完全在篡改区域内部或是原始区域内部的,因为这些样本并不包含篡改边界,自然也不能供我们的模型训练使用。我们使用了一个阈值来筛选满足条件的样本,只保留图像块中的篡改区域面积超过图像总面积2%的样本。
所述步骤四中对图像块做了数据增强,去除了篡改区域面积占比小于2%的样本后,我们共得到16718个篡改图像块。因为样本的数量不是很多,所以我们做其做了水平翻转来进行数据增强,最后的总样本数为33436。我们使用其中90%的数据作为训练集,剩余10%的样本作为验证集,归一化的操作则是所有RGB系数除以255。
所述步骤五中的Mobilenetv2网络包括20个卷积层,我们分别采用了第2、4、7、11层的RGB特征,其中最大的RGB特征图大小为64*64*16,最小的为8*8*64,然后我们把这四层的RGB特征图送入特征融合层进行融合。
所述步骤七,对步骤六的四层图像RGB特征图的融合方式:浅层特征经过1×1和3×3的卷积后和上采样后的深层特征融合,融合的方式为对位相加,如此循环四次,得到最终的RGB特征。
所述步骤八,使用了四种SRM滤波器来提取图像的Noise特征,四种SRM滤波器的参数如下所示:
所述步骤十,使用了BatchNormalization的方法来进行归一化,BatchNormalization的公式如下:
其中,y为输出的节点值,x为输入节点的值,E[x]为该行向量节点的均值,Var[x]为该行向量节点的标准差,∈为防止分母为零而引入的极小量(可忽略),γ,β为待学习的参数。
所述步骤十一,使用了BatchNormalization后,图像的RGB特征和Noise特征被缩放到了相同的维度大小,经过最后一次卷积操作后输出的特征大小为128*128,使用Sigmoid激活函数后输出模型预测的图像篡改区域掩膜;Sigmoid激活函数的公式如下:
其中,S(t)为节点输出,e为自然常数,t为节点输入。
所述步骤十二,损失函数为交叉熵和Focal loss,计算公式如下:
其中,为交叉熵的节点输出,N为节点总数,为节点输出,y为对应节点的真实值(取值为1或0)。Lfl为Focal Loss的节点输出,y为对应节点的真实值(取值为1或0),为节点输出,α和γ为比例参数,a取值为0.6,γ的取值为2.0。
本发明的有益效果:随着数字图像编辑软件的开发与应用,不法分子可以对身份证、营业执照、经营许可证等图像进行违规编辑,并造成一种以假乱真的效果。因此,图像取证的需求变得日益迫切起来,现有的模型大多只能检测出图像是否经过篡改,而不能很好地分割出篡改区域。本文提出了一种基于卷积神经网络的图像篡改检测方法,通过融合篡改图像的多种特征,可以有效地分割图像中的篡改区域。我们在多个数据集上做了实验,实验结果进一步表明了我们工作的有效性。总结起来,我们的贡献包括以下几点:(1)提出了能分割出图像篡改区域的CNN框架ISFD(2)在模型中融合了图像的RGB特征和Noise特征,有效提升了分割的准确率(3)在三个图像篡改检测的数据集中验证了我们工作的有效性。
附图说明
图1为图像篡改的三种方式。其中,(a-1)、(b-1)、(c-1)为原图像,(a-2)为图像拼接后的篡改图像,(b-2)为图像复制粘贴后的篡改图像,(c-2)为局部图像去除后的篡改图像,(a-3)、(b-3)、(c-3)为图像的篡改区域掩膜。
图2为ISFD框架示意图。
图3为Mobilenet V2的两种卷积组合。其中,(a)为输入和输出的特征图大小相同的卷积组合,(b)为输入特征图大小为输出两倍的卷积组合。
图4为图像特征的融合方法。
图5为阈值处理后的图像的篡改区域掩膜。其中,(a-1)、(b-1)、(c-1)为篡改图像,(a-2)、(b-2)、(c-2)为阈值处理后的篡改区域掩膜。
图6为ISFD模型的测试结果1。其中,(a-1)、(b-1)、(c-1)、(d-1)、(e-1)、(f-1)为篡改图像块,(a-2)、(b-2)、(c-2)、(d-2)、(e-2)、(f-2)为篡改区域掩膜,(a-3)、(b-3)、(c-3)、(d-3)、(e-3)、(f-3)为ISFD模型的分割结果。
图7为ISFD模型的测试结果2。其中,(a)为原图像,(b)为篡改后的图像,(c)为ISFD模型的分割结果。
具体实施方式
下面将结合具体实施例对本发明的技术方案进行进一步的说明。
一、CNN框架(ISFD——Image splicing forgery detection)
ISFD的框架示意图如图2所示,网络接受的输入为128×128的图像块,图像块是通过滑动窗口的方式从篡改图像中获得的。在特征提取层中,我们采用了Mobilenetv2来提取RGB特征,Mobilenetv2是Google在2018年提出的一种卷积神经网络框架,它主要特点是模型中的参数少,网络运行的时间快。接下来,提取到的RGB特征和通过SRM(SteganalysisRich Model)滤波器得到的Noise特征被一起送入特征融合层,特征融合层中有两种融合方式,首先是RGB特征中的深层特征和浅层特征相融合,其次是RGB特征和Noise特征的融合,融合后得到的特征图和网络接受的输入大小是一致的。训练过程种我们采用了Focal loss作为损失函数来进行训练,最后输出模型预测的图像篡改区域掩膜。
二、输入层
通过对CASIA v2.0数据集进行筛选和清洗后,我们还对篡改图片进行了分块处理,图像的篡改区域边界中存在其特有的纹理和噪声,如果我们对篡改图像进行拉伸或缩放,篡改区域的边界特征就会有被一定程度的破坏。所以,我们采用图像分块的方法,通过使用128×128大小的滑动窗口来获得图像块,这样做有以下几点好处:1)有效地增加样本数量,原来的篡改图像仅有4465张,通过滑动窗口分块后,样本的数量扩大到了52895张;2)保留了篡改图片的原始信息,减小篡改区域边界特征的损坏;3)对网络的运行速度得到了提升,并且减小了网络运行所需要的内存。在使用滑动窗口获得图像块的过程中,我们使用了无重叠的滑动方式,假设篡改图像的大小为226×226,使用了滑动窗口后,我们可以得到4个图像块,它们对应于原图的区域分别为[1-128,1-128],[98-226,1-128],[1-128,98-226],[98-226,98-226],图像仅在边缘区域可能存在窗口重叠的情况,把图像块检测结果按序拼接后即为最终结果。
三、特征提取层
早在2017年,Google就提出了一种新的CNN架构MobileNets,不同于VGG16、ResNet、DesNet等卷积神经网络架构,MobileNets最大的特点在于对卷积核进行了分解,有效地减少了模型中的参数。分解过程如下:假设原来为DF×DF×M大小的特征图经过卷积层后大小变为DF×DF×N,一般情况下卷积核的大小为DK×DK×M×N,则一次卷积操作需要的计算量为DK×DK×M×N×DF×DF;MobileNets把DK×DK×M×N大小的卷积核拆成了DK×DK×1×M和1×1×M×N大小,也相当于把卷积操作从一次拆成了两次,尽管卷积操作的次数变多了,但它的计算量只有DK×DK×M×DF×DF+M×N×DF×DF,约为一般情况下卷积操作计算量的
Mobilenetv2中的卷积组合如图3所示,其中,(a)为输入和输出的特征图大小相同的卷积组合,(b)为输入特征图大小为输出两倍的卷积组合。它对Mobilenets做了以下几点改进:1)使用1×1的卷积核来增加特征图的维度再用1×1和3×3大小的卷积核来降低维度(这一点和ResNet正好相反,ResNet是先降维再升维);2)最后的激活函数从RELU变为线性激活函数(实验表明若最后的激活函数为RELU时,网络的特征提取能力下降了),这两点改进使得Mobilenetv2提取图像特征的能力得到了进一步的提升。
Mobilenetv2的整体框架如表1所示,Mobilenetv2由20个卷积层,特征提取层主要是从第二层到第十八层,考虑到网络接受的输入图像大小为128×128,所以我们放弃了最深层的特征,只提取了中间部分的图像特征。
表1 Mobilenet V2的网络架构
四、特征融合层
再得到了第2、4、7、11层的特征图后,我们对这四层的特征进行了融合,融合的方式如图4所示:浅层特征经过1×1和3×3的卷积后和上采样后的深层特征融合,融合的方式为对位相加,如此循环四次,得到最终的RGB特征。我们对特征融合层的有效性做了实验,实验证明,当我们不使用特征融合层,仅用深层特征上采样后输出预测结果时,网络将变得很难收敛,这很可能是因为模型在学习深层特征后会丢失了一些浅层特征所带有的位置信息。除了融合图像中的RGB特征,我们还融合了图像的Noise特征,我们使用了四种SRM滤波器来提取图像的Noise特征,它们的参数如下:
通过SRM滤波器得到Noise特征后,我们把Noise特征和RGB特征进行了拼接,因为这两种特征的维度大小不一致,我们使用了BatchNormalization的方法来进行归一化,BatchNormalization见公式(1)
其中,y为输出的节点值,x为输入节点的值,E[x]为该行向量节点的均值,Var[x]为该行向量节点的标准差,∈为防止分母为零而引入的极小量(可忽略),γ,β为待学习的参数。
使用了BatchNormalization后,图像的RGB特征和Noise特征被缩放到了相同的维度大小,经过最后一次卷积操作后输出的特征图大小为128*128*1,使用Sigmoid激活函数后输出模型预测的图像篡改区域掩膜。Sigmoid激活函数的公式如下:
其中,S(t)为节点输出,e为自然常数,t为节点输入。
关于图像的Noise特征是否能改善模型效果,我们也做了相关的对比实验,实验证明再融合了图像的Noise特征后,ISFD模型在CASIA v1.0数据集中的F1_score有4个百分点的提升。
五、损失函数和评价指标
损失函数在本文中我们采用的损失函数为交叉熵和Focal loss,计算公式如(3),(4)所示:
其中,为交叉熵的节点输出,N为节点总数,为节点输出,y为对应节点的真实值(取值为1或0)。Lfl为Focal Loss的节点输出,y为对应节点的真实值(取值为1或0),为节点输出,α和γ为比例参数,α取值为0.6,γ的取值为2.0。
评价指标我们的观测指标主要是F1-score值:
(1).precision rate=TP/(TP+FP)
(2).recall rate=TP/(TP+FN)
(3).accuracy=(TP+TN)/(TP+FP+TN+FN)
(4).F1-score=2*precision rate*recall rate/(precision rate+recallrate)
我们将实例分为正类(positive)或负类(negative)两类,其中True Positive(TP)表示模型做出了正确的正类判定,TP的数值表示正确的正类判定个数;同理,FalsePositive(FP)表示模型做出了错误的正类判定,FP的数值表示错误的正类判定个数;依次,TN的数值为正确的负类判定个数;FN的数值则为错误的负类判定个数。最后,我们通过F1-score来衡量不同算法的优劣性。
实施例1:
下面将介绍我们的模型训练过程,首先介绍对模型训练所使用的数据集CASIAv2.0的处理过程,再介绍训练过程中我们使用的超参数及具体步骤。
数据集的处理
深度学习在图像取证领域中的应用还不是很广泛,图像取证领域中还没有类似于ImageNet那样包含几百万张图片的数据集。图像取证领域中最大的数据集是CASIA v2.0[Dong J,Wang W,Tan T.Casia image tampering detection evaluation database[C]//2013IEEE China Summit and International Conference on Signal and InformationProcessing.IEEE,2013:422-426.],这个数据集由7491张原始图片和5123张篡改图片组成,数据集中图片的拍摄场景多样,物体种类丰富。CASIA v2.0中的篡改图片都是通过Adobe Photoshop CS3软件合成的,篡改的主要方式为图像拼接和图像复制粘贴,制作者在当时并没有保存图像的篡改区域掩膜,这对于图像篡改区域的分割造成了很大的困难。幸运的是,数据集中的篡改来源图片都被编码在了篡改图片的图片名中,所以我们可以使用一种简单有效的方法来得到图像的篡改区域掩膜。首先,我们假设篡改图片为IT,背景图片为IB,ID为两张图片相应像素灰度值的绝对差值。如公式(5)所示:
ID=‖IT-IB‖ (5)
因为IT是基于背景图片IB篡改而生成的,所以IT和IB具有很大的相似度,除去IT中的篡改区域,剩下的其他区域像素的灰度值并没有大幅度的变化,所以我们可以设置一个阈值s=8(见公式6),如果像素灰度值的绝对差值来得到图像的篡改区域掩膜,如果灰度值的绝对差值大于s,则该像素点为篡改区域,否则为真实区域。
通过上述方法得到的篡改区域掩膜还存在着以下三个问题,如图5所示:1)得到的大部分篡改区域掩膜存在噪点,类似于椒盐噪声,随机分布在图像各处;2)部分图像的篡改区域没有被识别出来;3)一些篡改图像是通过图像对称的方法得到的,这部分图像不适合用来当作训练样本。
关于问题1,我们对得到的所有掩膜进行了中值滤波、膨胀腐蚀等操作,这些操作可以去除掩膜中散乱的噪点,对于无法去除的噪点,我们进行了手动纠正;关于问题2,我们通过对照原始图像和篡改图像,对没有被识别出来的篡改区域进行了纠正,并删除了篡改边界模糊的样本;关于问题3,通过图像对称得到的篡改图像并没有很明显的篡改边界,而且这种篡改方式是能被人眼轻易识别出来的,所以,我们删除了这类篡改图像。最终,经过一系列的筛选后,用来进行训练的样本数仅有4465张。
实验细节
对CASIAv2.0数据集做了以上处理后,我们得到了总共52895个128*128的篡改图像块,但这些图像块还需要做进一步的筛选。前面,我们提到图像中的篡改区域边界存在其特有的纹理和噪声,但使用滑动窗口得到的图像块并不是都包含有篡改区域边界,据统计,约有31.6%的图像块是完全在篡改区域内部或是原始区域内部的,因为这些样本并不包含篡改边界,自然也不能供我们的模型训练使用。我们使用了一个阈值L来筛选满足条件的样本,若图像块中的篡改区域面积超过图像总面积的2%,我们认为该样本包含篡改边界,去除了篡改区域面积占比小于2%的样本后,我们共得到16718个篡改图像块。因为样本的数量不是很多,所以我们做其做了水平翻转来进行数据增强,最后的总样本数为33436。我们使用其中90%的数据作为训练集,剩余10%的样本作为验证集。
接下来介绍训练时使用的方法,因为我们直接调用Pytorch中已训练的Mobilenetv2网络,所以我们设置两种不同的学习率,特征提取层的学习率设为0.01,特征融合层的学习率则为0.03,然后都按每轮训练后乘以0.95的倍率衰减。训练的总轮数设为50,每轮训练使用的样本数为128,开始训练时使用的损失函数为交叉熵,当训练到第10轮左右,损失函数改为用Focal loss,学习率的大小统一设为0.001,再经过10轮的训练,损失值基本收敛,然后保存最终的模型。
实验结果
在这一节中,我们将对比我们提出的ISFD模型和其他方法在图像中篡改区域的分割效果,我们的模型简称为ISFD,其他的方法有:SFCN[Salloum R,Ren Y,Kuo C C J.Imagesplicing localization using a multi-task fully convolutional network(MFCN)[J].Journal of Visual Communication and Image Representation,2018,51:201-209.]、ADQ1[Lin Z,He J,Tang X,et al.Fast,automatic and fine-grained tamperedJPEG image detection via DCT coefficient analysis[J].Pattern Recognition,2009,42(11):2492-2501.]、ADQ2[Bianchi T,De Rosa A,Piva A.Improved DCTcoefficient analysis for forgery localization in JPEG images[C]//2011IEEEInternational Conference on Acoustics,Speech and Signal Processing(ICASSP).IEEE,2011:2444-2447.]、BLK[Li W,Yuan Y,Yu N.Passive detection of doctoredJPEG image via block artifact grid extraction[J].Signal Processing,2009,89(9):1821-1829.]、CFA1[Ferrara P,Bianchi T,De Rosa A,et al.Image forgerylocalization via fine-grained analysis of CFAartifacts[J].IEEE Transactionson Information Forensics and Security,2012,7(5):1566-1577.]、CFA2[Dirik AE,Memon N.Image tamper detection based on demosaicing artifacts[C]//2009 16thIEEE International Conference on Image Processing(ICIP).IEEE,2009:1497-1500.]、DCT[Ye S,Sun Q,Chang E C.Detecting digital image forgeries bymeasuring inconsistencies of blocking artifact[C]//2007IEEE InternationalConference on Multimedia and Expo.Ieee,2007:12-15.],分割效果的好坏根据F1-score的值来判断。我们测试使用的数据集有CASIA1、Columbia、NIST2016,这三个数据集都是在图像取证领域知名的数据集。CASIA1数据集总共包含1725张384×256大小的图片,其中共有925张篡改图片,图片的格式统一为.jpg,篡改的主要方式有图像变形、图像拼接、图像重采样。Columbia数据集较小,只有183张原始图像和180张篡改图像,图片的大小从757×568到1022×666不等,图片的格式为.tif。NIST2016数据集中的图像篡改方式有图像拼接、图像局部去除、图像伪造三种,图像的格式为.jpg,此外,制作者还对篡改区域边界做了平滑处理,使人眼不能轻易的识别出篡改区域,因此该数据集是比较具有挑战性的。以上提到的三个数据集,CASIA1的制作者并没有提供图像的篡改区域掩膜,我们使用前面提到的方法,通过对比背景图像和篡改图像的灰度值,使用相同的阈值s=8来得到篡改区域掩膜,但很多的篡改图像掩膜存在着噪点过多和篡改区域识别错误的问题,故舍弃了很多的样本,最终供我们测试使用的篡改图像仅有500张。Columbia和NIST2016则都提供了所有图像的篡改区域掩膜。下面,我们使用以上提到的8种算法在三个数据集中做了实验,它们在三个数据集中的实验结果(F1-score)如表2所示。
表2不同模型在三个数据集上的实验结果
从表2的实验数据来看,我们提出的ISFD模型对于图像中篡改区域的分割效果明显高于其它7种算法,在CASIA v1数据集中的F1_score达到了0.5789,比第二名SFCN还要高出10个百分点。但ISFD模型的分割精确度并不是很高,图6中展示了6幅图像的篡改区域分割结果,通过对分割结果和篡改区域掩膜进行对比,我们发现模型已经可以识别出大部分的篡改区域,模型的缺陷也很明显,它不能精准地识别出图像的篡改区域边界,这在语义分割领域中也是一个难题,尽管我们进行了模型融合,但在融合过程中模型也无法精准地学习到篡改区域的边界信息,关于这点,我们将在未来进行持续地改进。
ISFD模型在经过训练和微调后,也可以应用于其他的场景,线上配送的商家在美团或饿了么APP中注册上线时是需要提供营业执照和食品经营许可证的,其中饿了么和美团会审查他们上传的证照,但并没有进行证照的篡改区域识别,如果有一些不法分子或是违规商家对它们的营业执照、经营许可证等图像使用了Photoshop等工具进行了编辑,例如在经营范围中增加了自制饮品销售这一项,然后瞒过系统的审查以便在线上的商铺中出售自制的饮品,如果我们的审查系统不能准确的识别出这些篡改后的证照图片并对这些商家进行惩处,就会放任不法分子从中谋私利,所以,我们对ISFD模型进行了微调后,进行了简单的证照图像篡改识别,结果如图7所示。图7中(a)为原始图像,(b)为篡改图像,(b)对(a)中经营项目这一栏进行了篡改,从检测的结果来看,模型可以有效地识别出图像拼接后的篡改区域。可见,我们的模型对于这类图像篡改的识别具有较好的鲁棒性。
我们针对图像的篡改区域分割提出了新的算法模型,实验表明了我们提出的模型对于图像拼接后的篡改图像具有较好的识别效果,在三个测试数据集中的表现也优于其他的算法模型。ISFD模型的亮点主要是融合了图像的各层RGB特征及Noise特征,使篡改区域的分割效果有了很大的提升。但模型的缺陷在于不能很好的分割篡改区域的边界,而且我们的模型只能检测出较明显的篡改区域,对于图像中字体的修改等就不能很好的识别,所以我们的模型还有较大的提升空间。将来,我们将考虑把图像的DCT(Discrete CosineTransform),SVD(Singular Value Decomposition)等特征也融合到模型中,提升模型的识别效果。
Claims (10)
1.一种图像真伪鉴别方法,其特征在于,步骤如下:
步骤一、对数据集进行阈值处理后得到训练集;
步骤二、对训练集中的篡改图像进行分块,得到128*128大小的图像块;
步骤三、对图像块进行筛选和清洗,只保留包含篡改区域边界的图像块;
步骤四、对步骤三保留的图像块进行数据增强,并归一化到[0,1];
步骤五、使用Mobilenetv2来提取图像的RGB特征;
步骤六、保留图像的第2、4、7、11层的RGB特征;
步骤七、深层特征经过卷积和上采样操作后与浅层特征融合;
步骤八、使用4个SRM滤波器提取图像的Noise特征;
步骤九、对图像的RGB特征和Noise特征进行拼接;
步骤十、使用BatchNormalization对两种图像特征进行归一化;
步骤十一、经过最后的卷积操作及Sigmoid激活函数后得到结果;
步骤十二、模型在训练过程中的先使用交叉熵损失函数,再使用Focal loss。
3.根据权利要求1所述的一种图像真伪鉴别方法,其特征在于,所述步骤二中图像块是通过滑动窗口采用无重叠的滑动方式从篡改图像中获得的;所述步骤三中对图像块进行筛选具体是使用一个阈值来筛选满足条件的样本,只保留图像块中的篡改区域面积超过图像总面积2%的样本;所述步骤四中对图像块做了数据增强,是在步骤三保留数据的基础上,使用其中90%的数据作为训练集,剩余10%的样本作为验证集,归一化的操作则是所有RGB系数除以255。
4.根据权利要求1所述的一种图像真伪鉴别方法,其特征在于,所述步骤五中的Mobilenetv2网络包括20个卷积层,采用第2、4、7、11层的RGB特征,其中最大的RGB特征图大小为64*64*16,最小的为8*8*64,然后把这四层的RGB特征图送入特征融合层进行融合。
5.根据权利要求1所述的一种图像真伪鉴别方法,其特征在于,所述步骤七,对步骤六的四层图像RGB特征图的融合方式:浅层特征经过1×1和3×3的卷积后和上采样后的深层特征融合,融合的方式为对位相加,如此循环四次,得到最终的RGB特征。
10.权利要求1-9所述的一种图像真伪鉴别方法的应用,其特征在于,所述的图像真伪鉴别方法应用于证照识别中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010222849.9A CN111445454B (zh) | 2020-03-26 | 2020-03-26 | 一种图像真伪鉴别方法及其在证照识别中的应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010222849.9A CN111445454B (zh) | 2020-03-26 | 2020-03-26 | 一种图像真伪鉴别方法及其在证照识别中的应用 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111445454A true CN111445454A (zh) | 2020-07-24 |
CN111445454B CN111445454B (zh) | 2023-05-05 |
Family
ID=71649120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010222849.9A Active CN111445454B (zh) | 2020-03-26 | 2020-03-26 | 一种图像真伪鉴别方法及其在证照识别中的应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111445454B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112419269A (zh) * | 2020-11-23 | 2021-02-26 | 成都圭目机器人有限公司 | 一种提高道面病害分割效果的改进型Focal Loss函数的构建方法及应用 |
CN112802140A (zh) * | 2021-03-03 | 2021-05-14 | 中天恒星(上海)科技有限公司 | 防止和识别图像篡改的图像编码系统 |
CN112801960A (zh) * | 2021-01-18 | 2021-05-14 | 网易(杭州)网络有限公司 | 图像处理方法及装置、存储介质、电子设备 |
CN113436287A (zh) * | 2021-07-05 | 2021-09-24 | 吉林大学 | 一种基于lstm网络与编解码网络的篡改图像盲取证方法 |
CN113537110A (zh) * | 2021-07-26 | 2021-10-22 | 北京计算机技术及应用研究所 | 一种融合帧内帧间差异的虚假视频检测方法 |
CN114677670A (zh) * | 2022-03-30 | 2022-06-28 | 浙江康旭科技有限公司 | 一种身份证篡改自动识别与定位的方法 |
WO2022205063A1 (en) * | 2021-03-31 | 2022-10-06 | Paypal, Inc. | Image forgery detection via headpose estimation |
CN115346037A (zh) * | 2022-10-19 | 2022-11-15 | 北京航空航天大学 | 一种图像篡改检测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014010736A (ja) * | 2012-07-02 | 2014-01-20 | Hiroshima Univ | 画像改竄検出装置、方法、およびプログラム |
CN110349136A (zh) * | 2019-06-28 | 2019-10-18 | 厦门大学 | 一种基于深度学习的篡改图像检测方法 |
CN110414670A (zh) * | 2019-07-03 | 2019-11-05 | 南京信息工程大学 | 一种基于全卷积神经网络的图像拼接篡改定位方法 |
CN110852316A (zh) * | 2019-11-07 | 2020-02-28 | 中山大学 | 一种采用密集结构卷积网络的图像篡改检测和定位方法 |
-
2020
- 2020-03-26 CN CN202010222849.9A patent/CN111445454B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014010736A (ja) * | 2012-07-02 | 2014-01-20 | Hiroshima Univ | 画像改竄検出装置、方法、およびプログラム |
CN110349136A (zh) * | 2019-06-28 | 2019-10-18 | 厦门大学 | 一种基于深度学习的篡改图像检测方法 |
CN110414670A (zh) * | 2019-07-03 | 2019-11-05 | 南京信息工程大学 | 一种基于全卷积神经网络的图像拼接篡改定位方法 |
CN110852316A (zh) * | 2019-11-07 | 2020-02-28 | 中山大学 | 一种采用密集结构卷积网络的图像篡改检测和定位方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112419269B (zh) * | 2020-11-23 | 2023-05-26 | 成都圭目机器人有限公司 | 一种道面病害分割的方法 |
CN112419269A (zh) * | 2020-11-23 | 2021-02-26 | 成都圭目机器人有限公司 | 一种提高道面病害分割效果的改进型Focal Loss函数的构建方法及应用 |
CN112801960A (zh) * | 2021-01-18 | 2021-05-14 | 网易(杭州)网络有限公司 | 图像处理方法及装置、存储介质、电子设备 |
CN112801960B (zh) * | 2021-01-18 | 2024-04-09 | 杭州网易智企科技有限公司 | 图像处理方法及装置、存储介质、电子设备 |
CN112802140A (zh) * | 2021-03-03 | 2021-05-14 | 中天恒星(上海)科技有限公司 | 防止和识别图像篡改的图像编码系统 |
WO2022205063A1 (en) * | 2021-03-31 | 2022-10-06 | Paypal, Inc. | Image forgery detection via headpose estimation |
CN113436287A (zh) * | 2021-07-05 | 2021-09-24 | 吉林大学 | 一种基于lstm网络与编解码网络的篡改图像盲取证方法 |
CN113436287B (zh) * | 2021-07-05 | 2022-06-24 | 吉林大学 | 一种基于lstm网络与编解码网络的篡改图像盲取证方法 |
CN113537110A (zh) * | 2021-07-26 | 2021-10-22 | 北京计算机技术及应用研究所 | 一种融合帧内帧间差异的虚假视频检测方法 |
CN113537110B (zh) * | 2021-07-26 | 2024-04-26 | 北京计算机技术及应用研究所 | 一种融合帧内帧间差异的虚假视频检测方法 |
CN114677670A (zh) * | 2022-03-30 | 2022-06-28 | 浙江康旭科技有限公司 | 一种身份证篡改自动识别与定位的方法 |
CN114677670B (zh) * | 2022-03-30 | 2024-04-26 | 康旭科技有限公司 | 一种身份证篡改自动识别与定位的方法 |
CN115346037B (zh) * | 2022-10-19 | 2023-02-03 | 北京航空航天大学 | 一种图像篡改检测方法 |
CN115346037A (zh) * | 2022-10-19 | 2022-11-15 | 北京航空航天大学 | 一种图像篡改检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111445454B (zh) | 2023-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111445454A (zh) | 一种图像真伪鉴别方法及其在证照识别中的应用 | |
Zheng et al. | A survey on image tampering and its detection in real-world photos | |
Park et al. | Double JPEG detection in mixed JPEG quality factors using deep convolutional neural network | |
Basilio et al. | Explicit image detection using YCbCr space color model as skin detection | |
CN112069891B (zh) | 一种基于光照特征的深度伪造人脸鉴别方法 | |
CN111212291A (zh) | 基于dfl-cnn网络的视频帧内对象移除篡改检测方法 | |
Liu et al. | Overview of image inpainting and forensic technology | |
CN109034230A (zh) | 一种基于深度学习的单幅图像相机溯源方法 | |
CN111709930A (zh) | 基于模式噪声的图片出处与窜改认定方法 | |
Qiao et al. | Csc-net: Cross-color spatial co-occurrence matrix network for detecting synthesized fake images | |
Zhao et al. | Source camera identification based on coupling coding and adaptive filter | |
Li et al. | Distinguishing computer graphics from photographic images using a multiresolution approach based on local binary patterns | |
CN111178204B (zh) | 一种视频数据编辑识别方法、装置、智能终端及存储介质 | |
Ananthi et al. | A secure model on Advanced Fake Image-Feature Network (AFIFN) based on deep learning for image forgery detection | |
Sri et al. | Deep neural networks based error level analysis for lossless image compression based forgery detection | |
Agarwal et al. | Forensic analysis of colorized grayscale images using local binary pattern | |
Rosli et al. | Comparison Multi Transfer Learning Models for Deep Fake Image Recognizer | |
Sabitha et al. | Enhanced model for fake image detection (EMFID) using convolutional neural networks with histogram and wavelet based feature extractions | |
Azarian-Pour et al. | An automatic jpeg ghost detection approach for digital image forensics | |
Peterson | Forensic analysis of digital image tampering | |
VidalMata et al. | On the effectiveness of image manipulation detection in the age of social media | |
Jain et al. | An enhanced statistical approach for median filtering detection using difference image | |
Sahib et al. | Deep learning for image forgery classification based on modified Xception net and dense net | |
Abrahim et al. | Image Splicing Forgery Detection Scheme Using New Local Binary Pattern Varient | |
Salehi et al. | Discriminating original region from duplicated one in copy-move forgery |
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 |