さまざまなqrコード スキャンモードでQRコードを読み取る方法
2025年、より多くの製品がデジタル化され、常時オンラインアクセスが可能になるにつれ、QRコードの読み取りは日常的な作業となりました。 必要なデータをコンパクトな読み取り専用のインプリントに保存することは今や標準となっており、開発者はさまざまな環境でその情報を抽出する効果的な方法を必要としています。
IronQRはQRコードに3つの読み取りオプションを提供しています。
このハウツーガイドでは、3つの方法すべてについて、わかりやすい例を挙げて説明します。 まだご覧になっていない方は、画像からQRコードを読み取る方法、または独自のQRコードを作成する方法について、以前のガイドをご覧ください。
さまざまなスキャンモードでQRコードを読み取る方法
- 高度なスキャン オプションで QR コードを読み取る C# ライブラリをダウンロードする。
- ターゲット画像ファイルを読み込む
- 画像と必要な`QrScanMode`を渡す`QrImageInput`を初期化します。
- `QrReader`クラスをインスタンス化し、入力オブジェクトを`Read`メソッドに渡します。
- 結果を取得して、デコードされた `Value` テキストにアクセスするか、座標データの `Points` 配列を繰り返し処理します。
QRコードのスキャンモードを理解する
IronQR は、QrScanMode 列挙を通じて 3 つの強力なスキャン モードを提供します。
-自動モード(QrScanMode.Auto): 機械学習検出と基本スキャンアルゴリズムを組み合わせて、最高の精度と信頼性を実現します。
-基本スキャンモードのみ(QrScanMode.OnlyBasicScan): QR コードがはっきりと見える場合に、従来の画像処理技術を使用して高速で信頼性の高いスキャンを実行します。
-検出モデルモード(QrScanMode.OnlyDetectionModel):機械学習を活用してQRコードの位置を検出し、座標データの抽出に最適です。
各スキャニング方法を詳しく見ていきましょう。
基本的なスキャン モードのみ
ベーシックスキャンモードのみ、機械学習を使用しない従来の画像処理アルゴリズムを使用します。 この方法は、QRコードがはっきりと見え、うまく配置されていれば、迅速かつ効率的です; しかし、3つの角の四角が読み取れれば、破損したQRでも機能します。
:path=/static-assets/qr/content-code-examples/how-to/read-qr-codes-with-scan-modes-basic.cs
using IronQr;
using IronQr.Enum;
using IronSoftware.Drawing;
using System.IO;
using System.Linq;
// Load the image
var bmp = AnyBitmap.FromFile("damaged-qr.png");
// Create scan input using Only Basic Scan mode
var input = new QrImageInput(bmp, QrScanMode.OnlyBasicScan);
// Get the result
var result = new QrReader().Read(input).FirstOrDefault();
// Save the output to a text file
File.WriteAllText("basic-scan-output.txt", result.Value);
Imports IronQr
Imports IronQr.Enum
Imports IronSoftware.Drawing
Imports System.IO
Imports System.Linq
' Load the image
Dim bmp = AnyBitmap.FromFile("damaged-qr.png")
' Create scan input using Only Basic Scan mode
Dim input = New QrImageInput(bmp, QrScanMode.OnlyBasicScan)
' Get the result
Dim result = (New QrReader()).Read(input).FirstOrDefault()
' Save the output to a text file
File.WriteAllText("basic-scan-output.txt", result.Value)
スキャン入力
保存されたテキストファイル
自動スキャンモード
自動スキャン モードはデフォルト (QrScanMode の場合) であり、最も汎用性の高いオプションです。 機械学習による検出と従来のスキャニングアルゴリズムを自動的に組み合わせ、さまざまな画像条件において可能な限り最良の結果を提供します。
この例では、イメージが読み込まれ、Auto モードがアクティブ化されます。 次に画像をスキャンし、見つかったすべてのQRコードをリストに収集します。最後に、resultsコレクションを調べ、各値のテキスト(この場合はURLのみ)をコンソールに出力します。
:path=/static-assets/qr/content-code-examples/how-to/read-qr-codes-with-scan-modes-auto.cs
using System;
using IronQr;
using IronQr.Enum;
using IronSoftware.Drawing;
// Load the image file
var bmp = AnyBitmap.FromFile("cup.png");
// Create scan input using Auto Scan mode
var input = new QrImageInput(bmp, QrScanMode.Auto);
// Scan and read all QR codes
var results = new QrReader().Read(input);
// Initialize a counter to track the number of QR codes
int count = 1;
// Loop through each discovered QR code
foreach (var result in results)
{
Console.WriteLine($"QR {count}: {result.Value}");
count++;
}
Imports System
Imports IronQr
Imports IronQr.Enum
Imports IronSoftware.Drawing
' Load the image file
Dim bmp = AnyBitmap.FromFile("cup.png")
' Create scan input using Auto Scan mode
Dim input = New QrImageInput(bmp, QrScanMode.Auto)
' Scan and read all QR codes
Dim results = New QrReader().Read(input)
' Initialize a counter to track the number of QR codes
Dim count As Integer = 1
' Loop through each discovered QR code
For Each result In results
Console.WriteLine($"QR {count}: {result.Value}")
count += 1
Next
スキャン入力
コンソールの表示
カフェのウェブサイトのURLは、IronQR経由で写真をスキャンした後に記録されます。
検出モデルモード
検出モデルモードは、画像内のQRコードの位置を検出するために特別に機械学習を使用します。 このような品質により、空間解析やコンピュータ・ビジョンのアプリケーションでは非常に貴重なものとなります。 使用される座標系の原点は (0, 0) です。
一般的に、QRスキャナーは3つのファインダーパターンに依存する標準的なデコードアルゴリズムを使用しますが、このモデルはIDの4つの頂点すべてをキャプチャします。 result オブジェクトには、位置データを取得するために反復処理する Points コレクションが含まれています。
コードは、画像内の位置値の検出を示すために、前の例のカップの写真を再利用しています。
:path=/static-assets/qr/content-code-examples/how-to/read-qr-codes-with-scan-modes-detection-model.cs
using System;
using IronQr;
using IronQr.Enum;
using IronSoftware.Drawing;
using System.Linq;
// Load the image
var bmp = AnyBitmap.FromFile("cup.png");
// Create scan input using Detection Model mode
var input = new QrImageInput(bmp, QrScanMode.OnlyDetectionModel);
// Read QR code
var result = new QrReader().Read(input).FirstOrDefault();
// Print position data
if (result != null)
{
if (result.Points != null)
{
foreach (var point in result.Points)
{
Console.WriteLine($"Point: X={point.X}, Y={point.Y}");
}
}
}
Imports System
Imports IronQr
Imports IronQr.Enum
Imports IronSoftware.Drawing
Imports System.Linq
' Load the image
Dim bmp = AnyBitmap.FromFile("cup.png")
' Create scan input using Detection Model mode
Dim input = New QrImageInput(bmp, QrScanMode.OnlyDetectionModel)
' Read QR code
Dim result = (New QrReader()).Read(input).FirstOrDefault()
' Print position data
If result IsNot Nothing Then
If result.Points IsNot Nothing Then
For Each point In result.Points
Console.WriteLine($"Point: X={point.X}, Y={point.Y}")
Next
End If
End If
ラベル付きカップ画像
ラベル付きコンソール
スキャン方法の比較
| 機能 (`QRScanMode`) | ベーシックスキャン (`OnlyBasicScan`) | オートスキャン (`Auto`) | 検出モデル (`OnlyDetectionModel`) |
|---|---|---|---|
| **出力** | デコードされたテキスト(値) | デコードされたテキスト(値) | 座標(ポイント) |
| **アルゴリズム**。 | 従来の翻訳のみ | ハイブリッド(ML+トラディショナル) | 機械学習のみ |
| **フォーカス** | スピード | 読みやすさ / 検索性 | ローカリゼーション / コンピュータビジョン |
結論
IronQRの3つのスキャンモードはどのようなQRコード読み取りシナリオにも柔軟に対応します:
- 自動スキャン:一般的な使用における最大限の精度と信頼性
- Basic Scan: 高品質画像のためのスピードと効率性
- 検出モデル:空間アプリケーションのための位置認識
各手法の長所を理解することで、QRコード読み取り実装を特定の要件に合わせて最適化することができます。 包括的なデータ抽出、高速処理、正確な位置検出など、IronQRにお任せください。
より多くの例と詳細なAPI情報については、IronQRドキュメントをご覧いただくか、GitHubのコード例をご覧ください。
よくある質問
QRコードの読み取りには、どのようなスキャンモードがありますか?
IronQRは自動スキャン、手動スキャン、バッチスキャンなど様々なスキャンモードを提供し、様々なシナリオでQRコードを効率的に読み取ります。
C#プロジェクトでQRコードスキャンを実装するにはどうすればよいですか?
IronQRライブラリを統合することで、C#プロジェクトにQRコードスキャンを実装することができます。
QRコードスキャンにIronQRを使うメリットは何ですか?
IronQRは高精度、高速処理、様々なスキャンモードをサポートしており、C#プロジェクトでのQRコードスキャンに最適です。
IronQRを使って一度に複数のQRコードを読み取ることはできますか?
IronQRはバッチスキャンモードに対応しており、複数のQRコードを同時に読み取ることができます。
IronQRは様々なソースからのQRコードのスキャンに対応していますか?
IronQRは画像、PDF、ライブカメラフィードなど様々なソースからQRコードをスキャンすることができ、開発者に柔軟性を提供します。
IronQRは異なる向きのQRコードを扱えますか?
IronQRはQRコードの向きに関係なく正確に読み取るよう設計されており、信頼性の高いスキャン結果を保証します。
IronQRの自動スキャンモードはどのように機能しますか?
IronQRの自動スキャンモードは、QRコードをインテリジェントに検出し、手動入力の必要なく読み取り、スキャンプロセスを合理化します。
IronQRをQRコードスキャンに使うにはどのようなプログラミングスキルが必要ですか?
C#プログラミングの基本的な知識があれば、IronQRをQRコードスキャニングに使用することができます。
IronQRの試用版はありますか?
IronQRは試用版を提供しており、開発者は購入前に機能やスキャンモードを試すことができます。
IronQRライブラリはどこでダウンロードできますか?
IronQRライブラリはIron Softwareのウェブサイトからダウンロードできます。

