class QRCode -- QRCode オブジェクト

qrcode オブジェクトは、Image.find_qrcodes() によって返される attrtuple です。各インスタンスはデコードされた QR コードを記述します。すなわち、そのバウンディングボックス、デコードされたペイロード、デコーダのメタデータ(バージョン、ECC レベル、マスク、データ型、ECI)、検出された 4 つのコーナー、そしてペイロードのエンコーディングを示す便利なブール値フラグです。

フィールドは属性名(qrcode.payload)またはインデックス(qrcode[0])でアクセスできます。このオブジェクトには公開されたコンストラクタはありません。

class image.qrcode

このオブジェクトを作成するには Image.find_qrcodes() を呼び出してください。

バウンディングボックスとコーナー

x

バウンディングボックスの左上 x 座標。ピクセル単位。整数。インデックス [0]

y

バウンディングボックスの左上 y 座標。ピクセル単位。整数。インデックス [1]

w

バウンディングボックスの幅。ピクセル単位。整数。インデックス [2]

h

バウンディングボックスの高さ。ピクセル単位。整数。インデックス [3]

corners

QR コードの検出された 4 つのコーナーを表す (x, y) 整数タプルの 4 要素タプル。左上のコーナーから時計回りにソートされています。インデックス [10]

rect

バウンディングボックスの (x, y, w, h) 4 要素タプル。Image.draw_rectangle()Image.crop() などの描画・切り抜きメソッドへ直接渡すのに適しています。インデックス [15]

デコードされたペイロード

payload

デコードされたペイロード文字列。インデックス [4]

デコーダのメタデータ

version

QR コードのバージョン。1 -- 40。バージョンが高いほど多くのデータをエンコードでき、モジュールが大きくなります。整数。インデックス [5]

ecc_level

誤り訂正レベル。0 -- 3(L / M / Q / H に対応)。値が高いほど誤り訂正用に多くのコードワードが確保されます。整数。インデックス [6]

mask

マスクパターン。0 -- 7。QR コードのエンコーダがデコーダの混乱を最小化するモジュールパターンを選ぶために使用します。整数。インデックス [7]

data_type

デコーダが報告したペイロードのエンコーディング。次のビットマスク値のいずれかです: 1 数字、2 英数字、4 バイナリ、8 漢字。より分かりやすい形式については下記のフラグごとの属性を参照してください。整数。インデックス [8]

eci

拡張チャンネル解釈(Extended Channel Interpretation)の値。ペイロード内のバイトに使用されたテキストエンコーディング(例: UTF-8 と ISO-8859-1 の違い)をエンコードします。整数。インデックス [9]

エンコーディングフラグ

is_numeric

data_type が数字ペイロードを示している場合は True。インデックス [11]

is_alphanumeric

data_type が英数字ペイロードを示している場合は True。インデックス [12]

is_binary

data_type がバイナリペイロードを示している場合は True。これが True の場合、テキストエンコーディングを判断するには eci を確認してください。インデックス [13]

is_kanji

data_type が漢字ペイロードを示している場合は True。漢字シンボルは 1 文字あたり 10 ビットで、MicroPython はこのエンコーディングを解析しません。ペイロードはバイト配列として扱う必要があります。インデックス [14]