自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 关于空频变换的知识点

经过DCT变换后,RGB图像仍然保持三个通道(R、G、B),但每个通道的像素值被转换为相应的DCT系数。对于从 12 个通道(输入通道)到 3 个通道(输出通道)的转换,卷积核的大小应为 1x1x12x3。2. 将图像输入卷积操作。卷积操作将逐像素地对每个输出通道进行计算,通过对输入通道的像素值与卷积核的权重进行加权求和。经过卷积操作后,输出图像将具有 3 个通道,每个通道对应于卷积核中的一个输出通道。一个包含12个通道的图像需要通过卷积操作变为3个通道的图像,可以使用适当的卷积核(滤波器)来实现。

2024-02-29 11:33:33 291 1

原创 DCT-IDCT变换

之前一直不理解为什么对图像进行dct-idct变换的时候需要将图像进行rgb转换到ycbcr颜色空间上,原来是因为YCbCr颜色空间的亮度(Y)分量和色度(Cb和Cr)分量的分离特性。3. YCbCr颜色空间的色度分量的采样率更低:色度分量(Cb和Cr)的空间分辨率比亮度分量(Y)较低,通常进行水平和垂直的二次抽样。因此,在对图像进行压缩和编码时,可以使用较高的质量(较少的失真)来保留亮度信息,而对色度信息进行相对较低的质量压缩,以实现更高的压缩比。

2024-02-26 10:21:22 192

原创 论文阅读《Combining EfficientNet and Vision Transformersfor Video Deepfake Detection》

(b)将预训练好的模型提取后的特征图,分为两个分支,一个是s分支,将图像划分为7*7的patch块,另一个是L分支,将图像划分为64*64的patch块,这样做的目的是以捕获更丰富的信息和上下文。最后,使用与两个分支的输出相对应的CLS令牌生成两个独立的日志。这些对数被求和,产生最终的概率。(a)第一种是使用预训练好的efficientnet b0进行特征提取,然后将图像切分成7*7的patch块经过线性映射,输入到vit中进行下一步处理。S分支将图像划分为较小的7x7的patch块,以便。

2024-02-07 15:33:43 436 1

原创 论文阅读《thanking frequency fordeepfake detection》

这篇论文从频域的角度出发,提出了频域感知模型用于deepfake检测的模型频域感知分解,其实就是利用DCT变换,将空间域转换为频域,变换后的图像低频信息在左上角,高频信息在右下角,同时高频表示细粒度的伪造痕迹,因为进过DCT变换后的图像不再具有尺度不变性和局部相关性的RGB图像特性,故需要对其进行IDCT变换为RGB域。图3(b)展示了DCT功率谱的分布。通过将2D功率谱展平为1D表示,通过对每个频率带的振幅求和。根据自然图像的DCT功率谱特性,我们观察到大部分能量集中在低频区域。

2024-01-25 22:30:47 853

原创 如何白嫖GPU---kaggle训练自己的模型

在Notebook中或通过终端执行脚本时,运行主文件。你可以点击Notebook中的"Run"按钮或通过命令行输入。确保导入的模块包括你上传到"Input"中的自定义文件。首先需要在kaggle用手机号注册,就可以获得每周30小时的免费GPU啦。在Kaggle项目中创建一个新的Notebook或脚本文件(例如,接下来讲讲,如何将自己本地的文件放入到kaggle上进行训练。编写你的代码,并按照需要调用其他模块或函数。语句导入其他Python文件,并调用其中的函数和类。),作为你的主文件或入口文件。

2024-01-18 17:13:47 691

原创 FF++数据集下载脚本代码

【代码】FF++数据集下载脚本代码。

2024-01-16 20:17:14 867 8

原创 SRM 滤波器,用于图像纹理分析

图像处理知识

2024-01-10 21:34:59 670

原创 论文阅读《Generalizing Face Forgery Detection with High-frequency Features》

第二个模块是DCMA,是跨模态的特征融合的部分,对于特征F来说,会先进行映射为Key 和value ,key用于计算两个模态的相似性,相似性结果再乘以权重矩阵得到系数C,再与Vh相乘得到特征T,对于T'的计算也是同样的道理,完成特征融合。输入的图像X,共两个分支,一部分是用于输入到SRM获得高频特征Xh,一部分是RGB流,RGB的分支同样也会输入到SRM进行提取高频特征,其结果与已经输入SRM中的结果进行相加得到最后的输出结果。,该过程经过不断地重复得到最后的特征F,和。SRM是用于过滤图像的高频噪声。

2024-01-10 14:48:03 880

原创 kaggle如何将自己的结果存储到本地

1.在运行完kaggle的notebook之后点击saveversion,在右上角。点开,再点开output,就可以看到自己的notebook运行后的结果了。然后完成后,返回到主页,找到刚才你的那个歌notebook。点击下载就可以保存运行后的结果了。如何不保存的话,结果数据会丢失。

2024-01-10 14:34:42 1385

原创 人工智能知识点总结

人工智能的知识点

2024-01-07 10:21:38 380

原创 西瓜书知识点总结

决策树,神经网络,贝叶斯分类器,支持向量机

2024-01-05 20:38:29 389

原创 设计一个二分类器都需要那些步骤?

在划分数据集时,确保每个数据集中都有正类别和负类别的样本。对于人脸二分类器,正类别可能是包含人脸的图像,负类别可能是不包含人脸的图像。在裁剪人脸地标时,确保裁剪后的图像大小一致,以便输入到模型中。数据增强是个不错的选择,但要确保不过度增强,以免引入噪声。在建立模型时,选择适当的模型架构。根据评估结果,可以调整模型的架构、超参数或数据预处理步骤,以进一步提高性能。可以使用验证集来监测模型的性能,并在性能不再提升时停止训练,以避免过拟合。设置合适的损失函数,对于二分类问题,常用的损失函数包括交叉熵损失函数。

2024-01-03 20:59:45 368

原创 哥又来看论文了《Deepfake Video Detection Using Convolutional Vision Transformer》

我对这篇论文的评价:很水但平易近人!适合我这个小白(憨憨)看~

2024-01-03 10:54:01 1068

原创 论文阅读《Combining EfficientNet and Vision Transformersfor Video Deepfake Detection》笔记

最后,使用与两个分支的输出相对应的CLS令牌生成两个独立的对数。这些对数被求和,使用softmax函数生成最终的概率。特征图在输入vit之前被划分为7*7的图像块,随后经过线性映射,添加上位置编码再输入到MSA中添加注意力,使用的是efficientnet b0,cnn学习低级和局部信息。前者是EfficientNet B0,对s分支处理7 × 7个图像补丁,对l分支处理54 × 54个图像补丁。卷积交叉ViT使用两个不同的分支:s分支处理较小的斑块,l分支处理较大的斑块,以获得更宽的接受域。

2023-12-31 15:57:41 382

原创 关于论文《Deep Convolutional Pooling Transformer forDeepfake Detection》阅读笔记

这篇论文先用CNN进行特征提取,随后输入到transformer中,但对transformer进行了改动,将transformer划分为3个阶段,每个阶段之后跟着一个全局池化操作,目的是为了降低特征的尺寸。MLP是一种全连接的神经网络结构,其目的是通过学习从卷积层提取的高级特征来执行分类、回归等任务。MLP的每个神经元与前一层的所有神经元相连接,因此MLP能够学习输入数据中的更复杂的模式和表示。3.一维向量输入到MLP中,MLP学习将这些高级特征映射到最终的输出,如分类标签。学习输入数据的局部特征。

2023-12-29 10:53:30 395 1

原创 关于朴素贝叶斯分类器的计算

贝叶斯分类器基于贝叶斯定理,该定理描述了在已知先验概率的情况下,如何通过新的观察数据来更新对事件概率的估计。这意味着在给定类别的情况下,特征之间是相互独立的,这个假设使得计算条件概率更加简单,降低了模型的复杂度。例题:该问题是求解Y的概率下,X的取值,即想要求出P(y)在分别求在y的前提下x发生的概率。求解公式是:P(Y|X)=P(Y)/P(X)P(X=(1,2,3...m))对每个类别计算先验概率,即在没有观察到数据的情况下,每个类别发生的概率。3.(P(X|C)) 是在类别C下观察数据X的概率。

2023-12-25 13:03:17 374

原创 关于信息增益如何计算

信息增益:信息增益越大,以当前结点进行划分信息的纯度越高,在计算信息增益之前需要先计算信息熵。DT决策树是用于分类(用于分类的问题,如二分类)和回归(是预测连续的问题,如股票)的。总体概括:信息熵越小,信息增益越大,信息纯度越高,用当前结点进行属性划分越合适。其次以纹理为根节点可分为3类(清晰,稍糊,模糊),3者分别占比。不区分纹理的种类,好瓜的数目是8/17,坏瓜的数目是9/17。信息熵:熵值越大表示数据越不稳定,熵值越小说明数据越稳定。总体的信息熵的计算Ent(D)=-(分别计算3者的信息熵。

2023-12-23 17:44:16 501 1

原创 Bucket Sort MPI 程序

【代码】Bucket Sort MPI 程序。

2023-12-19 21:48:40 355 1

原创 关于论文:Local Relation Learning for Face Forgery Detection阅读笔记

知识点:DCT变换后,高频信息聚集在左上角,低频信息聚集在右下角,高频信息往往是图像的局部细节,低分信息是整幅图的结构,一般的操作方法都是对高频信息进行操纵的,所以经过DCT变化之后,我们将低频信息过滤掉只保留它的高频部分。首先这是一篇将频域信息与RGB信息相结合的检测方法,同时将不同阶段的RGB信息与包含频域信息的图像进行融合(通过RFAM),拼接后的图像流向两个分支,第一个是输入到分类器中得出分类结果,第二个分支是输入到解码器中,得出操纵掩码(也就是伪造的部分)

2023-12-18 19:36:44 910 2

原创 数字图像处理(DCT变换)过滤掉低频信息,保留高频信息

将RGB图像分成三个通道,然后对每个通道进行DCT变换,过滤掉低频信息后再进行逆DCT变换,最后重新合并三个通道以生成处理后的图像。阈值的选择对于保留哪些频域信息至关重要,它会影响到最终图像的质量和细节!

2023-12-16 17:59:25 564 1

原创 如何给自己的模型添加自注意力模块

ps:调参数真的和炼丹一样,试了一天能才跑通代码,最后我也不知道是因为啥,感觉自己的自注意力模块还是没学太明白,很晕!不得不记录一下这个时刻~我使用的是预训练的模型,efficientnet-b4,数据集是人脸图像,注意力模块是添加在分类器之间。有一个bug就是显示没有train_loss,具体原因我也不知道在哪里,应该是和我定义的位置有关系。1.导入必要的包,以及配置环境。2.设置训练模型的超参数。5.自定义的预训练模型。背景:图像二分类问题。4.定义自注意力模块。

2023-12-15 10:08:11 827

原创 视频数据集如何切分成图像?

举个简单的例子就是,视频长度为10s=10*30=300帧,如果你想要一个视频切出来10张图的话,你需要规定30帧切一次!确定视频的时长,一般视频是30帧/每秒,如果一个视频的长度为10s的话也就是有300帧,可以根据自己想要的图像数据集的大小,对数据集进行切分。注意:我们从文件夹里面复制下来的路径是D:\*\*\*.jpg这样的,但是代码中的路径应该是D:/*/*/*.jpg,需要用。:D:\实验\test\zhaopan.jpg。是文件的绝对路径,例如:从。是path路径下的某个。

2023-12-10 19:10:01 373 1

原创 使用迁移学习的方法来训练自己的数据集

定义训练模型,MyModel类通过扩展nn来定义神经网络模型。模块利用预先训练的模型架构,替换其完全连接的层,提供可视化,并总结其架构和参数。可以在kaggle上或者在本地上运行,建议使用kaggle(比较方便而且还有免费的数据集)对于使用vit进行训练,暂时没有更改正确,先挖坑,后续会了再填坑。类加载图像数据集,其中指定了对应的变换操作,最后通过。定义配置文件,训练模型时使用到的超参数。(模型可以根据自己的需要进行更改)第三步:数据集的准备及预处理。训练模型并保存训练好的参数。将模型加载到cpu上。

2023-12-10 15:38:02 481 1

原创 一些kaggle上训练自己的代码会遇到的小问题

请注意,这些方法可能会对训练过程产生一定的影响,特别是手动释放内存可能会导致训练速度略有下降。在使用这些方法时,建议进行一些实验以找到最佳的平衡点。此外,确保在训练循环中使用torch.cuda.empty_cache()的地方不会过于频繁,以免影响训练性能。这个错误提示表明你的PyTorch代码尝试在GPU上分配超过可用内存的数量,因此导致CUDA内存不足错误。2.在每个训练步骤的末尾,手动删除不再需要的中间变量和张量。6.减小训练时的批处理大小,因为较小的批处理会占用更少的内存。

2023-12-06 20:48:12 654 1

原创 如何训练一个图像分类的模型

3.选择模型:可以是vgg、resnet、iception、efficientnet等,根据实际情况对模型进行调整,如人脸真假二分类问题,需要将更改输出的类别数目为2。1.准备数据集:收集数据集,尽可能包含样本多样,使训练的模型的鲁棒性更好。2.对数据集进行预处理:包括更改尺寸、水平翻转、灰度化、归一化等操作,以防止模型出现拟合的现象。transforms.Resize((224, 224)),#更改图像的尺寸大小。----------对训练的优化,可以对上面的训练模型的部分进行添加。

2023-12-06 19:54:24 1036 1

原创 博客摘录「 M2TR: 复旦提出首个多模态多尺度Transformer」2023年11月27日

首先我们对图像做DCT变换,得到了频率分布图,DCT变换具有良好的性质:高频集中在左上角而低频在右下角,因此我们手动对其进行划分,得到了高、中、低三个频段的频率分量,但是频率图不具有RGB图像的视觉特征,也没有办法利用CNN进行特征提取,为此我们对三个分量进行逆DCT变换,重新得到了RGB域的表示,但是这个表示是frequency-aware的,然后利用卷积层进行特征提取。把输入图像划分成不同的patch大小,大的patch来提取那些明显的语义不连贯、小的patch来提取细微的像素级不连贯。

2023-11-27 09:49:48 463

原创 【无标题】

检测的主要步骤:图像的预处理(随机调整大小、色调、高斯滤波、均值滤波)--->输入卷积神经网络模型进行学习--->将训练结果与实际标签进行比对,衡量损失率,进行反向传播,调整参数。常见的面部操纵技术:deepfake、face to face、faceswap。常见的数据库:imagenet、face-forensic++、DDFD。常见的模型:Transform、ResNet、GoogLeNet。deepfake detection 论文阅读小结。面部检测:基于纹理信息的方法,频域上的(噪声)

2023-09-26 20:37:00 30

原创 更新pip3失败

亲测有效,希望对和我一样的小白 有帮助📒。

2023-04-07 14:32:37 192 2

原创 对称矩阵的压缩存储

对于对称矩阵,可以为每一对对称元分配一个存储空间,可以将n^2个元压缩存储在n(n+1)/2个元的空间中

2022-04-24 09:38:31 1369 3

原创 数组计算首地址

数组是特殊的线性表特殊性在于:数组的每个元素也可以是一个线性表数组的顺序表示和实现次序-----按行序为主序,按列为主序例题:数组中每个元素占L个存储单元,二维数组任一元素aij的存储位置为按行为主序公式:LOC(0.0)+[i*n+j]*元素长度按列为主序公式:LOC(0.0)+[j*m+i]*元素长度(前提是数组下标是从0开始的)...

2022-04-24 08:51:29 1410

原创 KMP算法

2022-04-11 22:24:59 58 1

原创 栈的顺序存储

#include <stdio.h>#include<stdlib.h>#include<malloc.h>#define null 0typedef int elemtype;typedef struct stacknode{ elemtype data;//数据于域 stacknode *next;}stacknode;typedef struct{ stacknode *top;//s->top指向栈顶元素}link...

2022-04-01 14:04:02 206

原创 栈的链式存储(c语言)

#include <stdio.h>#include<stdlib.h>#include<malloc.h>#define null 0typedef int elemtype;typedef struct stacknode{ elemtype data;//数据于域 stacknode *next;}stacknode;typedef struct{ stacknode *top;//s->top指向栈顶元素}link...

2022-04-01 13:57:25 1367

audio-visualization .ipynb

audio-visualization .ipynb

2023-04-25

kaggle模型训练

2024-01-15

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除