computer_science:computer_vision:opencv:object_identification_tensorflow_opencv_imageai_yolo

Object Detection with Tensorflow, OpenCV, ImageAI and YOLO

Be sure to have the requirements installed.

import cv2 as cv #Loads ComputerVision / OpenCV
from imageai.Detection import ObjectDetection as od # Loads ImageAI
 
import numpy as np # Imports NumPY
import requests as req # Imports Requests
import os as os # Imports OS Module
url = 'https://p7.hiclipart.com/preview/124/937/193/architectural-engineering-engineer.jpg' # Image to be Downloaded
r = req.get(url) # Pass the URL as a Request.Get
with open('testimage.jpg', 'wb') as outfile: # Writes the Image to the system
    outfile.write(r.content)
img = cv.imread('testimage.jpg') # Reads an image with OpenCV
window_name = 'image' # Defines a Window Name
cv.imshow(window_name, img) # Show the Image on a Window
cv.waitKey(0) # Wait for any Key to be pressed
cv.destroyAllWindows() # Destroy (all) previous created Windows

Now that we tested that OpenCV is working let's edit that last piece of code, change it to a function, so we can reutilize it often. The complete code until now should look like this:

import cv2 as cv
from imageai.Detection import ObjectDetection as od
 
import numpy as np
import requests as req
import os as os
 
def showImage(img):
    window_name = 'image'
    cv.imshow(window_name, img)
    cv.waitKey(0)
    cv.destroyAllWindows()

Run this code to download 2 type of images that we will be using. One being only of people and the other to download images of hats. This images will be contained on they own folder since we will be using that to train the Machine Learning.

  • computer_science/computer_vision/opencv/object_identification_tensorflow_opencv_imageai_yolo.txt
  • Last modified: 2020/08/07 16:37
  • by carlossousa