class_docstr: Base dataset for detection.
  
  Args:
      proposal_file (str, optional): Proposals file path. Defaults to None.
      file_client_args (dict): Arguments to instantiate the
          corresponding backend in mmdet <= 3.0.0rc6. Defaults to None.
      backend_args (dict, optional): Arguments to instantiate the
          corresponding backend. Defaults to None.
      return_classes (bool): Whether to return class information
          for open vocabulary-based algorithms. Defaults to False.
      caption_prompt (dict, optional): Prompt for captioning.
          Defaults to None.
class_docstr_tok: ["Base","dataset","for","detection",".","Args",":","proposal_file","(","str",",","optional",")",":","Proposals","file","path",".","Defaults","to","None",".","file_client_args","(","dict",")",":","Arguments","to","instantiate","the","corresponding","backend","in","mmdet","<","=","3.0.0rc6",".","Defaults","to","None",".","backend_args","(","dict",",","optional",")",":","Arguments","to","instantiate","the","corresponding","backend",".","Defaults","to","None",".","return_classes","(","bool",")",":","Whether","to","return","class","information","for","open","vocabulary-based","algorithms",".","Defaults","to","False",".","caption_prompt","(","dict",",","optional",")",":","Prompt","for","captioning",".","Defaults","to","None","."]
docstr: Load annotation file and set ``BaseDataset._fully_initialized`` to
  True.
  
  If ``lazy_init=False``, ``full_init`` will be called during the
  instantiation and ``self._fully_initialized`` will be set to True. If
  ``obj._fully_initialized=False``, the class method decorated by
  ``force_full_init`` will call ``full_init`` automatically.
  
  Several steps to initialize annotation:
  
      - load_data_list: Load annotations from annotation file.
      - load_proposals: Load proposals from proposal file, if
        `self.proposal_file` is not None.
      - filter data information: Filter annotations according to
        filter_cfg.
      - slice_data: Slice dataset according to ``self._indices``
      - serialize_data: Serialize ``self.data_list`` if
      ``self.serialize_data`` is True.
docstr_tok: ["Load","annotation","file","and","set","``","BaseDataset._fully_initialized","``","to","True",".","If","``","lazy_init=False","``",",","``","full_init","``","will","be","called","during","the","instantiation","and","``","self._fully_initialized","``","will","be","set","to","True",".","If","``","obj._fully_initialized=False","``",",","the","class","method","decorated","by","``","force_full_init","``","will","call","``","full_init","``","automatically",".","Several","steps","to","initialize","annotation",":","-","load_data_list",":","Load","annotations","from","annotation","file",".","-","load_proposals",":","Load","proposals","from","proposal","file",",","if","`","self.proposal_file","`","is","not","None",".","-","filter","data","information",":","Filter","annotations","according","to","filter_cfg",".","-","slice_data",":","Slice","dataset","according","to","``","self._indices","``","-","serialize_data",":","Serialize","``","self.data_list","``","if","``","self.serialize_data","``","is","True","."]
code: def full_init(self) -> None:
      """Load annotation file and set ``BaseDataset._fully_initialized`` to
      True.
  
      If ``lazy_init=False``, ``full_init`` will be called during the
      instantiation and ``self._fully_initialized`` will be set to True. If
      ``obj._fully_initialized=False``, the class method decorated by
      ``force_full_init`` will call ``full_init`` automatically.
  
      Several steps to initialize annotation:
  
          - load_data_list: Load annotations from annotation file.
          - load_proposals: Load proposals from proposal file, if
            `self.proposal_file` is not None.
          - filter data information: Filter annotations according to
            filter_cfg.
          - slice_data: Slice dataset according to ``self._indices``
          - serialize_data: Serialize ``self.data_list`` if
          ``self.serialize_data`` is True.
      """
      if self._fully_initialized:
          return
      # load data information
      self.data_list = self.load_data_list()
      # get proposals from file
      if self.proposal_file is not None:
          self.load_proposals()
      # filter illegal data, such as data that has no annotations.
      self.data_list = self.filter_data()
  
      # Get subset data according to indices.
      if self._indices is not None:
          self.data_list = self._get_unserialized_subset(self._indices)
  
      # serialize data_list
      if self.serialize_data:
          self.data_bytes, self.data_address = self._serialize_data()
  
      self._fully_initialized = True
  
file_path: mmdetection/mmdet/datasets/base_det_dataset.py
imports: import os.path
  from typing import List, Optional
  from mmengine.dataset import BaseDataset
  from mmengine.fileio import load
  from mmengine.utils import is_abs
  from ..registry import DATASETS
label_desc: Use image node_id 2 for calling the BaseDetDataset obj's underlying member method code with example usage: obj.full_init() without return types