code: def _process_features(self, features, index):
      feature_keys = [
          "obj_ids",
          "obj_probs",
          "attr_ids",
          "attr_probs",
          "boxes",
          "sizes",
          "preds_per_image",
          "roi_features",
          "normalized_boxes",
      ]
      single_features = dict()
  
      for key in feature_keys:
          single_features[key] = features[key][index]
  
      confidence = self.args.confidence_threshold
      idx = 0
      while idx < single_features["obj_ids"].size()[0]:
          removed = False
          if (
              single_features["obj_probs"][idx] < confidence
              or single_features["attr_probs"][idx] < confidence
          ):
              single_features["obj_ids"] = torch.cat(
                  [
                      single_features["obj_ids"][0:idx],
                      single_features["obj_ids"][idx + 1 :],
                  ]
              )
              single_features["obj_probs"] = torch.cat(
                  [
                      single_features["obj_probs"][0:idx],
                      single_features["obj_probs"][idx + 1 :],
                  ]
              )
              single_features["attr_ids"] = torch.cat(
                  [
                      single_features["attr_ids"][0:idx],
                      single_features["attr_ids"][idx + 1 :],
                  ]
              )
              single_features["attr_probs"] = torch.cat(
                  [
                      single_features["attr_probs"][0:idx],
                      single_features["attr_probs"][idx + 1 :],
                  ]
              )
              single_features["boxes"] = torch.cat(
                  [
                      single_features["boxes"][0:idx, :],
                      single_features["boxes"][idx + 1 :, :],
                  ]
              )
              single_features["preds_per_image"] = (
                  single_features["preds_per_image"] - 1
              )
              single_features["roi_features"] = torch.cat(
                  [
                      single_features["roi_features"][0:idx, :],
                      single_features["roi_features"][idx + 1 :, :],
                  ]
              )
              single_features["normalized_boxes"] = torch.cat(
                  [
                      single_features["normalized_boxes"][0:idx, :],
                      single_features["normalized_boxes"][idx + 1 :, :],
                  ]
              )
              removed = True
          if not removed:
              idx += 1
  
      feat_list = single_features["roi_features"]
  
      boxes = (
          single_features["boxes"][: self.args.num_features]
          .cpu()
          .numpy()
      )
      num_boxes = self.args.num_features
      objects = (
          single_features["obj_ids"][: self.args.num_features]
          .cpu()
          .numpy()
      )
      probs = (
          single_features["obj_probs"][: self.args.num_features]
          .cpu()
          .numpy()
      )
      width = single_features["sizes"][1].item()
      height = single_features["sizes"][0].item()
      info_list = {
          "bbox": boxes,
          "num_boxes": num_boxes,
          "objects": objects,
          "cls_prob": probs,
          "image_width": width,
          "image_height": height,
      }
  
      return single_features, feat_list, info_list
  
file_path: mmf/tools/scripts/features/frcnn/extract_features_frcnn.py
imports: import argparse
  import copy
  import logging
  import os
  import numpy
  import torch
  from tools.scripts.features.extraction_utils import chunks, get_image_files
  from tools.scripts.features.frcnn.frcnn_utils import Config
  from tools.scripts.features.frcnn.modeling_frcnn import GeneralizedRCNN
  from tools.scripts.features.frcnn.processing_image import Preprocess
label_desc: Use image node_id 6 for calling the FeatureExtractor obj's underlying member method code with example usage: obj._process_features(features, index) and returns: single_features,  feat_list,  info_list