463465810cz commited on
Commit
ffe798e
·
1 Parent(s): 2d1ec66

Update dat_arch.py

Browse files

Former-commit-id: bbd7e6195142701c1111499107fd8c1dac0337f7

Files changed (1) hide show
  1. basicsr/archs/dat_arch.py +7 -6
basicsr/archs/dat_arch.py CHANGED
@@ -246,8 +246,9 @@ class Spatial_Attention(nn.Module):
246
  return x
247
 
248
 
249
- class Axial_Spatial_Attention(nn.Module):
250
- """ Axial Spatial Self-Attention
 
251
  Args:
252
  dim (int): Number of input channels.
253
  num_heads (int): Number of attention heads. Default: 6
@@ -439,9 +440,9 @@ class Axial_Spatial_Attention(nn.Module):
439
  return x
440
 
441
 
442
- class Axial_Channel_Attention(nn.Module):
443
  # The implementation builds on XCiT code https://github.com/facebookresearch/xcit
444
- """ Axial Channel Self-Attention
445
  Args:
446
  dim (int): Number of input channels.
447
  num_heads (int): Number of attention heads. Default: 6
@@ -538,13 +539,13 @@ class DATB(nn.Module):
538
 
539
  if b_idx % 2 == 0:
540
  # DSTB
541
- self.attn = Axial_Spatial_Attention(
542
  dim, num_heads=num_heads, reso=reso, split_size=split_size, shift_size=shift_size, qkv_bias=qkv_bias, qk_scale=qk_scale,
543
  drop=drop, attn_drop=attn_drop, rg_idx=rg_idx, b_idx=b_idx
544
  )
545
  else:
546
  # DCTB
547
- self.attn = Axial_Channel_Attention(
548
  dim, num_heads=num_heads, qkv_bias=qkv_bias, qk_scale=qk_scale, attn_drop=attn_drop,
549
  proj_drop=drop
550
  )
 
246
  return x
247
 
248
 
249
+ class Adaptive_Spatial_Attention(nn.Module):
250
+ # The implementation builds on CAT code https://github.com/Zhengchen1999/CAT
251
+ """ Adaptive Spatial Self-Attention
252
  Args:
253
  dim (int): Number of input channels.
254
  num_heads (int): Number of attention heads. Default: 6
 
440
  return x
441
 
442
 
443
+ class Adaptive_Channel_Attention(nn.Module):
444
  # The implementation builds on XCiT code https://github.com/facebookresearch/xcit
445
+ """ Adaptive Channel Self-Attention
446
  Args:
447
  dim (int): Number of input channels.
448
  num_heads (int): Number of attention heads. Default: 6
 
539
 
540
  if b_idx % 2 == 0:
541
  # DSTB
542
+ self.attn = Adaptive_Spatial_Attention(
543
  dim, num_heads=num_heads, reso=reso, split_size=split_size, shift_size=shift_size, qkv_bias=qkv_bias, qk_scale=qk_scale,
544
  drop=drop, attn_drop=attn_drop, rg_idx=rg_idx, b_idx=b_idx
545
  )
546
  else:
547
  # DCTB
548
+ self.attn = Adaptive_Channel_Attention(
549
  dim, num_heads=num_heads, qkv_bias=qkv_bias, qk_scale=qk_scale, attn_drop=attn_drop,
550
  proj_drop=drop
551
  )