The process flow

Features are extracted, matched, and tracked by the FeatureMatching class, especially by its public match method. However, before we can begin analyzing the incoming video stream, we have some homework to do. It might not be clear right away what some of these things mean (especially for SURF and FLANN), but we will discuss these steps in detail in the following sections. For now, we only have to worry about initialization:

class FeatureMatching:
     def __init__(self, train_image='salinger.jpg'):
  1. This sets up a SURF detector (see the next section for details) with a Hessian threshold between 300 and 500:
    self.min_hessian = 400
    self.SURF = cv2.SURF(self.min_hessian)
  2. We load a template of our object of interest (self.img_obj), or print ...

Get OpenCV with Python Blueprints now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.