__init__.py 1.86 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
WenmuZhou's avatar
WenmuZhou committed
14
15
16
17
18
19
20

__all__ = ['build_head']


def build_head(config):
    # det head
    from .det_db_head import DBHead
MissPenguin's avatar
MissPenguin committed
21
22
    from .det_east_head import EASTHead
    from .det_sast_head import SASTHead
WenmuZhou's avatar
WenmuZhou committed
23
    from .det_pse_head import PSEHead
zhiminzhang0830's avatar
zhiminzhang0830 committed
24
    from .det_fce_head import FCEHead
Jethong's avatar
Jethong committed
25
    from .e2e_pg_head import PGHead
WenmuZhou's avatar
WenmuZhou committed
26
27

    # rec head
dyning's avatar
dyning committed
28
    from .rec_ctc_head import CTCHead
LDOUBLEV's avatar
LDOUBLEV committed
29
    from .rec_att_head import AttentionHead
tink2123's avatar
tink2123 committed
30
    from .rec_srn_head import SRNHead
Topdu's avatar
Topdu committed
31
    from .rec_nrtr_head import Transformer
andyjpaddle's avatar
andyjpaddle committed
32
    from .rec_sar_head import SARHead
tink2123's avatar
tink2123 committed
33
    from .rec_aster_head import AsterHead
34
    from .rec_pren_head import PRENHead
andyjpaddle's avatar
andyjpaddle committed
35
    from .rec_multi_head import MultiHead
zhoujun's avatar
zhoujun committed
36
37
38

    # cls head
    from .cls_head import ClsHead
LDOUBLEV's avatar
add kie  
LDOUBLEV committed
39
40
41
42

    #kie head
    from .kie_sdmgr_head import SDMGRHead

LDOUBLEV's avatar
LDOUBLEV committed
43
44
    from .table_att_head import TableAttentionHead

LDOUBLEV's avatar
LDOUBLEV committed
45
    support_dict = [
zhiminzhang0830's avatar
zhiminzhang0830 committed
46
47
        'DBHead', 'PSEHead', 'FCEHead', 'EASTHead', 'SASTHead', 'CTCHead',
        'ClsHead', 'AttentionHead', 'SRNHead', 'PGHead', 'Transformer',
andyjpaddle's avatar
andyjpaddle committed
48
49
        'TableAttentionHead', 'SARHead', 'AsterHead', 'SDMGRHead', 'PRENHead',
        'MultiHead'
LDOUBLEV's avatar
add kie  
LDOUBLEV committed
50
    ]
WenmuZhou's avatar
WenmuZhou committed
51

MissPenguin's avatar
MissPenguin committed
52
    #table head
WenmuZhou's avatar
WenmuZhou committed
53
54
55
56
57
58

    module_name = config.pop('name')
    assert module_name in support_dict, Exception('head only support {}'.format(
        support_dict))
    module_class = eval(module_name)(**config)
    return module_class