FFCNet:基于傅立叶变换的频率学习和复杂卷积网络用于结肠疾病分类

FFCNet: Fourier Transform-Based Frequency Learning and Complex Convolutional Network for Colon Disease Classification

摘要

提出了一种基于傅立叶的频率复杂网络(FFCNet)用于结肠疾病分类:

  1. 将复杂卷积网络与频率学习相结合,以克服实际卷积操作造成的相位信息损失
  2. 傅立叶变换将图像的平均亮度转移到光谱中的一个点(DC分量),通过解耦图像内容和亮度来减轻亮度不均匀的影响。
  3. FFCNet中的图像补丁加扰模块生成随机局部频谱块,使网络能够学习长期和局部疾病特异性特征,并提高硬样本的判别能力
    代码链接
    在这里插入图片描述
    频域学习在结肠疾病分类任务中具有潜力和局限性。
    a) 潜力:光谱对亮度不敏感,并且具有位移变化性
    b) 限制:缺乏图像局部信息和相位信息

方法

在这里插入图片描述

Patch Shuffling Module (PSM)

所提出的PSM将时域图像转换为频域表示,包括图像切片、DFT和随机混洗。与没有划片的图像光谱相比,由于频域中的一个点可以影响整个图像的光谱特性,该网络将只学习全局信息,这忽略了结肠分类所需的局部特征

Frequency-Domain Complex Network

所提出的频率学习网络可以在训练过程中通过复杂的操作直接学习复值谱图。复杂网络的骨干架构采用ResNet,内部运算由复杂的子组件(复杂卷积、ReLU、批量归一化)代替。每个残差块由两个3*3卷积层和一个连接路径组成。因此,所提出的网络考虑了频率信息特征的优势和复杂操作的丰富表达能力。

Complex Convolution

为了在复域中执行与传统实值2D卷积等效的运算,将谱图中的复矩阵P=a+bi的实部a和虚部b分别输入到网络中。同时,插入两组卷积核c和d来模拟复数卷积核Q=c+di的实部和虚部。复数卷积可以表示为
在这里插入图片描述

Complex ReLU

在这里插入图片描述

Complex BN

在这里插入图片描述
在这里插入图片描述
这篇文章看代码就差不多了

def forward(self, x, target = None):
        xr = x[:,[0,1,2],:,:]
        xi = x[:,[3,4,5],:,:]
        xr, xi = self.conv1(xr, xi)
        xr, xi = self.bn1(xr, xi)
        xr, xi = self.relu(xr, xi)
        xr, xi = self.maxpool(xr, xi)
        xr, xi = self.conv2_x(xr, xi)
        xr, xi = self.conv3_x(xr, xi)
        xr, xi = self.conv4_x(xr, xi)
        xr, xi = self.conv5_x(xr, xi)
        xr, xi = self.avg_pool(xr, xi)
        xr = xr.view(xr.size(0), -1)
        xi = xi.view(xi.size(0), -1)
        xr, xi = self.fc(xr, xi)
        x = torch.sqrt(torch.pow(xr,2)+torch.pow(xi,2))
        return x

实验结果

在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小杨小杨1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值