图像溯源,图血缘关系总结

1.引言

时值新冠肺炎疫情关键时期,大家一定要少出门,勤通风,多洗手,注意个人卫生,出门时一定要戴好口罩。让我们众志成城,打赢这场疫情攻坚战!

在这个特殊时期,有不法分子试图通过造谣来混淆公众视听,引导舆论走向,大家一定要擦亮双眼,理性客观的看待事情。其中,最常见的造谣手段就是p图。所谓“开局一张图,内容全靠编”。举个例子,前段时间不法分子造谣周杰伦乘坐隔离舱在福州出席活动,一时间引来不明真相的吃瓜群众一顿谩骂。而事实上,周杰伦当时在澳洲的娘家准备过新年。

这样的情况在国外也是数见不鲜。有证据表明,很多不法分子在16年美国总统大选期间,将p过的图在推特上传播,来影响大选结果,左右民众舆论走向。

因此,检测图像是否被篡改并找出其原图,成为国内外研究的一个热门话题。该课题被命名为图像检索和溯源(image retrieval and provenance)。

最近,我学习了这方面的好几篇论文,在此做个总结。

涉及这方面研究的几个专用名词如下:

血缘关系:对于图片a,对其进行一系列修改操作(例如:裁剪,选择,调整对比度…),得到一张新图片b。再对b进行一系列修改操作,得到一张新图片c。我们称,图片a,b,c之间存在血缘关系。即,存在修改关系的图片之间,存在血缘关系。另外,称a和b,b和c之间存在直接血缘关系

检索(retrieval)和溯源(provenance):给定一张查询图k和一个图片集Q,找出Q中与k存在血缘关系的图片,称为检索。在检索到的图片集中,找出查询图k的原图,称为溯源

查询图(query),主图(host),供图(donor):进行查询检索的图称为查询图。一般而言,查询图都是由多个图片合成的。这些图片中,提供查询图的大部分区域或者背景的图片称为主图。仅提供一小部分来组从查询图的图片称为供图

溯源图:将查询图与检索到的图中,存在直接血缘关系的图对,连接起来,得到一个无向无环图,称为无向溯源图。如果能得知修改方向(即b是由a修改后得到的,则a->b),则可以得到一个有向无环图,称为有向溯源图。统称为溯源图

下图是一个简单的例子。(配图来源于参考文献1)

如图,将查询图(query)在数据库(database)中进行检索(retrieval),找出10张与查询图最相似的图片。然后将这11张图按照修改方向构造出溯源图。箭头表示修改方向。

2.处理方式

整个溯源图的构建,分为两个步骤,溯源图过滤(从数据库中找出和查询图相关的图)和溯源图的构造(将查询图与相关图以图的形式展示出修改关系)。

2.1 溯源图集过滤

这一步主要是两个目的:将图像转变为可比较的形式计算图片之间的差异度。随便给定两张图,是没有办法直接比较的,只有将图片用特征(向量)表示出来(局部特征1),才可以进行比较。另外,找到k个最相似的图片之后,a,b都与查询图c相似。最后要怎么连接呢?通过计算图片之间的差异度(不相似程度)来连接是最好的方法。

2.1.1 局部特征提取

在图像中提取特征点(向量),目前有两类方法:特征点提取算法和神经网络。

① 特征点提取算法

这一节主要介绍传统的特征点提取算法SIFT和SURF,以及文中用到的改进的SURF。

1)SIFT(Scale Invariant Feature Transform,尺度不变特征变换)

为什么选择介绍SIFT算法,因为在SIFT算法诞生之前,角点检测算法霸占了特征点检测和匹配的江湖,而SIFT的诞生,标志着特征点检测算法进入了新时代,之后,又相继诞生了MSER(Maximally Stable Extremal Regions,最大稳定极值区域),SURF(Speeded Up Robust Features,加速稳定特征)。因此,SIFT作为新时代特征点检测算法的老大哥,还是值得一提的。

SIFT具有如下几个优点:

  1. 对旋转、尺度缩放、亮度变化保持不变性,对视角变化、噪声等也存在一定程度的稳定性;
  2. 独特性,信息量丰富,适用于在海量特征数据中进行快速,准确的匹配;
  3. 多量性,即使少数几个物体也可以产生大量的Sfit特征向量;
  4. 可扩展性,可以很方便的与其他形式的特征向量进行联合。

其流程可用下图概括(下图来源于参考文献12):

但其缺点也很明显,生成的特征维度太高了,128维,在进行检索比较的时候,需要耗费大量时间。

SIFT算法的详细步骤可参考以下博客:
https://blog.csdn.net/dcrmg/article/details/52577555;https://blog.csdn.net/dcrmg/article/details/52561656;https://www.jianshu.com/p/9487e98a8c45

2)SURF(Speeded Up Robust Features,加速稳定特征)

该算法在保持 SIFT 优良性能特点的基础上,同时解决了 SIFT 计算复杂度高、耗时长的缺点,对兴趣点提取及其特征向量描述方面进行了改进,且计算速度得到提高。

具体步骤为:

  1. 构造Hessian矩阵,计算特征值α 。Sift采用的是DOG图像,而SURF采用的是Hessian矩阵行列式近似值图像。有了这个近似的模板以后,计算高斯滤波和二阶导数两个步骤就可以一个步骤完成,同时,为了提高计算效率,还引入了积分图像的概念,提高了速度。
  2. 构造高斯金字塔。对于SURF算法,图像的大小总是不变的,改变的只是高斯模糊模板的尺寸,当然,尺度σ也是在改变的。
  3. 定位特征点。将经过hessian矩阵处理过的每个像素点与其3维领域的26个点进行大小比较,如果它是这26个点中的最大值或者最小值,则保留下来,当做初步的特征点。
  4. 确定特征点主方向。为了保证旋转不变性,在SURF中,不统计其梯度直方图,而是统计特征点领域内的Harr小波特征。这也是为什么可以说特征点是特征向量,因为它具有了方向。
  5. 构造特征描述子。在特征点周围取一个正方形框,框的边长为20s(s是所检测到该特征点所在的尺度)。该框带方向,方向是第4步检测出来的主方向。然后把该框分为16个子区域,每个子区域统计25个像素的水平方向和垂直方向的haar小波特征,这里的水平和垂直方向都是相对主方向而言的。该haar小波特征为水平方向值之和,水平方向绝对值之和,垂直方向之和,垂直方向绝对值之和。

详细说明可参考以下博客:
https://blog.csdn.net/ecnu18918079120/article/details/78195792;
https://www.cnblogs.com/gfgwxw/p/9415218.html;

3)改进的SURF

SURF提取特征点,简单说是提取Hessian值最大的m个点。文中1设定一个参数p(p<m),前p个特征点提取方式不变,但是后m-p个点提取时,只提取那些不会覆盖已提取的特征点的特征点。这样做的好处是,除了能够在强响应区域(Hessian值大)提取特征点外,还能在其他一些地方(如:边缘,背景)提取到少量特征点,使得特征点能够更好的表示一张图。如下图所示(来源于参考文献1),左边是常规的SURF提取到的特征点,右边是改进后的,可以看到,提取的特征点更为全面。

② 卷积神经网络提取特征点(DELF)

文章《Large-Scale Image Retrieval with Attentive Deep Local Features》是今天早上准备写博客时,无意中翻到的。该文章提出一种用于大规模图像检索的注意力局部特征表达,称之为DELF(DEep Local Feature)。这种新型特征是从训练好的卷积神经网络中提取出来的,该卷积网络是在一个地标数据上使用图像级的标注完成训练的。为了能够获得具有语义信息的、对图像检索有利的局部特征,文章还提出一种用于关键点提取的注意力机制,该机制和特征表达共享大部分的网络层。本文的方法可以取代图像检索中其他的关键点检测和表达方法,获得更为准确的特征匹配和几何验证。文章的系统通过生成可信的置信得分来减少假阳率,这在当数据库中没有和查询图像相匹配的结果时具有较好的鲁棒性。整个过程如下所示(图来源于参考文献10)。

2.1.2 构造差异矩阵

构造差异(dissimilarity)矩阵也有两个可行的方法,分别是:基于几何一致性匹配1和基于卷积神经网络3

①基于几何一致性匹配1

在用改进的SURF算法提取完特征后,对特征先进性粗量化。通过K-means进行聚类,计算每个特征和类中心的残差向量,这样可以快速将全局遍历锁定为感兴趣区域,舍去不必要的全局计算以及排序。之后再进行PQ(乘积量化)(PQ是通过划分子空间来加速索引速度,因此文中还在划分子空间时引入Optimized PQ来找到最优子空间划分)来建立码本,量化编码。之后,对查询图进行相同操作,计算对称距离。(一般来说,用非对称距离多一些,因为其损失小)。过程如下所示(图来源于参考文献7):
(关于PQ的详细介绍可参考博客:https://blog.csdn.net/langb2014/article/details/99715684)

然后进行迭代搜索,将搜索到的图作为新的搜索图进入迭代搜索,直到搜不到图后停止。迭代搜索的好处是不但可以搜索到与查询图直接相关的图,还能搜索到间接相关的图。

接下里是基于几何一致性匹配计算不相似度。对于任意两张图,找出两个最佳匹配,不妨设为p1,p2∈图I1,q1,q2∈图I2。则计算p1与p2的L2距离和角度,同理,计算q1与q2的L2距离和角度,以此来估计I1与I2间的变换(只估计缩放,旋转,平移这三种变换)。然后根据估计到的变换,来计算特征的匹配个数,取其倒数作为不相似度(匹配数越多越相似)。

其中,文中指出,如果某个特征和其最佳匹配的两个特征的距离都小于一个阈值t,则舍弃该特征,因为该特征的可辨识度很差。

②基于卷积神经网络3

文中构建了一个13层的卷积神经网络(CNN),包括5个卷积层,5个最大池化层,2个完全连接层和1个批规范化层。激活函数是ReLU,即f(x)=max{0, x}。

文中用于训练网络的思想很新颖。他们用四类图片块(patches)来训练网络。

  • 第一类:原始图(anchor patch)。
  • 第二类:正样本(positive patch),每个样本经过M次修改操作。
  • 第三类:弱正样本(weak positive patch),每个样本经过M+N次修改操作。
  • 第四类:负样本(negative patch),每个样本和原始图毫无关系。

并且,修改操作包含很多种,主要分为以下四类:1)投影变化(如:缩放,旋转,翻转,间接,投影);2)颜色空间变换(如:亮度变化,对比度,伽马校正,灰度变化);3)频率空间变化(如:模糊和锐化);4)数据损失压缩。每次变换随机选择其中一种进行。

由这么多操作得到的模型,如果泛化性能很好,则意味着,在计算不相似度方面,远远优于其他模型(上述基于几何一致性匹配的只支持3种操作)。训练过程如下图所示(图来源于参考文献3)。

最小化损失函数:

L ( a , p , p , n ) = m a x ( 0 , y ( d ( a , p ) d ( a , n ) ) + μ 1 ) + m a x ( 0 , y ( d ( p , p ) d ( p , n ) ) + μ 2 ) + m a x ( 0 , y ( d ( a , p ) d ( a , p ) ) + μ 3 ) . L(a, p, p', n) \\= max(0, -y*(d(a, p') - d(a, n)) + μ_1) \\+ max(0, -y*(d(p, p') - d(p, n)) + μ_2)\\+ max(0, -y*(d(a, p) - d(a, p')) + μ_3).

其中,a是原图,p是正样本,p’是弱正样本,n是负样本,d(.)是两个样本的L2距离,而μ是取值在[0.01, 0.1]的经验值。训练的目标是使得d(a, p)<d(a, p’)<d(a, n)(由相似的样本之间的距离肯定要更小可以显而易见的得出)。当满足这个条件时,y输出1;否则,输出-1。再回到损失函数,当括号内的距离>0,y=1,或者括号内的距离<0,y=-1,这两种情况实际取值就是0。而当两者异号时,则会累计损失。之后,通过随机梯度下降法进行优化,直到网络收敛。

训练好网络后,计算差异矩阵D[i, j],是直接将一组特征从一个图像匹配到另一个图像。仅考虑图片块的双向一致最高匹配,将其L2距离做为差异值。

2.1.2 构造边方向矩阵

所谓边方向矩阵,实际上就是指示出图像的修改关系。如果没有边方向矩阵,我们最多说图像a和图像b有血缘关系。但如果有了边方向矩阵,我们就可以说到底是a操作生成b还是b操作生成a还是他们只存在间接关系。
目前,构造边方向矩阵有两种可行的方法,基于互信息量(MI)1基于图像元数据(metadata)2。下面逐一介绍。

①基于互信息量1

假设根据两个图(Ii, Ij)的几何一致性匹配,确定变换T后,计算T(Ii)。将T(Ii)和 Ij中,能包含全部匹配特征点的最小区域,取为一个图片块,分别记为R1和R2。R1和R2的互信息量可以视为Ii,与Ij的互信息量,计算公式如下:

M I ( R 1 , R 2 ) = x R 1 y R 2 p ( x , y ) l o g ( p ( x , y ) x p ( x , y ) y p ( x , y ) ) MI(R_1, R_2) = \sum_{x∈R_1} \sum_{y∈R_2}p(x, y)log(\frac{p(x, y)}{\sum_{x}p(x,y)\sum_{y}p(x,y)})

其中, p ( x , y ) = h ( x , y ) x , y h ( x , y ) p(x,y)=\frac{h(x,y)}{\sum_{x,y}h(x,y)}

h(x, y)是像素点(x, y)出现的次数,借此来估计x和y的联合概率分布函数p(x, y),从而计算互信息量。 Ij和Ii的互信息量以类似的方法计算。而且显然,得到的矩阵是非对称矩阵。

②基于图像元数据2

图像本身带有一种Exif信息,该数据包含很多信息,比如:图片创造日期,地理位置,相机信息等。文章通过建立一个合理的投票机制,来构造边方向矩阵。下图是一个图像元数据的简单例子。

文中建立的投票机制如下:

  • 日期。要检查内容创建的时间顺序,我们分别比较与日期相关的标记– DateTimeOriginal,ModifyDate和CreateDate。 考虑两个图像i和j,对于三个日期中的每个可用的日期,如果图像i的日期早于或等于图像j的相应日期,则出处关系(i,j)会获得一票。相似地评估相反方向(j,i)上的关系。
  • 位置。图像的近似副本(例如裁切后的版本)应与原始图片具有相同的地理位置。因此,如果图像i与图像j共享四个位置相关标签的完全相同的非空值,则对成对图像关系(i,j)投一票,对关系(j,i)投一票–GPSLatitude,GPSLatitudeRef,GPSLongitude,GPSLongitudeRef。尽管这无助于定义图像i和j之间的出处方向,但由于(i,j)和(j,i)关系均获得一票表决权,因此它确实比其他不共享位置信息的图像对具有更大的权重。另外,在没有明显存在前景(与背景相对)供图的非常复杂的图像构图中,与构图的供图相反,与位置有关的元数据标签可能为空或丢失。因此,如果图像i具有非空位置信息而图像j缺少该信息,则我们对关系(i,j)投一票。
  • 相机。我们建议以类似于位置情况的方式使用基于相机的元数据信息。如果图像i和图像j同时为相机的Make,Model和Software标签共享相同的非空内容,则我们对(i,j)和(j,i)关系都投了一票,这表明维持了近重复图片元数据。同样,如果图像i具有相机信息而图像j没有,我们对(i,j)投一票。
  • 编辑。我们使用与编辑相关的元数据标签来确定是否曾经操纵过图像i或图像j。假定出处方向可能从非编辑图像发生,到编辑图像,如果图像j具有ProcessingSoftware, Artist, HostComputer, ImageResources中任何一个的信息,我们将对关系(i,j)投一票。相反方向(j,i)上的关系也以相同的方式评估。
  • 缩略图。我们提取图像i和j的缩略图。如果缩略图完全相同,则关系(i,j)和(j,i)都将获得一票表决权,因为这意味着一个图像可能是由另一图像生成的。或者,如果图像i具有缩略图,而图像j不具有缩略图,则关系(i,j)获得一票,表明图像i可能是原始的。

这些试探法用于生成基于元数据的边方向矩阵M。例如,获取图像i和j以及从i到j的可能出处关系,只要满足试探法,相应的值M[i, j]增一,表示对(i,j)关系投一票。

2.2.溯源图的构造

得到差异矩阵和边方向矩阵后,就可以生成溯源图了。目前,有两个生成溯源图的方法,最小生成树基于聚类的方法

①最小(大)生成树算法

到底是用最小还是最大生成树算法,取决于差异矩阵的度量方式。如果值越小,越不相似,则用最小生成树。反之,用最大生成树。直接按照算法,根据差异矩阵,将每条边贪婪的连接起来就行了。

至于为什么是生成树算法,也很好理解。我们要生成的一定是无环图,因为如果存在环,比如:节点a,b,c构成了一个环,则无论是a->b->c->a的修改关系还是a->b->c且a->c的修改关系都说不通。

②基于聚类的方法1

该聚类算法的思想是:只有相似图片是同一张图片的图片,可以聚到同一类。从查询图Iq开始,将其他图片由不相似度从低到高排序,按照以下原则聚类:

  • 对于第i张图片Ii,计算它和Ii-1的匹配数m。同时计算该类的平均匹配数μ和方差σ。如果m属于[μ-σ,μ+σ]这个区间,则将图片Ii归入该类,并更新μ和σ的值;否则,视图片Ii为新类的第一个元素。最后,如果还有未连接的图,在溯源图中,找到和它有最大匹配数的图,将其作为新的查询图,开始聚类。

最后,根据边方向矩阵,确定边的方向,就得到了一个有向溯源图。

3.数据集

整个实验过程分两种,end-to-end(端到端,即参与整个过程)与oracle-filter(假定已经得到查询图及其相关的图片,只参与构建差异矩阵及其后面的步骤)。因此,数据集也主要为这两种情景而设计,主要包括:

1.Nimble 2017 Challenge Dataset

由NIST公布的,2017年的Nimble Challenge用于图像过滤和溯源图构造的数据集。该数据集包含65个查询图和11040张图,可以同时支持end-to-end和oracle-filter进行溯源分析。

2.Reddit Dataset

该图片集源于网站www.reddit.com/r/photoshopbatttles。reddit是一个包含众多圈子的网站,每个圈子都以www.reddit.com+/r/xxxx作为该圈子的url,而photoshop-battles这个圈子说的是,网友放一张图上去,大家都来p图,就可以得到很多与原始图有血缘关系的图,而且相比人工合成的数据集,显得更为真实。显然,该数据集只支持oracle-filter进行溯源分析。

3.Media Forensics 2018 Challenge Dataset

该数据集有258张查询图,每张查询图平均和14.3张图片有血缘关系,且包含很多操作集,是一个很大的挑战。可以同时支持end-to-end和oracle-filter进行溯源分析。

4.Oxford 5k and Paris 6k4

该数据集包含牛津5000张建筑图和巴黎6000张建筑图。作为图像检索步骤中,很受欢迎的数据集,照片集包含很多从不同角度拍摄同一建筑的照片,为特征点检测匹配提供了很好的数据集。

5.Google-Landmarks4

该数据集由Google发布,包括117703张查询图和1098461张图。数据集虽大,但是真实溯源图官方还没发布(截至2019.12)(2020.3我尝试查询,没找到)。

4.评估方法

不论是end-to-end还是oracle-filter,最后结果都是以溯源图展示。因此,将生成的溯源图与真实的溯源图进行比较进而评估方法的可用性,成为了目前的主流手段。主要包括:

  • 边重叠率(EO):成功预测到的边/总边数;
  • 顶点重叠率(VO):成功预测到的顶点/总顶点数;
  • 溯源图重叠率(VEO):VO和EO的调和平均数。

5.思考与展望

在文献1中,使用扩展SURF+几何一致性匹配+聚类来生成溯源图,在数据集1和2中做了测试,总的表现结果是:VO较高,在0.85-0.95之间。但EO非常低,只有0.25-0.35,甚至在数据集2(reddit)中,EO只有可怜的0.121。这也说明了,文献1在确定节点方面还可以,但是在边的确定上,结果差强人意。这是因为:1.基于几何一致性匹配只估计了三种变换(平移,缩放,旋转),也就是说对于绝大部分操作,是根本无法正确溯源的。2.基于互信息量来确定边的方向,也不合理。这是因为互信息量是基于像素来确定的,但是像素本身就没办法作为一个参考标准,因为很多图片可能像素差不多,但图片内容天壤之别。

而文献2,引入图像元数据作为边方向的评判标准,在数据集1中,EO在oracle-filter和end-to-end分别为0.445,0.384。这也说明了图像元数据能够为边方向判断带来显著的提升。但是在数据集2中,EO平均只有0.085。因为数据集2主要是网友p的图,很多都缺失元数据(一张图被p后,部分数据会丢失),作者采用上传图片的时间作为一项元数据,思路好,但是可能存在误差(比如图片虽然修改的早,但上传的晚),导致EO值下降。

文献3是通过训练一个CNN来构造差异矩阵,并且CNN泛化性能很好。在数据集1中的oracle-filter情况下,EO达到了0.66(生成的是无向图)。在数据集3中的oracle-filter情况下,EO达到了0.67,VO是0.99。之前也强调了,数据集3的图片修改操作有很多,但是通过在训练的时候加入很多修改操作进去,文章表现出来的CNN不但没有过拟合,反而泛化性能非常好。文中也指出,这也是首次EO出现超过0.6的情况。

还要提一提的是文献4。文献4的主要内容不是构造溯源图,而是进行图像检索。而且专门检索那些仅提供一小块的供图(donors)。检索提供一小块的供图确实是一个让人很头疼的问题,因为就算两张图的那一小块完全匹配,也只能有为数不多的几个匹配。归一化处理后,很容易被过滤掉。而文中针对这种问题,提出了一种新的名为OS2OS评分机制。这个评分机制用于提取完特征点后,引入了几个公式,来将特征转入到一个评分空间,从而实现就算仅提供一小块,但只要那一小块匹配数很多,就能够被保留。不过这也有个缺点,就是文中在估计图像转换的时候,也只估计了平移,旋转,缩放这三种操作。实际上,它就只是找出拼接操作的区域,下图贴上一个例子。该图中,大部分从供图(donors)中拼接进来的小图片快,都被找出来了。(图来源于参考文献4)

下面说一些我的思考。

首先在特征提取方面,SURF是提取出特征点,给出主方向作为特征向量。而DELF是从训练好的卷积神经网络中提取特征(应该是图片块),两者各有优点。并且特征点提取算法较为成熟,想要提出新的比较难,只能像文献1一样,对SURF稍作改动,让其更适合图像检索。

其次是差异矩阵构造方面。文献1提出的基于几何一致性匹配的方法,适用性不强,因为其假设针对的模态只有:缩放,旋转,平移,从而导致面对一些多操作图片集时,EO较低。而这三种也是可以简单的通过数学公式来写出函数表达式的,如果想要在此基础上改进,应该增加函数表达式的可适用性(比如:引入一个计算对比度调整的函数)。而文献3主要是通过训练神经网络,在训练过程中,对图片进行了很多不同种类的操作,而结果也非常令人兴奋,模型的泛化性能非常好,能够在很多中操作的前提下,达到不错的效果。但CNN毕竟是黑箱操作,我相信,如果调参合适,肯定可以获得一个泛化性能更好的模型(比如:训练时,增加训练模态;原文是5层卷积网络,可以考虑改变层数)。

再次是边方向矩阵构造。基于互信息量的边方向矩阵构造,结果表现很差。因为,像素只能作为参考,而不能作为依据。而基于元数据的边方向构造,结果略有提升,但是当元数据缺失严重或者被恶意篡改,还是很难利用元数据的。(图片元数据主要是Exif信息,可以随意改动,比如我可以把某张图片的生成日期改到一年后。还有,有学者提出了一种检测元数据是否被篡改的网络模型《Deep Representation Learning for Metadata Verification》)但是文献2提出的元数据的投票机制,我认为,在辅助判断边方向时,确实很有用,但是不能仅靠元数据来判断,还得有一个关键性的算法。不知道以MI为主,元数据为辅,能不能得到较好的结果。

最后是溯源图的构造。最小生成树算法和聚类算法都很好。如果要改进的话,可以在现有的聚类算法中,选合适的稍作改进来用于溯源图的构造。因为溯源图构造的本质就是将一堆离散的图片最终聚为一类或几类。

6.参考文献

主要参考论文4篇(一些经典算法的参考文献未列出来,如最小生成树):

[1] D.Moreira, A.Bharati, J.Brogan, A.Pinto, M.Parowski, K.W.Bowyer, P.J.Flynn, A.Rocha, and W.J.Scheirer. Image provenance analusis at scale. IEEE Transactions on Image Processing, 27(12):6109-6123,2018.
[2] Aparna Bharati, Daniel Moreira, Joel Brogan, Patricia Hale, Kevin Bowyer, Patrick Flynn, Anderson Rocha, and Walter Scheirer. Beyond pixels: Image provenance analusis leveraging metadata. In IEEE WACV, 2019. 6
[3] Aparna Bharati, Daniel Moreira, Patrick Flynn, Anderson Rocha, Kevin Bowyer and Walter Scheirer. Learning transformation-aware embeddings for image forensics[J].2020. 1
[4] Brogan J , Bharati A , Moreira D , et al. Dynamic Spatial Verification for Large-Scale Object-Level Image Retrieval[J]. 2019. 12

以及参考博客若干(侵删):

[5] https://blog.csdn.net/dcrmg/article/details/52561656
[6] https://www.cnblogs.com/mafuqiang/p/7161592.html
[7] https://blog.csdn.net/langb2014/article/details/99715684
[8] https://blog.csdn.net/yjl9122/article/details/70198357
[9] https://www.jianshu.com/p/a6d67df60e7e
[10] https://zhuanlan.zhihu.com/p/34084199
[11] https://blog.csdn.net/wzy_zju/article/details/81262453
[12] https://blog.csdn.net/dcrmg/article/details/52577555


  1. 因为查询图可能是一个或多个供图(donor)的组合。如果提取的是全局特征,则由于这些供图仅提供查询图的一小块,在全局特征进行比较的时候,差异度必然很大,则容易被筛除。因此,在选用提取特征的算法时,像MobileNet这类提取全局特征的算法就不适用。 ↩︎

发布了18 篇原创文章 · 获赞 1 · 访问量 802

猜你喜欢

转载自blog.csdn.net/shuaishuaihyh/article/details/104626067
今日推荐