code: def get_vinvl_features(self, image_paths):
      img_tensor, im_infos = [], []
  
      for image_path in image_paths:
          im, im_info = self._image_transform(image_path)
          img_tensor.append(im)
          im_infos.append(im_info)
  
      current_img_list = to_image_list(img_tensor, size_divisible=32)
      current_img_list = current_img_list.to(DEVICE)
  
      torch.manual_seed(0)
      with torch.no_grad():
          output = self.detection_model(current_img_list)
  
      feat_list = self._process_feature_extraction(
          output,
          im_infos,
      )
      return feat_list
  
imports: import argparse
  import os
  import cv2
  import numpy
  import torch
  from maskrcnn_benchmark.config import cfg
  from maskrcnn_benchmark.data.transforms import build_transforms
  from maskrcnn_benchmark.structures.image_list import to_image_list
  from maskrcnn_benchmark.utils.checkpoint import DetectronCheckpointer
  from mmf.utils.download import download
  from PIL import Image
  from scene_graph_benchmark.AttrRCNN import AttrRCNN
  from scene_graph_benchmark.config import sg_cfg
  from tools.scripts.features.extraction_utils import chunks, get_image_files
label_desc: Use image node_id 8 for calling the FeatureExtractor obj's underlying member method code with example usage: obj.get_vinvl_features(image_paths) and returns: feat_list