tf_audio_steganalysis 项目介绍
项目概述
tf_audio_steganalysis 项目是一个基于 TensorFlow 的音频隐写分析实现。由王芸涛(Yuntao Wang,昵称 Charles_wyt)开发,该项目提供了一个灵活的平台,用户可以在其上设计自己的深度学习网络,从而进行音频隐写的分析和检测。音频隐写分析是一项重要的安全技术,用于检测音频数据中嵌入的信息。
主要研究成果
-
CNN 基于 MP3 隐写的熵码域隐写分析
项目中首个研究工作是基于卷积神经网络(CNN)的 MP3 隐写分析,该技术在国际会议 IH&MMSec 2018 中获得最佳论文奖。该研究主要集中在 MP3的熵编码域的隐写检测。 -
RHFCN:富高通滤波器的全 CNN 基于 MP3 隐写分析
这是另一个研究工作,发表于 2019 年的 ICASSP,主要关注于利用富高通滤波器进行 MP3 隐写分析的全卷积神经网络。 -
基于点对点及块对块相关联的 MP3 隐写分析
该研究发表在《信息科学》期刊上,探讨了通过点对点及块对块的相关性进行 MP3 隐写分析的方法。
必要软件包
项目所需的软件包包括 tensorflow-gpu(版本1.3或更高)、numpy、pandas、matplotlib、scikit-image、scikit-learn、filetype,以及 librosa(需要依赖 FFmpeg)。这些工具和库支持项目的运行和开发。
安装这些包非常方便,用户可以通过运行命令 pip install -r requirements.txt
自动一次性安装所有依赖项。此外,用户可以使用 virtualenv 来创建独立的 Python 环境,避免影响原有的 TensorFlow 版本。
使用指南
-
安装 Python 环境
用户需先安装 Python3.x 或 Anaconda,并将安装目录添加到环境变量中。推荐版本为 Python 3.5。 -
配置 GPU 运行环境(可选)
如果需要利用 GPU 加速训练,用户需要完成相应的配置。 -
安装依赖
打开项目的 setup 文件夹中的 requirements.txt,并在终端输入命令pip install -r requirements
。 -
代码运行示例
用户可参考项目中的示例文件了解如何运行代码。 -
使用 Tensorboard 可视化训练过程
用户可使用 Tensorboard 查看训练过程中准确率和损失曲线等信息。通过运行tensorboard --logdir=/path of log
可以启动可视化界面。 -
自定义网络设计
用户可以根据项目提供的简要说明设计自己的网络。 -
集成开发环境设置
所有源码皆通过 Pycharm 开发,其中换行设置为 180。如果未设置该换行长度,可能在 IDE 中显示警告。
文件描述
audio_samples
:包含一些音频样本。data_processing
:用于构建数据集并提供 QMDCT 系数提取工具等。jupyter
:用于 Jupyter 调试的文件夹。papers
:包含论文、演示文稿、数据集和研究工作简述。setup
:用于项目的设置和配置。src
:源代码。
这个项目旨在为研究人员和开发者提供一个便捷友好的工具,用于探索和发展音频隐写分析技术。希望该项目能够为相关领域的研究和应用贡献一份力量。