code: def is_rois_column(data: pd.Series) -> bool:
      """
      Identify if a column is one rois column.
  
      Parameters
      ----------
      X
          One column of a multimodal pd.DataFrame for training.
  
      Returns
      -------
      Whether the column is a rois column.
      """
      idx = data.first_valid_index()
      if isinstance(data[idx], str):
          try:
              rois = json.loads(data[idx][0])
              # TODO: better infer logic / input format to not confuse with other modality
              return (
                  rois
                  and isinstance(rois, list)
                  and len(data[idx][0]) == 5
              )
          except:
              return False
      else:
          return is_rois_input(data[idx])
  
imports: import collections
  import json
  import logging
  import warnings
  from io import BytesIO
  from typing import Dict, List, Optional, Tuple, Union
  import pandas
  import PIL
  import pytesseract
  from autogluon.core.utils import infer_problem_type
  from ..constants import BINARY, CATEGORICAL, CLASSIFICATION, DOCUMENT_IMAGE, DOCUMENT_PDF, IDENTIFIER, IMAGE, IMAGE_BYTEARRAY, IMAGE_PATH, MULTICLASS, NER, NER_ANNOTATION, NULL, NUMERICAL, OBJECT_DETECTION, OPEN_VOCABULARY_OBJECT_DETECTION, REGRESSION, ROIS, SEMANTIC_SEGMENTATION, SEMANTIC_SEGMENTATION_GT, SEMANTIC_SEGMENTATION_IMG, TEXT, TEXT_NER
  from .utils import is_rois_input
label_desc: Use image node_id 2 for calling a global function with example usage: is_rois_column(data) and returns: is_rois_input, unknown, False