Safemotion Lib
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
i3d_head.I3DHead Class Reference
Inheritance diagram for i3d_head.I3DHead:

Public Member Functions

 __init__ (self, in_channels, num_classes, dropout_ratio, input_key)
 
 forward (self, feat_dict)
 

Public Attributes

 dropout_ratio
 
 input_key
 
 fc_cls
 
 avg_pool
 
 dropout
 

Detailed Description

3차원 텐서를 입력으로 클래스 스코어를 출력하는 기능의 모듈
입력 텐서를 풀링하여 1차월의 텐서로 변환하고 fc 연산을 적용해서 클래스 스코어를 출력함
args:
    in_channels (int) : 입력 텐서의 채널 수
    num_classes (int) : 클래스 수, 출력 텐서의 채널 수
    dropout_ratio (float) : 드랍아웃 비율을 설정하는 파라미터
    input_key (str) : inference에 사용하는 입력데이터의 키값

Definition at line 4 of file i3d_head.py.

Constructor & Destructor Documentation

◆ __init__()

i3d_head.I3DHead.__init__ ( self,
in_channels,
num_classes,
dropout_ratio,
input_key )

Definition at line 14 of file i3d_head.py.

14 def __init__(self, in_channels, num_classes, dropout_ratio, input_key):
15 super().__init__()
16
17 self.dropout_ratio = dropout_ratio
18 self.input_key = input_key
19
20 self.fc_cls = nn.Linear(in_channels, num_classes)
21 self.avg_pool = nn.AdaptiveAvgPool3d((1, 1, 1))
22
23 if self.dropout_ratio != 0:
24 self.dropout = nn.Dropout(p=self.dropout_ratio)
25 else:
26 self.dropout = None
27
28

Member Function Documentation

◆ forward()

i3d_head.I3DHead.forward ( self,
feat_dict )
args:
    sample (dict)) : 입력 데이터, self.input_key에 해당하는 키가 있어야함
        self.input_key의 아이템은 Tensor 타입 -> shape (B, in_channels, T, H, W)
            B : 배치 크기
            T : 시간

return (Tensor):
    1차원 특징 벡터 -> shape (B, num_classes)

Definition at line 29 of file i3d_head.py.

29 def forward(self, feat_dict):
30 """
31 args:
32 sample (dict)) : 입력 데이터, self.input_key에 해당하는 키가 있어야함
33 self.input_key의 아이템은 Tensor 타입 -> shape (B, in_channels, T, H, W)
34 B : 배치 크기
35 T : 시간
36
37 return (Tensor):
38 1차원 특징 벡터 -> shape (B, num_classes)
39 """
40 x = feat_dict[self.input_key]
41 x = self.avg_pool(x)
42
43 if self.dropout is not None:
44 x = self.dropout(x)
45
46 x = x.view(x.shape[0], -1)
47 cls_score = self.fc_cls(x)
48
49 return cls_score
50

Member Data Documentation

◆ avg_pool

i3d_head.I3DHead.avg_pool

Definition at line 21 of file i3d_head.py.

◆ dropout

i3d_head.I3DHead.dropout

Definition at line 24 of file i3d_head.py.

◆ dropout_ratio

i3d_head.I3DHead.dropout_ratio

Definition at line 17 of file i3d_head.py.

◆ fc_cls

i3d_head.I3DHead.fc_cls

Definition at line 20 of file i3d_head.py.

◆ input_key

i3d_head.I3DHead.input_key

Definition at line 18 of file i3d_head.py.


The documentation for this class was generated from the following file: