Spaces:
Runtime error
Runtime error
| # Copyright (c) OpenMMLab. All rights reserved. | |
| import torch.nn as nn | |
| from mmocr.models.builder import ENCODERS | |
| from .base_encoder import BaseEncoder | |
| class ChannelReductionEncoder(BaseEncoder): | |
| """Change the channel number with a one by one convoluational layer. | |
| Args: | |
| in_channels (int): Number of input channels. | |
| out_channels (int): Number of output channels. | |
| init_cfg (dict or list[dict], optional): Initialization configs. | |
| """ | |
| def __init__(self, | |
| in_channels, | |
| out_channels, | |
| init_cfg=dict(type='Xavier', layer='Conv2d')): | |
| super().__init__(init_cfg=init_cfg) | |
| self.layer = nn.Conv2d( | |
| in_channels, out_channels, kernel_size=1, stride=1, padding=0) | |
| def forward(self, feat, img_metas=None): | |
| """ | |
| Args: | |
| feat (Tensor): Image features with the shape of | |
| :math:`(N, C_{in}, H, W)`. | |
| img_metas (None): Unused. | |
| Returns: | |
| Tensor: A tensor of shape :math:`(N, C_{out}, H, W)`. | |
| """ | |
| return self.layer(feat) | |