バーコードツールズ

QRコード機械学習:開発者向けチュートリアル

ジョルディ・バルディア
ジョルディ・バルディア
2023年8月29日
共有:

クイックレスポンス(QR)コードは、情報の共有やアクセスの方法を革新し、現代社会の重要な部分となっています。 これらの二次元バーコードは、スマートフォンのカメラを使用してスキャンすることにより、URL、連絡先の詳細、ウェブサイトのURL、製品の詳細など保存されている情報を迅速に取得できる黒と白の正方形のマトリクスで構成されています。 しかし、技術が進化するにつれて、QRコードの機能も進化します。 機械学習(ML)は、QRコードの生成、認識、デコードプロセスを強化する強力なツールとして登場し、ユーザー体験の向上と機能性の向上に繋がっています。

情報とデータ交換の世界は、QRコードとバーコードの広範な使用によって変革されました。 これらの二次元コードはデジタルコンテンツへの迅速なアクセスを提供し、さまざまな業界でさまざまな目的に使用されます。 しかし、特に多様な種類のコードに対処する場合、QRコードとバーコードを区別することは困難である場合があります。 機械学習 (ML) と .NET/C# フレームワークの力を活用することで、開発者は QR コードとバーコードを正確に分類するインテリジェント システムを作成し、データ処理を合理化しユーザー エクスペリエンスを向上させることができます。 IronBarcodeのデコード機能を統合することで、認識されたコードからの正確なコンテンツ抽出を可能にし、ソリューションをさらに強化します。

この記事では、与えられた入力をバーコードまたはQRコードとして分類するモデルを訓練し、その後、IronBarcodeを使用して入力コードをデコードします。

ML.NET モデルビルダーを使用したQRコード分類

Model Builderは、Visual Studioに統合されたツールで、直感的なインターフェースを提供することで機械学習モデルの構築プロセスを簡素化します。 QRコードとバーコードを区別する分類モデルを作成するために、Model Builderを使用します。 分類が完了したら、IronBarcodeを統合して認識されたコードをデコードします。

ステップ1: データ収集

あらゆる種類のモデルを訓練するための最初のステップはデータ収集です。 モデルのトレーニングのためにデータが必要です。 私はデータをKaggleからダウンロードしました。 お好みのソースからダウンロードできます。 データセットをダウンロードした後、メインディレクトリを作成し、そのメインディレクトリに両方のデータセットを入れてください。 データは二つのサブディレクトリに整理されています:

  1. バーコード

  2. QRコード

    QRコード機械学習(開発者チュートリアル):図1

    次のステップはVisual Studioを開いて、新しいMachine Learning Modelを作成することです。

ステップ #2: Visual Studioでプロジェクトを作成し、新しい機械学習モデルを追加します

Visual Studioでプロジェクトを作成します。 プロジェクトは、ASP.NET Web API、ASP.NET MVC、WEBフォーム、またはコンソールアプリケーションなど、どのタイプでもかまいません。 この例では、コンソールアプリケーションを使用しています。 ソリューション エクスプローラーでプロジェクトを右クリックします。 以下のように、[追加] > [機械学習モデル]を選択します。

QRコード機械学習(開発者チュートリアル):図2

機械学習モデルの名前を入力して、「追加」ボタンをクリックしてください。

QRコード機械学習(開発者向けチュートリアル):図3

ステップ #3: シナリオを選択

機械学習モデルファイルを追加した後、新しいウィンドウが表示されます。下にスクロールして、画像分類を選択します。 画像分類は、このチュートリアルで使用するコンピュータビジョン技術の一つです。 私たちは画像認識の代わりに画像分類を選択しています。これは、与えられた画像から認識する必要はなく、QRコードとバーコードを区別するだけでよいためです。

QRコード機械学習(開発者チュートリアル):図4

ステップ#4: 環境を選択

シナリオを選択した後の次のステップは、環境を選択することです。 モデルをトレーニングするには、ローカルシステムかAzure Cloudのいずれかを選択できます。 Azureを環境として使用するためには、Azureの有効なサブスクリプションが必要です。

ステップ #5: データを選択

このステップでは、ステップ#1で収集したデータを渡す必要があります。モデビルダーが要求する通りに、ステップ#1でデータをサブカテゴリーに分けて整理しています。

データセットのメインディレクトリのパスを選択フォルダオプションで指定してください。 次のようにデータをプレビューすることができます。

QRコード機械学習(開発者チュートリアル):図5

データプレビューのQRコードタブをクリックすることで、QRコードフォルダーも表示できます。

QRコード機械学習(開発者向けチュートリアル):図6

データを選択した後、次へボタンをクリックしてください。それでトレーニング画面に移動します。

ステップ #6: モデルを訓練する

「モデルのトレーニングを開始」をクリックすると、以下のようにトレーニングが開始されます。 Visual Studioが管理者モードで開かれていないことを確認してください。そうしないとエラーが発生します。

QRコード機械学習(開発者チュートリアル):図7

トレーニングが開始され、時間がかかります。トレーニングの所要時間はシステムの能力に応じて異なります。 Model BuilderはAutoMLを使用します。 それは適切な機械学習技術、誤り訂正レベル、パターン認識、ノイズ低減、コントラスト調整、学習プロセス、その他の設定を自動的に使用します。

ステップ#7: モデル評価

トレーニング後、テストデータを渡してモデルのパフォーマンスを評価し、正確な分類を確保します。

ステップ#8: モデルを利用する

モデルがトレーニングされ評価されると、それをエクスポートして利用することができます。 私たちのユースケースでは、QRコードをバーコードから分類し、そのエンコードされたデータを読み取る必要があります。 機械学習モデルはQRコードやバーコードをデコードできず、単に分類するだけなので、データをデコードするためのサードパーティのライブラリが必要です。

IronBarcodeは、QRコードとバーコードの両方をデコードするのに理想的なライブラリです。 単一のライブラリーを使用して、両方のタイプのコードを簡単にデコードすることができます。 さらに進む前に、IronBarcodeについて少し紹介しましょう。

ジョルディ・バルディア
ソフトウェアエンジニア
ジョルディは、Iron Softwareでのスキルを活かしていないときには、ゲームプログラミングをしており、Python、C#、C++に最も堪能です。彼は製品テスト、製品開発、研究の責任を共有しており、継続的な製品改善に大きな価値をもたらしています。この多様な経験は彼を常に挑戦的で魅力的に保ち、彼はIron Softwareで働く一番好きな側面の一つだと言っています。ジョルディはフロリダ州マイアミで育ち、フロリダ大学でコンピューターサイエンスと統計学を学びました。
< 以前
GoogleフォームのQRコードを作成する方法
次へ >
QRコード生成ソフトウェア(無料およびオンラインツール)