class_docstr: Base class for encode-decode recognizer.
  
  Args:
      preprocessor (dict, optional): Config dict for preprocessor. Defaults
          to None.
      backbone (dict, optional): Backbone config. Defaults to None.
      encoder (dict, optional): Encoder config. If None, the output from
          backbone will be directly fed into ``decoder``. Defaults to None.
      decoder (dict, optional): Decoder config. Defaults to None.
      data_preprocessor (dict, optional): Model preprocessing config
          for processing the input image data. Keys allowed are
          ``to_rgb``(bool), ``pad_size_divisor``(int), ``pad_value``(int or
          float), ``mean``(int or float) and ``std``(int or float).
          Preprcessing order: 1. to rgb; 2. normalization 3. pad.
          Defaults to None.
      init_cfg (dict or list[dict], optional): Initialization configs.
          Defaults to None.
docstr: Network forward process. Usually includes backbone, encoder and
  decoder forward without any post-processing.
  
   Args:
      inputs (Tensor): Inputs with shape (N, C, H, W).
      data_samples (list[TextRecogDataSample]): A list of N
          datasamples, containing meta information and gold
          annotations for each of the images.
  
  Returns:
      Tensor: A tuple of features from ``decoder`` forward.
code: def _forward(
      self,
      inputs: torch.Tensor,
      data_samples: OptRecSampleList = None,
      **kwargs,
  ) -> RecForwardResults:
      """Network forward process. Usually includes backbone, encoder and
      decoder forward without any post-processing.
  
       Args:
          inputs (Tensor): Inputs with shape (N, C, H, W).
          data_samples (list[TextRecogDataSample]): A list of N
              datasamples, containing meta information and gold
              annotations for each of the images.
  
      Returns:
          Tensor: A tuple of features from ``decoder`` forward.
      """
      feat = self.extract_feat(inputs)
      out_enc = None
      if self.with_encoder:
          out_enc = self.encoder(feat, data_samples)
      return self.decoder(feat, out_enc, data_samples)
  
file_path: mmocr/mmocr/models/textrecog/recognizers/encoder_decoder_recognizer.py
imports: from typing import Dict
  import torch
  from mmocr.registry import MODELS
  from mmocr.utils.typing_utils import ConfigType, InitConfigType, OptConfigType, OptRecSampleList, RecForwardResults, RecSampleList
  from .base import BaseRecognizer
label_desc: Use image node_id 5 for calling the EncoderDecoderRecognizer obj's underlying member method code with example usage: obj._forward(inputs, data_samples) and returns: self