How it works

In this recipe, we open a video, detect the initial keypoints using the cv2.goodFeaturesToTrack function that we used earlier, and start tracking points using the sparse Lucas-Kanade optical flow algorithm, which has been implemented in OpenCV with the cv2.calcOpticalFlowPyrLK function. OpenCV implements a pyramidal version of the algorithm, meaning that the optical flow is first calculated in an image of a smaller size, and then refined in a bigger image. The pyramid size is controlled with the maxLevel parameter. The function also takes parameters of the Lucas-Kanade algorithm, such as window size (winSize) and termination criteria. The other parameters are previous and current frames, and keypoints from the previous frame. ...

Get OpenCV 3 Computer Vision with Python Cookbook 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.