MCPcopy Create free account
hub / github.com/Topdu/OpenOCR / __init__

Method __init__

openrec/modeling/decoders/cppd_decoder.py:174–262  ·  view source on GitHub ↗
(self,
                 in_channels,
                 out_channels,
                 num_layer=2,
                 drop_path_rate=0.1,
                 max_len=25,
                 vis_seq=50,
                 iters=1,
                 pos_len=False,
                 ch=False,
                 rec_layer=1,
                 num_heads=None,
                 ds=False,
                 **kwargs)

Source from the content-addressed store, hash-verified

172class CPPDDecoder(nn.Module):
173
174 def __init__(self,
175 in_channels,
176 out_channels,
177 num_layer=2,
178 drop_path_rate=0.1,
179 max_len=25,
180 vis_seq=50,
181 iters=1,
182 pos_len=False,
183 ch=False,
184 rec_layer=1,
185 num_heads=None,
186 ds=False,
187 **kwargs):
188 super(CPPDDecoder, self).__init__()
189
190 self.out_channels = out_channels # none + 26 + 10
191 dim = in_channels
192 self.dim = dim
193 self.iters = iters
194 self.max_len = max_len + 1 # max_len + eos
195 self.pos_len = pos_len
196 self.ch = ch
197 self.char_node_embed = Embeddings(d_model=dim,
198 vocab=self.out_channels,
199 scale_embedding=True)
200 self.pos_node_embed = Embeddings(d_model=dim,
201 vocab=self.max_len,
202 scale_embedding=True)
203 dpr = np.linspace(0, drop_path_rate, num_layer + rec_layer)
204
205 self.char_node_decoder = nn.ModuleList([
206 DecoderLayer(
207 dim=dim,
208 num_heads=dim // 32 if num_heads is None else num_heads,
209 mlp_ratio=4.0,
210 qkv_bias=True,
211 drop_path=dpr[i],
212 ) for i in range(num_layer)
213 ])
214 self.pos_node_decoder = nn.ModuleList([
215 DecoderLayer(
216 dim=dim,
217 num_heads=dim // 32 if num_heads is None else num_heads,
218 mlp_ratio=4.0,
219 qkv_bias=True,
220 drop_path=dpr[i],
221 ) for i in range(num_layer)
222 ])
223
224 self.edge_decoder = nn.ModuleList([
225 DecoderLayer(
226 dim=dim,
227 num_heads=dim // 32 if num_heads is None else num_heads,
228 mlp_ratio=4.0,
229 qkv_bias=True,
230 qk_scale=1.0 if (rec_layer + i) % 2 != 0 else None,
231 drop_path=dpr[num_layer + i],

Callers

nothing calls this directly

Calls 4

EmbeddingsClass · 0.90
DecoderLayerClass · 0.70
__init__Method · 0.45
applyMethod · 0.45

Tested by

no test coverage detected