Link Search Menu Expand Document

Object Detection

  1. Overview
  2. Object Detection SSD
    1. Inference Engine and Algorithm
    2. Running Object Detection SSD
      1. Using Images for Inference
        1. Default Image
        2. Custom Image
      2. Using Video Source for Inference
        1. Video File
        2. Video Camera or Webcam
    3. Extra Parameters
  3. Object Detection DNN
    1. Inference Engine and Algorithm
    2. Running Object Detection DNN
      1. Using Images for Inference
        1. Default Image
        2. Custom Image
      2. Using Video Source for Inference
        1. Video File
        2. Video Camera or Webcam
    3. Extra Parameters
  4. Object Detection YOLOv3
    1. Inference Engine and Algorithm
    2. Running Object Detection YOLOv3
      1. Using Images for Inference
        1. Default Image
        2. Custom Image
      2. Using Video Source for Inference
        1. Video File
        2. Video Camera or Webcam
    3. Extra Parameters
  5. References

Overview

Object detection is a computer technology related to computer vision and image processing that deals with detecting instances of semantic objects of a certain class (such as humans, buildings, or cars) in digital images and videos. Well-researched domains of object detection include face detection and pedestrian detection. Object detection has applications in many areas of computer vision, including image retrieval and video surveillance 1 .

Object Detection SSD

Inference Engine and Algorithm

tfliteframework

This demo uses:

  • TensorFlow Lite as an inference engine 2 ;
  • Single Shot Detection as default algorithm 3 .

More details on eIQ™ page.

Running Object Detection SSD

Using Images for Inference

Default Image
  1. Run the Object Detection demo using the following line:
    # pyeiq --run object_detection_tflite
    
    • This runs inference on a default image: detection
Custom Image
  1. Pass any image as an argument:
    # pyeiq --run object_detection_tflite --image=/path_to_the_image
    

Using Video Source for Inference

Video File
  1. Run the Object Detection using the following line:
    # pyeiq --run object_detection_tflite --video_src=/path_to_the_video
    
    • This runs inference on a video file: detection_video
Video Camera or Webcam
  1. Specify the camera device:
    # pyeiq --run object_detection_tflite --video_src=/dev/video<index>
    

Extra Parameters

  1. Use –help argument to check all the available configurations:
    # pyeiq --run object_detection_tflite --help
    

Object Detection DNN

Inference Engine and Algorithm

opencvframework

This demo uses:

  • OpenCV DNN as an inference engine 4 ;
  • Deep Neural Networks as default algorithm 5 .

More details on eIQ™ page.

Running Object Detection DNN

Using Images for Inference

Default Image
  1. Run the Object Detection demo using the following line:
    # pyeiq --run object_detection_dnn
    
    • This runs inference on a default image: image_dnn
Custom Image
  1. Pass any image as an argument:
    # pyeiq --run object_detection_dnn --image=/path_to_the_image
    

Using Video Source for Inference

Video File
  1. Run the Object Detection using the following line:
    # pyeiq --run object_detection_dnn --video_src=/path_to_the_video
    
Video Camera or Webcam
  1. Specify the camera device:
    # pyeiq --run object_detection_dnn --video_src=/dev/video<index>
    

Extra Parameters

  1. Use –help argument to check all the available configurations:
    # pyeiq --run object_detection_dnn --help
    

Object Detection YOLOv3

Inference Engine and Algorithm

tfliteframework

This demo uses:

  • TensorFlow Lite as an inference engine 2 ;
  • YOLOv3 as default algorithm 6 .

More details on eIQ™ page.

NOTE: This demo needs a quantized model to work properly.

Running Object Detection YOLOv3

Using Images for Inference

Default Image
  1. Run the Object Detection demo using the following line:
    # pyeiq --run object_detection_yolov3
    
    • This runs inference on a default image: image_yolov3
Custom Image
  1. Pass any image as an argument:
    # pyeiq --run object_detection_yolov3 --image=/path_to_the_image
    

Using Video Source for Inference

Video File
  1. Run the Object Detection using the following line:
    # pyeiq --run object_detection_yolov3 --video_src=/path_to_the_video
    
Video Camera or Webcam
  1. Specify the camera device:
    # pyeiq --run object_detection_yolov3 --video_src=/dev/video<index>
    

Extra Parameters

  1. Use –help argument to check all the available configurations:
    # pyeiq --run object_detection_yolov3 --help
    

References

  1. https://en.wikipedia.org/wiki/Object_detection 

  2. https://www.tensorflow.org/lite  2

  3. https://arxiv.org/abs/1512.02325 

  4. https://github.com/opencv/opencv/tree/master/samples/dnn 

  5. https://docs.opencv.org/master/d2/d58/tutorial_table_of_content_dnn.html 

  6. https://pjreddie.com/darknet/yolo/