基于解压缩模块的JPEG同步重压缩检测论文学习

一、论文基本信息:

论文题目:基于解压缩模块的JPEG同步重压缩检测

作者:王金伟1 ,胡冰涛1 ,张家伟1 ,马 宾2 ,罗向阳3

(1.南京信息工程大学计算机学院、网络空间安全学院,江苏南京 210044;2.齐鲁工业大学山东省计算机网络重点实验室,山东济 南 250353;3.数学工程与高级计算国家重点实验室,河南郑州 450001)

来源刊物:电子学报

时间:2023年4月第四期

二、论文背景

        JPEG(Joint Photographic Experts Group)作为一种广泛应用的图像压缩标准,因其高效性与普适性而受到广泛的关注。然而,连续对同一图像进行多次JPEG压缩可能会导致可检测的重压缩痕迹,在数字图像取证等敏感领域具有重要的实际意义,可以判断图像是否被篡改。

        传统的方法过于依赖于人工提取的截断和舍入误差,无法实现端到端,这种方式存在一定的信息损失的风险,会导致JPEG图像的特征不能被充分挖掘,可能会对后续的图像分析和取证造成一定的困扰。在此背景下,本文章提出了一种基于解压缩模块的JPEG同步重压缩检测方法,通过卷积操作模拟JPEG的解压缩过程,利用卷积网络的自动优化去寻找解压缩过程的最优解,同时解除对JPEG同步重压缩问题的性能限制,充分挖掘出JPEG图像的特征,提高对同步重压缩问题的检测性能。

三、论文研究方法

基于解压缩模块的JPEG同步重压缩检测模型如下图所示:

a81f67986bb1453e97a24fd4ded83d50.png

解压缩模块:利用IDCT变换矩阵实现 IDCT

        本文利用矩阵乘法实现了IDCT,将反量化后得到的每个8*8图像块拉伸成长度为64的一维列向量,从而得到一个64*256大小的新矩阵。新矩阵左乘一个IDCT变换矩阵,实现对原图的IDCT变换。变换过程如图1所示。

 73a6848cdcd1445892d6cef84c4d688d.png

图 1 利用IDCT变换矩阵实现IDCT的方式

特征提取模块:

        文章的特征提取模块设计为双流的结构,分为亮度通道和色度通道两种,对亮度和色度先进行提取,然后将提取到的特征信息进行聚合。如下图所示:

27c714ceb76847b7968c48f41e4ba6d8.png

 

        亮度通道流由一个BN层,四个卷积层和一个池化层组成。其中,BN层进行数据归一化操作,防止过拟合。池化窗口的大小为2*2,步长为2*2。卷积层的卷积核大小为3*3,并且卷积核数量依次递增,分别为16,32,64,128。

        色度通道较亮度通道,BN层和池化层的设计相同而卷积层少一层。卷积层的卷积核大小为5*5,卷积核个数也依次增加,分别为16,32,64,128。这样的结构设计是因为压缩过程对色度信息损失严重,使用多的卷积层可能会导致特征冗余,但使用太少的卷积层有可能会导致不能提取到有效信息,使精度下降。

统计层

        选择传统的均值和方差作为分类依据,通过将提取到的特征转换为统计特征,引导模型关注图像像素值的变化,从而更好地提取重压缩特征。

消融实验验证了解压缩模块和统计层的有效性。

        通过实验,探究解压缩模块的影响。分别测试包含解压缩模块和去除解压缩模块的方法在JPEG重压缩检测问题上的性能,对比两个测试的结果,与去除解压缩模块的模型相比,含有解压缩模块的检测模型整体精度平均提升了3.01%。最终证明出解压缩模块能有效提取出特征,减少信息损失。

        通过实验,探究统计层的影响。分别测试包含统计层的模型和去除统计层模型的方法在 JPEG 重压缩检测问题上的性能,对比测试结果,得出包含统计层的检测模型相比去除统计层的模型,整体精度平均提升了1.53%。同时也验证了统计特征中的均值和方差在JPEG重压缩检测问题中具有重要作用。

对比实验

        在多个数据集上,与其他两种最新的基于深度学习的 JPEG 同步重压缩检测方法进行的对比实验显示,所提出的方法在大多数实验组中表现出优势。这充分说明了本文章提出的基于解压缩模块的JPEG重压缩检测方法在解决JPEG同步重压缩问题上的有效性。

四、论文研究结果

  1. 完成解压缩模块的设计与实现,利用卷积操作模拟JPEG的解压缩过程,并通过对比实验得出该方法较两种。
  2. 提出一个端到端的基于解压缩模块的JPEG同步重压缩检测模型,并通过实验验证压缩模块和统计层的有效性。
  3. 贡献了一个数据集。现有的JPEG公开的数据库时间都比较长远,实验团队自行拍摄、收集、制作了新的数据集Nuist-v1,方便验证实验的有效性。

五、总结与展望

         通过学习这篇论文,我学到在JPEG解压缩的过程中会产生截断和舍入误差,特征过于依赖于此,造成只能通过人工的方法在预处理阶段提取特征,这同时也导致无法实现端到端。并且现有的解压缩是根据经验设计的,模型的精度方面还有很大的进步空间。而本文章提出的基于解压缩模块的JPEG重压缩检测方法可以利用卷积操作模拟JPEG的解压缩过程,成功实现端到端,省去了预处理步骤,并且利用深度学习自动调整参数,找到最优解问题,减少因为人工操作而造成的信息损失。该方法不仅在实验中表现出色,而且为数字图像取证和图像完整性验证等领域提供了一种更为有效的解决方案。其次,本文章的实验方法中还使用了卷积操作,利用深度学习的特性进行研究,这也启示我,深度学习可以涉及的领域很广泛,它的优势也是非常鲜明的,未来也要加深这方面的学习。同时,我也注意到对比实验中在质量因子为60和70时性能略有下降的情况,可能是因为空域特征的提升有限,还在一定程度上造成了一定的冗余,这可能需要进一步的改进,才能得到更好的结果。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/55159.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Footprint Growthly Quest 工具:赋能 Telegram 社区实现 Web3 飞速增长

作者:Stella L (stellafootprint.network) 在 Web3 的快节奏世界里,社区互动是关键。而众多 Web3 社区之所以能够蓬勃发展,很大程度上得益于 Telegram 平台。正因如此,Footprint Analytics 精心打造了 Growthly —— 一款专为 Tel…

阿里大模型算法岗面试,上来就手撕代码啊

最近已有不少大厂都在秋招宣讲了,也有一些在 Offer 发放阶段。 节前,我们邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对新手如何入门算法岗、该如何准备面试攻略、面试常考点、大模型技术趋势、算法项目落地经验分享等热门话题进行了…

怎样才能写出好的知识竞赛活动策划方案

好的知识竞赛活动策划方案是抄不会的,尤其是抄一堆烂方案的话,只会让你走偏。首要的是建立策划底层思维,搞清楚如何从策划角度思考问题和解决问题。注意读、思、学,读:大量读策划案例和营销案例,分析总结和…

当贝播放器 1.5.0 畅享原画,支持阿里网盘、杜比视界和8K播放

当贝播放器TV是一款专为智能电视设计的视频播放器,具有强大的解码能力,支持阿里网盘、百度网盘等网盘资源导入。此外,还支持外部设备导入,并能自动匹配电影海报封面、内容介绍和剧照。 大小:47.3M 百度网盘&#xff1…

【ARM】MDK-当选择AC5时每次点击build都会全编译

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 解决MDK中选择AC5时每次点击build都会全编译 2、 问题场景 在MDK中点击build时,正常会只进行增量编译,但目前每次点击的时候都会全编译。 3、软硬件环境 1 软件版本:Keil MDK 5.…

html+css+js实现dialog对话框

实现效果 HTML部分 <span class"text">点击打开 Dialog</span><!-- 警告框 --><div class"alert"><div class"header"><i>X</i> </div><div class"content">确认关闭</di…

基于php的律所管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码 精品专栏&#xff1a;Java精选实战项目…

从0开始深度学习(6)——Pytorch动态图机制(前向传播、反向传播)

PyTorch 的动态计算图机制是其核心特性之一&#xff0c;它使得深度学习模型的开发更加灵活和高效。 0 计算图 计算图&#xff08;Computation Graph&#xff09;是一种用于表示数学表达式或程序流程的图形结构&#xff0c;可以将复杂的表达式分解成一系列简单的操作&#xff0…

详解代理模式-【静态代理与JDK动态代理】(非常的斯国一)

目录 静态代理 什么是静态代理: ​ 特点: 例子&#xff1a; JDK动态代理&#xff08;主要讲点&#xff09; 大纲&#xff1a; 1、与静态代码的联系 2、JDK动态代理的主流程 3、Proxy的源码 整体概述&#xff1a; 重要点的翻译 &#xff1a; newProxyInstance源码&am…

深信服2025届全球校招研发笔试-C卷(AK)

前面14个填空题 T1 已知 子数组 定义为原数组中的一个连续子序列。现给定一个正整数数组 arr&#xff0c;请计算该数组内所有可能的奇数长度子数组的数值之和。 输入描述 输入一个正整数数组arr 输出描述 所有可能的奇数长度子数组的和 示例 1 输入 1,4,2,5,3 输出 58 说明 …

使用 Light Chaser 进行大屏数据可视化

引言 在当今数据驱动的世界中&#xff0c;数据可视化变得越来越重要。Light Chaser 是一款基于 React 技术栈的大屏数据可视化设计工具&#xff0c;通过简单的拖拽操作&#xff0c;你可以快速生成漂亮、美观的数据可视化大屏和看板。本文将介绍如何使用 Light Chaser 进行数据…

828华为云征文|部署在线文档应用程序 CodeX Docs

828华为云征文&#xff5c;部署在线文档应用程序 CodeX Docs 一、Flexus云服务器X实例介绍二、Flexus云服务器X实例配置2.1 重置密码2.2 服务器连接2.3 安全组配置2.4 Docker 环境搭建 三、Flexus云服务器X实例部署 CodeX Docs3.1 CodeX Docs 介绍3.2 CodeX Docs 部署3.3 CodeX…

RabbitMQ应用

RabbitMQ 共提供了7种⼯作模式, 进⾏消息传递 一、七种模式的概述 1、Simple(简单模式) P:生产者,就是发送消息的程序 C:消费者,就是接收消息的程序 Queue:消息队列,类似⼀个邮箱, 可以缓存消息; ⽣产者向其中投递消息, 消费者从其中取出消息 特点: ⼀个⽣产者P,⼀…

小米2025届软件开发工程师(C/C++/Java)(编程题AK)

选择题好像也是25来个 编程题 T1 题目描述 小明喜欢解决各种数学难题。一天&#xff0c;他遇到了一道有趣的题目:他需要帮助他的朋友们完成一个排序任务。小明得到两个长度为 n 的数组a[]和b[]。他可以在两个数组对应位置进行交换&#xff0c;即选定一个位置 i &#xff0c…

《pyqt+open3d》open3d可视化界面集成到qt中

《pyqtopen3d》open3d可视化界面集成到qt中 一、效果显示二、代码三、资源下载 一、效果显示 二、代码 参考链接 main.py import sys import open3d as o3d from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget from PyQt5.QtGui import QWindow from PyQt5.Qt…

App模拟下载场景的demo

摘要 目的&#xff1a;提供一个稳定的下载场景&#xff0c;可以手动触发和定时触发下载&#xff0c;每次下载相同大小文件&#xff0c;研究下载场景的功耗影响 原理&#xff1a;把电脑当做服务器&#xff0c;手机测试App固定下载电脑存放的某个XXXMB的大文件&#xff0c;基于…

C语言进阶版第14课—内存函数

文章目录 1. memcpy函数的使用和模拟实现1.1 memcpy函数的使用1.2 模拟实现memcpy函数 2. memmove函数的使用和模拟实现2.1 memmove函数的使用2.2 memmove函数的模拟实现 3. memset函数4. memcmp函数 1. memcpy函数的使用和模拟实现 1.1 memcpy函数的使用 memcpy函数的原形voi…

英语音标与重弱读

英语中&#xff0c;比较重要的是音标。但事实上&#xff0c;我们对音标的学习还是比较少的&#xff0c;对它的理解也是比较少的。 一、音标 2个半元音 [w][j] 5个长元音&#xff1a;[i:] [ə:] [ɔ:] [u:] [ɑ:] 7个短元音&#xff1a;[i] [ə] [ɔ] [u] [] [e] [ʌ] 8个双元音…

第100+26步 ChatGPT学习:概率校准 Bayesian Binning into Quantiles

基于Python 3.9版本演示 一、写在前面 最近看了一篇在Lancet子刊《eClinicalMedicine》上发表的机器学习分类的文章&#xff1a;《Development of a novel dementia risk prediction model in the general population: A large, longitudinal, population-based machine-learn…

【2】图像视频的加载和显示

文章目录 【2】图像视频的加载和显示一、代码在哪写二、创建和显示窗口&#xff08;一&#xff09;导入OpenCV的包cv2&#xff08;二&#xff09;创建窗口&#xff08;三&#xff09;更改窗口大小 & 显示窗口&#xff08;四&#xff09;等待用户输入补充&#xff1a;ord()函…