code: def test_video_detection_yolov3():
      delete_cache([video_file_output + ".mp4"])
  
      detector = CustomVideoObjectDetection()
      detector.setModelTypeAsYOLOv3()
      detector.setModelPath(
          model_path=os.path.join(
              test_folder,
              "data-models",
              "yolov3_number-plate-dataset-imageai_mAP-0.57145_epoch-11.pt",
          )
      )
      detector.setJsonPath(
          os.path.join(
              test_folder,
              "data-json",
              "number-plate-dataset-imageai_yolov3_detection_config.json",
          )
      )
      detector.loadModel()
      video_path = detector.detectObjectsFromVideo(
          input_file_path=video_file,
          output_file_path=video_file_output,
          save_detected_video=True,
          frames_per_second=30,
          log_progress=True,
      )
  
      assert os.path.exists(video_file_output + ".mp4")
      assert isinstance(video_path, str)
  
      delete_cache([video_file_output + ".mp4"])
  
file_path: ImageAI/test/test_custom_video_detection.py
imports: import os, sys
  from typing import List
  from numpy import ndarray
  from os.path import dirname
  from mock import patch
  from imageai.Detection.Custom import CustomVideoObjectDetection
label_desc: Use image node_id 2 for calling a global function with example usage: test_video_detection_yolov3() without return types