code: def create_object_node(
      self, info_dict: dict = None, root_node: str = None
  ):
      if (info_dict is None) or (root_node is None):
          return
  
      object_node = self.create_append_node("object", root_node)
      box_node = self.create_append_node("bndbox", object_node)
      self.create_text_node("xmin", info_dict.pop("xmin"), box_node)
      self.create_text_node("ymin", info_dict.pop("ymin"), box_node)
      self.create_text_node("xmax", info_dict.pop("xmax"), box_node)
      self.create_text_node("ymax", info_dict.pop("ymax"), box_node)
  
      for k, v in info_dict.items():
          self.create_text_node(k, v, object_node)
  
file_path: deep-learning-for-image-processing/others_project/trans_widerface_to_xml/create_xml.py
imports: import copy
  import os
  from xml.dom import minidom
label_desc: Use image node_id 4 for calling the XMLGenerator obj's underlying member method code with example usage: obj.create_object_node(info_dict, root_node) without return types