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]