How it works...

If you look at any QR code, you'll see that it has special markers on each of its corners. These markers are just white and black squares inside of each other. So, to detect and localize the QR code, we need to detect these three special markers. We can do that with cv2.findContours. We need to exploit the information inside of the central black square; there are no other objects, and consequently, no other contours. The next white square contains only one contour. And again, the next black square contains only two contours. You may remember that cv2.findContours can return a hierarchy of contours on the image. We just need to find the described structure of the nested contours. Also, our markers have square shapes, and we ...

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.