【Python/OpenCV4】QRコードの検出・読み取り

Python版OpenCVでQRコードを検出・読み取りする方法をソースコード付きでまとめました。

QRコードの検出・読み取り(cv2.QRCodeDetector)

OpenCVでは「cv2.QRCodeDetector」でQRコードをロードして解析できます。

サンプルコード

サンプルプログラムのソースコードです。

# -*- coding: utf-8 -*-
import cv2

# 入力画像のロード
img = cv2.imread('input.png')

# データ、検出領域の四隅の座標、QRコードのバージョン情報を取得
qr = cv2.QRCodeDetector()
data, points, straight_qrcode = qr.detectAndDecode(img)

print('データ:', data)
print("バージョン:", ((straight_qrcode.shape[0] - 21) / 4) + 1)

"""
データ: https://algorithm.joho.info
バージョン: 2.0
"""

【Python】QRコードの生成」でQRコードを作成して読み込ませました。

関連ページ

【Python版OpenCV入門】画像処理の基礎〜応用例までサンプルコード付きで徹底解説
Python版OpenCVで画像処理プログラミングを行う方法を入門者向けにソースコード付きで解説するページです。
【画像処理入門】アルゴリズム&プログラミング
画像処理における基本的なアルゴリズムとその実装例(プログラム)についてまとめました。

コメント

  1. 囚われの羊 より:

    このコードでは、読み込むQRコードが日本語の場合、UnicodeDecodeErrorとなりQRコードが読み込めません。この場合どうすればいいのか、サイトの更新をお願いします。