機械学習とニューラルネットワーク - ページ 38

 

YOLOV8 と EasyOCR を使用した自動ナンバー プレート認識 (画像とビデオ)



YOLOV8 と EasyOCR を使用した自動ナンバー プレート認識 (画像とビデオ)

この YouTube ビデオでは、プレゼンターが YOLOV8 と EasyOCR を使用して自動ナンバー プレート認識を実装する方法を説明しています。 Google Colab ノートブックと GitHub リポジトリを使用して実装プロセスを視聴者に案内し、段階的な手順を示し、依存関係をインストールして必要なデータセットをダウンロードする方法を説明します。プレゼンターは、モデルの成功率と検証プロセスを実演し、EasyOCR を使用してナンバー プレート番号を読み取る方法についても説明します。彼らはスクリプトを実行する最終ステップをたどり、いくつかのエラーに遭遇して修正し、印象的な結果をもたらしました。ナンバー プレート認識スクリプトは、Patreon サポーター向けにプレゼンターの GitHub リポジトリでのみ提供されますが、視聴者は、predict.py ファイルに加えられた変更について知ることができ、同様の結果が得られます。

  • 00:00:00 ビデオのこのセクションでは、プレゼンターが、YOLOV8 と EasyOCR を使用してナンバー プレートの検出と認識を実装する方法を示します。プレゼンターは、Google Colab ノートブックと GitHub リポジトリを使用して、視聴者に実装プロセスを案内します。ノートブックには、コードを実行するための段階的な手順が含まれており、GitHub リポジトリは、月に 5 ドルを寄付する Patreon サポーターに複数の限定プロジェクトへのアクセスを提供します。プレゼンターは、必要な依存関係をインストールし、Roboflow から必要なデータセットをダウンロードして、ナンバー プレート検出用のカスタム モデルをトレーニングする方法についても説明します。最後に、プレゼンターは、モデルがさまざまなクラスをどの程度うまく処理したかを明らかにする混同マトリックスを示します。ナンバー プレートの検出の成功率は 84% です。

  • 00:05:00 このセクションでは、スピーカーは検証セットのモデルの結果について説明します。これは、エポック数が増加するにつれて、損失が減少し、平均精度と再現率スコアが増加することを示しています。講演者は、保存されたモデルを Google ドライブからダウンロードしてカスタム ビデオで検証する方法も示し、50 の IOU で 0.926 の平均精度を達成します。ただし、このセクションの焦点は、検出されたプレートからのナンバー プレート番号、および OCR リーダーと画像座標を含めるために predict.py ファイルに加えられた調整。

  • 00:10:00 このセクションでは、YOLOv8 と EasyOCR を使用して自動ナンバー プレート認識を実装する方法について説明します。このビデオでは、ナンバー プレートのテキストを読みやすくするために、ナンバー プレートの画像をトリミングしてグレースケールに変換するプロセスについて説明しています。 EasyOCR を使用して、"reader.read_text(gray)" と書き込んで、ナンバー プレートのグレースケール イメージからテキストを読み取る方法を示しています。最後に、スクリプトをテストして、エラーが発生するかどうかを確認します。

  • 00:15:00 このセクションでは、講演者は、YOLOv8 および EasyOCR モデルを使用して、ナンバー プレート認識スクリプトを実行する最終ステップを順を追って説明します。コードでいくつかのエラーが発生しましたが、なんとか修正してスクリプトを正常に実行しました。出力ビデオは、モデルがナンバー プレートを検出し、EasyOCR を使用してテキストを読み取るという印象的な結果を示しています。ナンバー プレート認識スクリプトは、講演者の GitHub リポジトリで Patreon サポーター向けに提供されますが、視聴者はビデオの predict.pi ファイルに加えられた変更について学習して、同様の結果を得ることができます。
Automatic License Plate Recognition using YOLOV8 and EasyOCR ( Images & Videos)
Automatic License Plate Recognition using YOLOV8 and EasyOCR ( Images & Videos)
  • 2023.02.04
  • www.youtube.com
#yolo #yolov8 #objectdetection #license #license #computervision #machinelearning #artificialintelligence Automatic License Plate Recognition using YOLOv...
 

カスタム データセットで YOLOv8 を使用したリアルタイムのオブジェクト検出と追跡: 完全なチュートリアル



カスタム データセットで YOLOv8 を使用したリアルタイムのオブジェクト検出と追跡: 完全なチュートリアル

このビデオ チュートリアルでは、発表者は車、トラック、オートバイ、ピックアップ、飛行機、キャンピングカーの画像を含むカスタム データセットを紹介します。これは、検出と追跡を備えた YOLOv8 の実装を示すために使用されます。バランスの取れたデータセットの重要性を説明し、GitHub リポジトリをナビゲートし、必要な環境をセットアップし、ディープ ソート アルゴリズムを使用してオブジェクト トラッキングを実装するためのステップバイステップの手順を提供します。プレゼンターは、Google ドライブからダウンロードしたデモ ビデオで推論を実行してモデルの精度をテストしながら、混同行列とトレーニングと検証の損失の重要性についても説明します。最後に、関心のある人のためにコラボ ノートブック ファイルを共有します。

  • 00:00:00 ビデオ チュートリアルのこのセクションでは、プレゼンターが、車、トラック、オートバイ、ピックアップ、飛行機、キャンピングカーの約 4680 枚の画像を含む、公開されているマルチクラス データセットを紹介します。データセットは、約 8,389 のアノテーションを持つ車のアノテーションによって過剰に表現されているのに対し、他のアノテーションは非常に少ないため、バランスが取れていません。ただし、このチュートリアルではデータセットが使用されますが、プロジェクトを実装するとき、または公開されているデータセットを使用するときは、データセットのバランスが取れていることを確認することが重要です。このビデオでは、プロジェクトに使用される GitHub リポジトリも紹介し、任意のカスタム データセットでの検出と追跡を行う YOLO V8 を実装するためのステップバイステップの手順を提供します。手順には、リポジトリのクローン作成、依存関係のインストール、Deep Sor,t を使用したオブジェクト トラッキングの実装、およびテスト用のサンプル ビデオのダウンロードが含まれます。

  • 00:05:00 ビデオのこのセクションでは、プレゼンターが画像とトレーニング情報の表示に使用されるライブラリについて説明し、Google Colab を使用して YOLOv8 に必要な環境をセットアップする方法を示します。プレゼンターは、YOLOv8 の GitHub リポジトリのクローンを作成し、必要なライブラリをインストールして、検出フォルダーに移動します。次にプレゼンターは、Roboflow から必要なカスタム データセットをダウンロードし、それを解凍してトレーニング、テスト、および検証フォルダーを取得する方法を示します。

  • 00:10:00 ビデオのこのセクションでは、プレゼンターがディープ ソート アルゴリズムを使用したオブジェクト トラッキングの実装について説明します。彼らはディープ ソート ファイルをダウンロードし、それらを解凍して混同行列を表示します。混同行列は、モデルがさまざまなクラスをどれだけうまく処理できるかを示すグラフです。混同行列は、モデルが 67% の確率でキャンピングカーを正しく検出することを示していますが、単純な車として分類することもあると説明しています。また、トレーニングと検証の損失の重要性、および検証バッチでモデル予測をチェックする方法についても説明します。最後に、カスタム モデルの重みを Google ドライブからダウンロードして検証し、IOU が 50% の場合に平均精度が高いことを示しています。

  • 00:15:00 このセクションでは、プレゼンターは、Google ドライブからダウンロードしたデモ ビデオを使用して、構築されたモデルで推論を実行することにより、モデルの精度をテストしています。動画では高速道路を走る乗用車やトラックが映っており、オブジェクトごとに固有のIDが割り当てられてモデルが正常に動作しており、追跡も可能であることが分かります。このチュートリアルで使用されるコラボ ファイルは、GitHub リポジトリで入手できます。別のビデオもテストされ、結果は同様に良好ですが、改善が必要な場合もあります。プレゼンターは、カスタム データセットで YOLOv8 を使用してオブジェクト検出追跡を実装したことを共有し、関心のある人のためにコラボ ノートブック ファイルを共有します。
Real-Time Object Detection and Tracking using YOLOv8 on Custom Dataset: Complete Tutorial
Real-Time Object Detection and Tracking using YOLOv8 on Custom Dataset: Complete Tutorial
  • 2023.01.22
  • www.youtube.com
#yolo #yolov8 #objectdetection #objectracking #opencvpython #opencv #computervision #machinelearning #artificialintelligence #deepsort #multiobjecttracking#...
 

カスタム データセットで YOLOv8 を使用したリアルタイム オブジェクト セグメンテーションと追跡: 完全なチュートリアル



カスタム データセットで YOLOv8 を使用したリアルタイム オブジェクト セグメンテーションと追跡: 完全なチュートリアル

このビデオ チュートリアルは、リアルタイムのオブジェクト セグメンテーションとカスタム データセットの追跡に YOLOv8 を使用するための包括的なガイドです。このチュートリアルでは、データセットのインポート、YOLOv8 と Deep Sort アルゴリズムを使用したカスタム モデルのトレーニング、デモ ビデオでのモデルのテストなど、プロセス全体を説明します。スピーカーは、実装に必要なコードとライブラリを提供し、モデルの予測結果を紹介します。また、混同行列についても説明し、GitHub の出力ビデオと極ファイルにアクセスするためのリンクを提供します。全体として、このチュートリアルは、YOLOv8 を使用したオブジェクトのセグメンテーションと追跡について学びたい人にとって優れたリソースです。

  • 00:00:00 このセクションのビデオ チュートリアルでは、カスタム データセットのセグメンテーションと追跡に YOLOv8 を使用する方法について説明します。このチュートリアルでは、実装を段階的に進め、リポジトリを使用して実装を支援します。プレゼンターは、必要なライブラリと依存関係をインポートする方法、および Roboflow からドローン トラフィック データセットにアクセスしてダウンロードする方法について説明します。データセットのインポートに必要なコードも、コードを正常に実行する方法の説明とともに提供されます。核となる概念を完全に理解するには、完全なビデオを見ることが重要であることを強調します。

  • 00:05:00 このセクションでは、スピーカーは、YOLOv8 とディープ ソート アルゴリズムを使用してオブジェクト トラッキング用のカスタム モデルをトレーニングする方法を説明します。彼らは、Roboflow から Google colab ノートブックにデータセットをダウンロードし、Deep Sort ファイルをダウンロードし、カスタム モデルをトレーニングして、自転車、バス、車、大型トラックなどのさまざまなクラスのオブジェクトを検出する手順について言及しています。講演者は、検証バッチでのモデルの予測結果を共有し、モデルの重みを Google ドライブに保存し、デモ ビデオをダウンロードしてモデルのパフォーマンスをテストしました。彼らは、混同行列と、それがさまざまなクラスのオブジェクトのモデルの精度をどのように明らかにするかを説明しています。全体として、このビデオは、カスタム データセットで YOLOv8 を使用したリアルタイムのオブジェクト セグメンテーションと追跡に関する完全なチュートリアルを提供します。

  • 00:10:00 ビデオのこのセクションでは、プレゼンターが 2 つのデモ ビデオでモデルをテストし、結果を紹介します。このモデルは、オブジェクトを正確に検出して追跡し、各オブジェクトに一意の ID を与え、その動きを追跡するための軌跡を作成できます。プレゼンターは、GitHub の出力ビデオと極ファイルにアクセスするためのリンクを提供します。

  • 00:15:00 このセクションでは、スピーカーは、カスタム データセットで YOLOv8 を使用して、オブジェクトのセグメンテーションと追跡プロジェクトの結果を提示します。講演者は出力ビデオを示し、検出が非常に良好であると述べ、視聴者はファイルをダウンロードして結果を自分で確認できます。また、スピーカーは、新しいトピックに関する今後のビデオのために、チャンネルに登録するよう視聴者に思い出させます。
Real Time Object Segmentation and Tracking using YOLOv8 on Custom Dataset: Complete Tutorial
Real Time Object Segmentation and Tracking using YOLOv8 on Custom Dataset: Complete Tutorial
  • 2023.01.25
  • www.youtube.com
#yolo #yolov8 #objectdetection #objectracking #opencvpython #opencv #computervision #machinelearning #artificialintelligence #deepsort #multiobjecttracking#...
 

YOLOv8 を使用した道路標識と信号機の検出と色認識



YOLOv8 を使用した道路標識と信号機の検出と色認識

この YouTube チュートリアルでは、道路標識の検出と色認識に YOLOv8 を使用する方法を紹介しています。プレゼンターは、バランスの取れた画像分布を持つ 17 の異なるクラスの道路標識を含むデータセットを紹介します。 YOLOv8 モデルは 100 エポックにわたってトレーニングおよび微調整されているため、iou50 および ioub50 の平均精度スコアは良好です。プレゼンターは、混同行列を解釈し、検証データセットでモデルを検証する方法を示します。次に、モデルは 2 つのデモ ビデオでテストされ、どちらも正確な検出結果を示しています。全体として、YOLOv8 は道路標識や信号機の検出に適しています。

  • 00:00:00 ビデオ チュートリアルのこのセクションでは、プレゼンターが、道路標識検出に関する YOLOv8 モデルのトレーニングに使用される道路標識データセットを紹介します。このデータセットには、17 の異なるクラスの道路標識が含まれており、トレーニング、検証、およびテスト用に合計 2093 枚の画像が含まれています。データセットはバランスが取れています。つまり、画像の数がわずかに多い緑色のライトを除いて、すべてのクラスに画像がほぼ均等に分布しています。プレゼンターは、RoboFlow から Google Colab ノートブックにデータセットをインポートし、ファイル パスを管理するための Ultralytics と glob ライブラリ、入力画像と出力画像を表示するための画像および表示ライブラリなど、YOLOv8 の実装に必要なライブラリをインストールする方法も示します。プレゼンターは、GitHub リポジトリのクローンを作成するか、pip を介して Ultralytics パッケージからインストールすることにより、YOLOv8 をインストールするためのオプションも提供します。

  • 00:05:00  iou50 は、道路標識の検出と色認識のタスクにおける、トレーニング済みの YOLOv8 モデルのパフォーマンスの優れた指標です。モデルは大規模なデータセットでトレーニングされ、100 エポックにわたって微調整された結果、iou50 の平均精度は 95.8%、ioub 50 の平均精度は 81.3% になりました。平均精度が最も高い最適な重みは、「best.pt」として保存されています。全体として、画像データ セット内の 17 の異なるクラスの道路標識と信号機を検出するための結果は非常に良好です。

  • 00:10:00 ビデオのこのセクションでは、道路標識と信号機の検出と色認識のために YOLOv8 モデルを実行した後、トレーニング フォルダーに保存されたさまざまなファイルについてプレゼンターが説明します。これらのファイルには、混同行列、F1 曲線、精度曲線、再現率曲線、および各エポックのモデル パフォーマンスが含まれています。また、混同行列を解釈する方法と、モデルの最適な重みを使用して検証データセットでモデルを検証する方法も示します。最後に、彼らは、モデルをより長い期間トレーニングすると、結果の平均精度がさらに向上する可能性があることを示唆しています。

  • 00:15:00 ビデオのこのセクションでは、プレゼンターが検証データセット画像でモデルを検証し、印象的な Main Average Precision スコアを取得します。次に、モデルは 2 つのデモ ビデオでテストされ、「左折禁止」、「駐車場」、「赤信号」などの標識を正常に検出します。デモ ビデオは Pixel サイトからダウンロードされ、Google ドライブにアップロードされます。出力ビデオが表示され、正確な検出結果が示されます。全体として、このモデルは YOLOv8 を使用した道路標識と信号機の検出において優れたパフォーマンスを発揮します。
Road Signs and Traffic Lights Detection and Color Recognition using YOLOv8
Road Signs and Traffic Lights Detection and Color Recognition using YOLOv8
  • 2023.03.02
  • www.youtube.com
#yolo #yolov8 #objectdetection #computervision #opencv #opencv #opencvpython #pytorch #python Road Signs and Traffic Lights Detection and Color Recognition u...
 

YOLOv8 を使用したポットホールの検出とセグメンテーション (画像とビデオ)|カスタム データセット |完全なガイド



YOLOv8 を使用したポットホールの検出とセグメンテーション (画像とビデオ)|カスタム データセット |完全なガイド

このビデオでは、YOLOv8 を使用してポットホール検出とセグメンテーション用のカスタム データセットを作成する方法を紹介します。プレゼンターは、画像データのクローン作成と注釈付けの手順を示し、Google Collab を使用してモデルをトレーニングすることを推奨しています。 YOLOv8 に必要な依存関係についても説明し、データ セットの場所を設定してモデルをトレーニングします。このモデルは、検出で 0.532 の平均精度、セグメンテーションで 0.531 の平均精度を達成し、ビデオのくぼみの検出で良好に機能しました。プレゼンターは、カスタム モデルを検証して良好な結果を得た後、ビデオを締めくくります。

  • 00:00:00 ビデオのこのセクションでは、著者が YOLOv8 を使用してポットホール検出とセグメンテーション用のカスタム データセットを作成する方法を示します。著者は、Roboflow を使用して独自のワークスペースとプロジェクトを作成し、データセットを Google Colab にエクスポートできるワークスペースのパブリック プランを選択することの重要性を説明しています。また、ビデオや画像をインポートする方法や、公開されているデータセットを複製して独自のデータセットを補完する方法も示しています。最後に、著者は画像と注釈のクローンを作成する方法を示し、最終的にポットホールの検出とセグメンテーション用の 50 枚の画像のデータセットを作成します。

  • 00:05:00 ビデオのこのセクションでは、プレゼンターが YOLOv8 を使用してポットホールの検出とセグメンテーションのために画像データのクローンを作成し、注釈を付ける方法を実演します。最初に、元のデータセットから残りの 46 枚の画像を複製し、合計 96 枚の画像にします。注釈プロセスでは、点を多角形に接続して、各画像のくぼみの位置を示します。次に、プレゼンターは、注釈を保存して各画像に割り当てる方法を実演します。このプロセスは時間がかかりますが、ビデオで説明されている手順に従うことで簡単に実行できます。

  • 00:10:00 ビデオのこのセクションでは、プレゼンターがポットホールの検出とセグメンテーションのためにデータセットに注釈を付けるプロセスについて説明します。彼は、アノテーション ツールを使用してデータセットを生成する方法を示してから、Google Collab で YOLOv8 アルゴリズムを使用してモデルをトレーニングします。プレゼンターは、RoboFlow でワンクリックでコーディングなしでモデルをトレーニングできるとも述べていますが、新しいことを学ぶには Google Collab を使用することをお勧めします。このビデオでは、作業ディレクトリを設定して依存関係をインストールする前に、必要なライブラリをインポートして GitHub リポジトリを複製する方法を示しています。

  • 00:15:00 ビデオのこのセクションでは、プレゼンターが YOLOv8 とセグメンテーションに必要な依存関係をインストールする手順を説明し、後でライブラリの問題を回避するためにトレーニングの前にインストールすることが重要であることを強調しています。プレゼンターは、RoboFlow から Google フォルダにデータセットをインポートしてダウンロードする方法、データセットの場所を設定してモデルをトレーニングする方法についても説明します。また、プレゼンターは、追跡用に調整された predict.py ファイルのエラーを確認して修正します。

  • 00:20:00  IOU が 0.50 から 0.95 まで変化する場合、50 の IOU と 0.218 で 0.532 の平均精度でくぼみを検出できます。このモデルはサンプル ビデオでテストされ、ポットホールの検出で良好に機能しました。表示される混同行列は、異なるクラス間のデータの分布を示しています。全体として、モデルはくぼみの検出にうまく機能します。

  • 00:25:00 ビデオのこのセクションでは、プレゼンターは YOLOv8 を使用してポットホール検出とセグメンテーションのカスタム モデルを検証しようとします。モデルが 50% の確率でくぼみを検出できず、空白の画面が表示されるという問題に遭遇しました。その後、プレゼンターは最適な DOT ウェイト パスを追加し、問題を修正することができました。次に、検証バッチで予測を表示し、検出で 0.538、セグメンテーションで 0.531 の平均精度を達成しました。モデルは複数のデモ ビデオでテストされ、うまく機能し、プレゼンターがビデオを締めくくりました。
Potholes Detection and Segmentation using YOLOv8 (Images & Videos)| Custom Dataset | Complete Guide
Potholes Detection and Segmentation using YOLOv8 (Images & Videos)| Custom Dataset | Complete Guide
  • 2023.02.07
  • www.youtube.com
#objectdetection #potholes #yolo #yolov8 #computervision #segmentation #customdataset #machinelearning In this video, we will implement the Potholes detec...
 

YOLOv8 カスタム オブジェクトの検出と追跡 |船の検出 |完全なチュートリアル



YOLOv8 カスタム オブジェクトの検出と追跡 |船の検出 |完全なチュートリアル

YouTube チュートリアルでは、カスタムの船舶検出データセットでディープ ソート オブジェクト トラッキングを使用した YOLOv8 の実装について説明しています。このビデオでは、RoboFlow からデータセットをダウンロードし、Expense ID でプロジェクトを設定し、Google Colab でモデルをトレーニングする方法について説明します。トレーニング スクリプトは 70 エポック実行され、IOU 50 で 0.968 の平均精度が得られました。プレゼンターは、損失と平均精度のグラフを分析して、より多くのエポックのトレーニングがより良い結果をもたらすことを示します。次に、検証データセットでモデルを検証する方法を示し、検証データセット画像の平均精度を示します。最後に、誤った予測の例を含む、動作中のモデルのデモ ビデオをいくつか示します。

  • 00:00:00 このセクションのビデオ チュートリアルでは、カスタム オブジェクト検出および追跡プロジェクトのデータセットについて説明します。これには、ドローンによってキャプチャされた約 794 の船の画像が含まれ、「ボード」または「シェイプ」という名前のクラスは 1 つだけです。次に、チュートリアルでは、RoboFlow からデータセットをダウンロードし、Google Colab または Expense ID にエクスポートする方法を示します。これにより、機械学習モデルをトレーニングするための 25 の無料クレジットと Tesla T4 または V100 GPU が提供されます。最後に、チュートリアルでは、Expense ID でプロジェクトを設定し、データセットで YOLOv8 オブジェクト検出モデルをトレーニングするための Expense サーバー オプションを使用して Jupyter ノートブックを開く方法について説明します。

  • 00:05:00  YouTube チュートリアルのこのセクションでは、インストラクターがプロジェクトの設定を説明し、GitHub リポジトリ リンクを提供して、カスタムの船舶検出データセットでディープ ソート オブジェクト トラッキングを使用して YOLO v8 を実装します。このビデオでは、GitHub リポジトリを Google Colab ノートブックに複製し、pip を使用して必要なライブラリをインストールする方法を示しています。画像ライブラリのインポート方法、現在の作業ディレクトリの設定方法、事前トレーニング済みモデルのダウンロード方法など、ノートブック スクリプトについて詳しく説明されています。インストラクターは、エラーを回避するために、トレーニング、テスト、または検証スクリプトを実行する前に、スクリプトを正しい順序で実行し、必要なすべてのライブラリをインストールすることの重要性を強調しています。

  • 00:10:00 このセクションでは、スピーカーは、RoboFlow から船の画像のデータセットをダウンロードし、DeepSort を使用してオブジェクト トラッキングを実装する方法を説明します。次に、船のデータセットで YOLOv8 モデルをトレーニングし、70 エポックのトレーニング スクリプトを実行する前に、データ セットの場所とデフォルトの画像サイズを設定します。結果は、IOU 50 で 0.968 という良好な平均精度を示しています。これは、モデルが画像内の船の 96.8% を正しく識別したことを意味します。重みファイルは train フォルダーに保存され、混同マトリックスは、モデルが船の存在を検出する際に 96% の精度であり、失敗率が 4% であることを示しています。トレーニング損失は継続的に減少しており、より多くのエポックのトレーニングがより良い結果をもたらすことを示しています。

  • 00:15:00 ビデオのこのセクションでは、プレゼンターが損失グラフと平均精度グラフを分析して、エポックが増加するにつれてトレーニング損失が継続的に減少し、平均精度が継続的に増加していることを示しています。次に、検証データセットでモデルを検証する方法を示し、検証データセット画像の iou50 での平均精度が 96.4% であり、iou50 から 95 での平均精度が 71.6% であることを示します。次にプレゼンターは、predict.pi スクリプトを使用して最適なモデルの重みを渡し、複数のビデオでモデルをテストし、モデルがボードを検出して各オブジェクトに一意の ID を割り当てる方法を示すデモ ビデオをいくつか示します。最後に、モデルによる誤った予測の例を示します。
YOLOv8 Custom Object Detection and Tracking | Ships Detection | Complete Tutorial
YOLOv8 Custom Object Detection and Tracking | Ships Detection | Complete Tutorial
  • 2023.03.09
  • www.youtube.com
#yolo #yolov8 #objectdetection #objecttracking #deepsort #computervision #opencv #pytorch #python A complete YOLOv8 custom object detection and Tracking t...
 

顔、性別検出、顔カウント、および人物追跡のための YOLOv8 および VGG16 |カスタム データセット



顔、性別検出、顔カウント、および人物追跡のための YOLOv8 および VGG16 |カスタム データセット

このビデオ チュートリアルでは、YOLOv8 および VGG16 モデルを使用した顔検出、性別分類、顔カウント、人物追跡のプロセスについて説明しています。このチュートリアルでは、これらのモデルの実装とトレーニングのさまざまな側面について説明します。これには、データの準備、データの増強、トレーニング済みの VGG16 モデルの微調整、転移学習の使用、顔検出のための YOLOv8 モデルのトレーニングが含まれます。プレゼンターは、Google ドライブを Google Colab ノートブックにマウントする方法、画像データセットにアクセスして変換する方法、必要なライブラリをダウンロードする方法、ディープソートを使用してオブジェクト トラッキングを統合する方法についても説明します。このチュートリアルでは、検出されたオブジェクトの周囲に境界ボックスを描画し、性別分類モデルを統合し、フレーム内の顔の数を数え、deepsort.update を使用して検出された各顔に一意の ID を割り当てるための詳細なコード説明を提供します。

  • 00:00:00 ビデオ チュートリアルのこのセクションでは、性別分類による顔検出と、YOLOv8 および VGG16 を使用した追跡による顔カウントのワークフローについて説明します。最初のステップは、男性と女性の顔の画像を含むデータセットを準備し、性別検出のために VGG16 モデルをトレーニングし、続いて顔検出のために YOLOv8 モデルをトレーニングすることです。 YOLOv8 の顔検出では、トレーニング済みの VGG16 モデルを使用して性別分類が行われます。次に、Deepsort を使用してオブジェクト トラッキングを実装し、検出された各顔または人物に一意の ID を割り当てます。ノートブックは、必要なライブラリのインポート、Google ドライブのマウント、データセットの読み込み、画像とラベルの配列への変換、データ拡張の適用、性別分類データに対する VGG16 モデルの微調整、トレーニングと検証損失のプロット、およびサンプル画像でテスト。

  • 00:05:00 このセクションでは、スピーカーは、画像を numpy 配列に、またはその逆に変換するために使用できるさまざまなライブラリと関数について説明します。また、2 ダッシュ カテゴリ ライブラリの使用と、ニューラル ネットワークで層を配置するための順次的および関数的アプローチの概念についても説明します。平坦化層は多次元入力を 1 次元に変換するために使用され、密層は出力層のサイズを定義するために使用されます。さらに、VGG16 モデルでの転移学習の使用と、トレーニング テストの分割、numpy、および OS ライブラリのインポートについても説明します。最後に、フォルダー内のすべてのファイルにアクセスするための gdob ライブラリーと、画像データセットをシャッフルするためのランダム ライブラリーの使用について言及しています。

  • 00:10:00 このセクションの動画では、zip 形式でアップロードされたデータセットにアクセスするために Google Colab ノートブックを使用して Google ドライブをマウントする方法を説明しています。データセットには男性と女性の顔の画像が含まれており、ビデオでは、これらの画像を含むフォルダーを解凍してアクセスする方法を示しています。ビデオは glob ライブラリを使用して、データセット フォルダー内のすべての画像ファイルにアクセスし、画像が男性か女性かを示すラベル付きの配列形式に変換します。このビデオでは、サンプル画像を示し、画像ファイル変数に男性と女性のフォルダーのすべての画像ファイル パスがどのように含まれているかを説明しています。これは、cb2.im read を使用して読み取ることができます。

  • 00:15:00 このセクションでは、スピーカーは、顔と性別の検出のためにデータセットをどのように準備したかを説明します。彼らは「男性」と「女性」のフォルダーを作成し、その中の画像のサイズを変更し、それらを配列に変換してデータ リストに格納しました。対応するラベル値をラベル リストに追加しました。女性は 1、男性は 0 です。データとラベルのリストは、NumPy を使用して配列に変換されました。また、講演者は、画像データ ジェネレーターを使用してデータ拡張を実演し、さまざまな変換を適用して 1 つの画像から複数の画像を生成します。次に、性別分類データセットで事前トレーニング済みの VGG16 モデルを微調整し、softmax アクティベーションを実装して出力レイヤーを定義しました。男性または女性のいずれかを分類するために、出力サイズは 2 に設定されました。
     
  • 00:20:00 ビデオ チュートリアルのこのセクションでは、スピーカーは顔と性別の検出のための VGG16 モデルを実演し、一般的な分類データセットでそれをトレーニングする方法を示します。モデルは .H5 形式で保存され、その精度、検証精度、損失部分が計算されます。 cv2.dsize を使用して、画像を 100x100 の次元にリサイズし、配列に変換します。モデルは、画像に男性が含まれているか女性が含まれているかを予測します。チュートリアルの次の部分では、YOLOv8 モデルを顔データセットでトレーニングして、顔を検出し、追跡用の一意の ID を割り当てます。講演者はまた、predict.pi ファイルに追加された単純なコードを使用してフェイス カウントが実装されることにも言及しています。全体として、チュートリアルは 7 つのステップに分かれています。

  • 00:25:00 このセクションでは、プレゼンターは、ディープ ソートを使用したオブジェクト トラッキングを実装するために使用する GitHub リポジトリと、フェイス リダクション用の YOLO V8 モデルを紹介します。彼らは、ディープ ソート オブジェクト トラッキング コードを統合して各人に一意の ID を割り当てる前に、顔を検出して性別を分類する方法について説明しています。次に、プレゼンターは現在のディレクトリを複製リポジトリとして設定し、スクリプトに必要なすべての必要なライブラリと依存関係をインストールします。また、RoboFlow から Google Colab ノートブックにデータセットをダウンロードしますが、プライベート アカウントを持っているために問題が発生します。

  • 00:30:00 事前トレーニング済みの YOLOv8 モデルの重みを顔検出に使用します。データセットがダウンロードされ、Google ドライブ アカウントに保存されます。顔検出用に 80 エポックの YOLOv8 モデルを既にトレーニングしています。トレーニング済みのモデルは既に保存されており、重みは Google Colab ノートブックにダウンロードされています。ディープ ソートを使用してオブジェクト トラッキングが実装されるため、ディープ ソート ファイルもノートブックにダウンロードされます。さらに、VGG16 モデルは性別検出用にトレーニングされており、モデルの .h5 ファイルが保存され、Google ドライブ アカウントにダウンロードされています。サンプル ビデオは Google ドライブからダウンロードされ、predict.pi スクリプトをテストします。このスクリプトには、性別分類器のコードと顔のカウントが含まれています。

  • 00:35:00 このセクションでは、スピーカーはディープ ソートを使用したオブジェクト トラッキングを実装するために追加されたコードについて説明します。ディープ ソート オブジェクト トラッキング ポートが初期化され、YOLOv8 モデルから受け取った出力をディープ ソート用の互換性のある形式に変換する関数が定義されます。 UI ボックス関数は検出されたオブジェクトの周囲に境界ボックスを作成し、ドロー ボックス関数は UI ボックス関数と境界線関数を呼び出して、テキストの角の丸い四角形を描画します。トレイルを描画する機能とともに、ディープ ソート トラッキング コードが統合されています。次にスピーカーは、ペイント ファイル内の性別分類器とカウント関数のコードを説明します。 count 関数は、各フレーム内の各オブジェクトをカウントするために使用されます。全体として、このコードは、YOLOv8 からの X1、Y1、X2、および Y2 出力値を、ディープ ソートを使用してオブジェクト追跡の中心座標、高さ、および幅の値に変換し、実際のアプリケーションでオブジェクト検出とオブジェクト追跡を実装する方法を説明しています。

  • 00:40:00 このセクションでは、スピーカーは、YOLOv8 モデルをバウンディング ボックスの xcyc 中心座標と、バウンディング ボックスの幅と高さに変換して、ディープ ソート オブジェクト トラッキングと互換性を持たせる方法について説明します。また、ラベルの色の計算関数が検出されたオブジェクトに一意の色を割り当てる方法と、破線境界線の描画関数がラベルと信頼スコアが書き込まれる境界ボックスの上に長方形を作成する方法についても説明します。講演者は、性別分類子クラスについても説明し、検出されたオブジェクトの性別を分類するためにビデオの各フレームに読み込まれて使用される方法についても説明します。さらに、境界ボックスを作成し、性別分類関数を呼び出すために使用される UI Dash box 関数と draw Dash box 関数についても言及しています。

  • 00:45:00 このセクションでは、プレゼンターが性別分類モデルを使用して、顔が男性のものか女性のものかを検出する方法を説明します。顔を検出した後、境界ボックスの座標のみが性別分類モデルに渡されます。次に、モデルは顔が男性に属するか女性に属するかを予測し、それに応じて境界ボックスの上にラベルが追加されます。次にプレゼンターは、関数 count について説明します。この関数は、Foundry-classes と呼ばれる辞書を使用して、フレーム内で検出された顔の数を格納します。カウントは、ビデオまたは画像の上部にある UI に表示されます。

  • 00:50:00 このセクションでは、スピーカーは、現在のフレームで検出された顔の数のカウントが、FaceDetails クラスの Foundry クラス ディクショナリに格納されていることを説明します。ディクショナリには、「顔」を含むキー変数と、現在のフレームで検出された顔の数を含む値変数の 2 つの値が含まれます。スピーカーは count 関数を使用して、各フレームで検出された顔の数を示し、deepsort.update を使用して、検出された各顔に一意の ID を割り当てます。スピーカーは、一般クラス、分類クラス、および危険クラスも作成します。モデルの検出は複数のデモ ビデオでテストされ、スピーカーは各フレームで検出の結果を示します。
YOLOv8 and VGG16 for Face, Gender Detection, Face Counting, and People Tracking | Custom Dataset
YOLOv8 and VGG16 for Face, Gender Detection, Face Counting, and People Tracking | Custom Dataset
  • 2023.03.05
  • www.youtube.com
#objectdetection #computervision #yolo #yolov8 #ultralytics #transferlearning #vgg16 #objecttracking #deepsort #facedetection #opencv #opencvpython #pytorc...
 

YOLOv8 とオブジェクト トラッキングを使用したピープル カウンター | ピープル カウント (入場と退場)



YOLOv8 とオブジェクト トラッキングを使用したピープル カウンター | ピープル カウント (入場と退場)

ビデオでは、YOLOv8 とオブジェクト トラッキングを使用して人数カウンターを作成する方法について説明しています。このプロセスでは、一意の ID を持つオブジェクトを検出し、検出されたオブジェクトの中心座標を見つけ、Deep SORT でオブジェクトを追跡し、オブジェクトが特定のラインを横切ったことを検出して、特定の領域に出入りする人の数をカウントします。一意の ID は、エリアに出入りする人をカウントするためにリストに格納され、カウントは緑と赤の円でグラフィカルに表示されます。このビデオでは、プロジェクトのコードも提供し、システムの出力をリアルタイムで示します。

  • 00:00:00 ビデオ チュートリアルのこのセクションでは、プレゼンターが YOLO V8 とオブジェクト トラッキングを使用して人数カウンターを作成する方法を説明します。プロセス フローは、YOLO V8 オブジェクト検出を実装して人を検出し、検出された各オブジェクトに一意の ID を割り当てることから始まります。次に、検出されたオブジェクトの中心座標が検出され、検出された各オブジェクトに一意の ID が割り当てられる Deep SORT を使用したオブジェクト トラッキングが続きます。その後、人が交差したことを検出するために線が描かれ、一意の ID がリストに追加されます。最後に、リストの長さを調べて、各行を横切った人の総数を取得します。

  • 00:05:00 このセクションでは、ビデオで YOLOv8 とオブジェクト トラッキングを使用した人数カウントのプロセスについて説明します。この方法では、オブジェクトのバウンディング ボックスの中心座標を追跡し、オブジェクトが緑色の線を横切るタイミングを検出します。次に、オブジェクトの一意の ID がリストに追加されます。このリストは、ラインを通過したオブジェクトの総数を計算するために使用されます。このプロセスはフレームごとに繰り返され、オブジェクトがラインを通過するたびにカウントが増加します。このビデオでは、このプロジェクトで使用されるコードも示します。これには、依存関係のインストールと、ディープ ソート オブジェクト トラッキング メソッドの使用が含まれます。

  • 00:10:00 ビデオのこのセクションでは、プレゼンターが Deep Sort ファイルをダウンロードし、予測スクリプトを開いて、プロジェクト要件に必要な変更を加えます。プレゼンターは、トレイルと不要なデータを削除し、ビデオ入力を使用してアップ カウントとダウン カウント用の 2 つのラインを作成します。彼らは各線の座標点を見つけます。これにより、各線を横切った人の数と合計数を追跡できます。プレゼンターは画面を共有して座標を見つける方法を示し、正しい領域に焦点を当てることの重要性を強調します。

  • 00:15:00 このセクションでは、スピーカーはラインの座標を定義し、空のリストを作成する方法を説明します。ラインの座標は前のステップからコピーされ、空のリストにはそれを横切るオブジェクトの一意の ID が格納されます。また、このスクリプトは、境界ボックスの幅と高さを計算し、人が上昇しているか下降しているかに応じて、一意の ID を適切なリストに格納します。スピーカーは、このセクションで使用されるポイントと座標を視覚的に表現します。

  • 00:20:00 ビデオのこのセクションでは、講演者が YOLOv8 とオブジェクト トラッキングを使用した People Counter プロジェクトのコードについて説明します。それらは、バウンディング ボックスの中心座標を表す CX 座標と CY 座標、および検出されたオブジェクトの周囲に円と四角形を描くためにどのように使用されるかを調べます。スピーカーは、cv2.puttext 関数を使用して、各オブジェクトの一意の ID とラベルを四角形に追加する方法についても説明します。最後に、オブジェクトの CX 座標が特定の線を横切り、入口または出口を示すときに、空のリストに一意の ID がどのように格納されるかを説明します。

  • 00:25:00 このセクションでは、プレゼンターは、一意の ID が上昇する人および下降する人の合計カウント リストに追加される方法を説明します。中心座標が線の上または下を通過すると、カウントに応じて、それぞれのリストに追加されます。各リストの長さは、上昇および下降する人の数を表し、2 つの円を使用してグラフィカルに表示されます。緑は上昇する人を表し、赤は下降する人を表します。プレゼンターは、グローバルな合計カウントと合計ダウン変数を定義し、cb2.9 を使用して線を作成することを強調しています。このコードは、CPU/DPM サークルを使用して、カウントの循環表現を作成します。プレゼンターは、ランタイムが GPU として設定されていることを確認するよう視聴者に通知します。セッションで必要なファイルをダウンロードするのに数秒かかる場合があります。

  • 00:30:00 このセクションでは、講演者は、YOLOv8 とオブジェクト トラッキングを使用してビデオの特定のエリアに出入りする人の数をカウントするスクリプトをダウンロードして実行する方法を実演しています。スクリプトは、ビデオをフレームに分割し、それらを 1 つずつ処理して、人々の動きを追跡し、特定の線を横切るたびにカウントします。出力は、リアルタイムでエリアに出入りする人の数を示す注釈付きのビデオです。また、スピーカーは出力ビデオを紹介し、スクリプトが人の動きを正しくカウントする方法を説明します。

  • 00:35:00 このセクションのビデオ チュートリアルでは、YOLOv8 とオブジェクト トラッキングを使用して、特定のエリアに出入りする人をカウントする方法を示します。システムは、画像上のラインを横切る個人をカウントし、移動の方向に応じてカウントをアップ カウントまたはダウン カウントとして表示します。システムのスクリプト ファイルも共有されており、視聴者はチャンネルに登録して高評価を残すことをお勧めします。
People Counter using YOLOv8 and Object Tracking |People Counting (Entering & Leaving)
People Counter using YOLOv8 and Object Tracking |People Counting (Entering & Leaving)
  • 2023.02.21
  • www.youtube.com
#yolo #yolov8 #objectdetection #computervision #objectracking #machinelearning #people #peoplecounting #peoplecounter #pytorch #opencv #opencvpython #deepsor...
 

YOLOv8 を使用したリアルタイムのオブジェクト検出、追跡、ぼかし、およびカウント: ステップバイステップのチュートリアル



YOLOv8 を使用したリアルタイムのオブジェクト検出、追跡、ぼかし、およびカウント: ステップバイステップのチュートリアル

このチュートリアルでは、YOLOv8 を使用したリアルタイムのオブジェクト検出と追跡によるオブジェクトのぼかしとカウントの実装に焦点を当てています。このチュートリアルでは、オブジェクト トラッキング用のディープ ソート ファイルやテスト用のサンプル ビデオなど、必要なファイルをダウンロードする手順を説明します。このチュートリアルでは、OpenCV の CV2 ライブラリを使用して検出されたオブジェクトをぼかし、オブジェクトの検出、追跡、およびぼかしのためのコードを提供します。スピーカーは、境界ボックスの座標を決定し、画像をトリミングし、ぼかし機能を適用するプロセスを実演します。さらに、プレゼンターは、ディクショナリを使用して各フレーム内のオブジェクトの総数をカウントするためのコードを説明し、各フレーム内のオブジェクトの総数を表示しながら、コードがオブジェクトを検出、追跡、およびぼかす方法を示します。全体として、結果は良好で、プロジェクトの GitHub リポジトリが説明に記載されています。

  • 00:00:00 チュートリアルのこのセクションでは、検出されたオブジェクトをぼかし、各フレーム内のオブジェクトの数をカウントすることに焦点を当てています。このチュートリアルでは、トラッキング ID とトレイルによるオブジェクト検出に YOLOv8 を使用します。このチュートリアルでは、GPU ランタイムの選択から、オブジェクト トラッキング用の Deep Sort ファイルやテスト用のサンプル ビデオなど、必要なファイルをダウンロードするためのスクリプトの実行までのステップ バイ ステップ ガイドを提供します。このチュートリアルでは、検出されたオブジェクトをぼかすための OpenCV の CV2 ライブラリの使用についても強調し、オブジェクトの検出、追跡、およびぼかしを実装するためのコードを提供します。

  • 00:05:00 このセクションでは、YOLOv8 を使用したリアルタイムのオブジェクト検出と追跡で検出されたオブジェクトをぼかす方法をビデオ チュートリアルで説明します。これを実装するには、左上の頂点と右下の頂点を含むバウンディング ボックスの座標を把握し、このバウンディング ボックス内のオブジェクトをぼかします。座標は「predict.pi」ファイルに保存され、オブジェクトをぼかすためにこれらの値を取得できます。

  • 00:10:00 ビデオのこのセクションでは、スピーカーは、検出されたオブジェクトのバウンディング ボックス内のオブジェクトをぼかす方法を説明します。彼はまず境界ボックスの座標を決定してから、境界ボックスが配置されている領域のみが含まれるように画像をトリミングします。次に、CV2 ドット ブラーを使用してブラー関数を適用し、領域のぼかし具合を決定する血液比率を設定します。スピーカーは、スクリプトを作成して実行することにより、プロセスを実演します。

  • 00:15:00 ビデオのこのセクションでは、プレゼンターがリアルタイムのオブジェクト検出、追跡、カウントのために YOLOv8 を使用してオブジェクト ブラーを実装する方法を実演します。小さな修正を加えてスクリプトを実行すると、プレゼンターはオブジェクトのぼかし機能の結果を表示します。これはうまく機能します。次に、プレゼンターは、各フレーム内のオブジェクトの総数をカウントするためのコードを説明します。これには、オブジェクト名と現在のフレームに表示される回数を含む辞書の作成が含まれます。ビデオが長くなりすぎないように、プレゼンターはこの部分のコードを表示しません。

  • 00:20:00 このセクションでは、プレゼンターが、オブジェクト名とそのカウント (現在のフロント フレームに出現する数) を含む辞書からキーと値を抽出する count 関数について説明します。この関数は長方形を作成し、オブジェクトが出現した回数を表示するテキストをオーバーレイします。プレゼンターは、コードがオブジェクトを検出して追跡し、それらをぼかし、各フレーム内のオブジェクトの総数を表示する方法も示します。結果は良好で、プロジェクトの GitHub リポジトリが説明に記載されています。
Real-Time Object Detection, Tracking, Blurring and Counting using YOLOv8: A Step-by-Step Tutorial
Real-Time Object Detection, Tracking, Blurring and Counting using YOLOv8: A Step-by-Step Tutorial
  • 2023.01.21
  • www.youtube.com
#yolo #yolov8 #objectdetection #objectracking #opencvpython #opencv #computervision #machinelearning #artificialintelligence #deepsort #multiobjecttrack...
 

カスタム データセットで YOLOv8 をトレーニングする | YOLOv8 を使用した手話アルファベットの検出と認識



カスタム データセットで YOLOv8 をトレーニングする | YOLOv8 を使用した手話アルファベットの検出と認識

ビデオは、手話アルファベットの検出と認識のためのカスタム データセットでの YOLOv8 の実装を示しています。このプロセスには、データセットのダウンロード、50 エポックのモデルのトレーニング、および混同行列とトレーニングと検証の損失を使用したパフォーマンスの評価が含まれます。プレゼンターは、検証バッチとトレーニングに使用されていない画像に対するモデルの予測を検証して、さまざまな画像での動作を決定する方法についても説明します。次に、トレーニングされたモデルが検証され、検証データセットの画像でテストされ、デモ ビデオの推論が良好な結果で表示されます。全体として、ビデオは、カスタム データセットのトレーニングとオブジェクト検出のための YOLOv8 のアプリケーションを強調しています。

  • 00:00:00 ビデオのこのセクションでは、プレゼンターが手話アルファベットの検出と認識のためのカスタム データで YOLOv8 をトレーニングするトピックを紹介します。彼らはプロセスを順を追って説明し、YOLOv8 を使用して手話アルファベットの検出および認識システムを実装する方法について説明します。プレゼンターは、OS、IPython ディスプレイ、G-LOP などのさまざまなライブラリをインポートします。これらは、混同行列、トレーニングと検証の損失、およびテスト画像を表示するために必要です。次に、プレゼンターは GPU アクセスを確認する方法を示し、データセット画像を含む異なるフォルダー間を簡単に移動できるようにヘルパー変数を定義します。最後に、「pip install」を使用して Ultra Analytics をインストールし、YOLOv8 がインストールされ、正常に動作していることを確認します。

  • 00:05:00 このセクションの動画では、手話アルファベットの検出と認識のために、カスタム データセットに YOLOv8 を実装するプロセスを紹介しています。データセットは Roboflow からダウンロードされ、YOLOv8 モデルは 50 エポックでトレーニングされます。混同行列は、モデルのパフォーマンスを評価するために使用され、モデルがさまざまなクラスをどれだけうまく検出および分類できるかを識別します。結果は、モデルがアルファベット A を 60% の確率で正しく検出できたことを示しています。全体として、ビデオは、カスタム データセットのトレーニングとオブジェクト検出のための YOLOv8 のアプリケーションを強調しています。

  • 00:10:00 ビデオのこのセクションでは、モデルがさまざまなクラスをどれだけうまく処理したかを示す混同マトリックス、およびトレーニングと検証の損失についてプレゼンターが説明します。重要なものはボックス ログと分類の損失です。検証バッチでのモデルの予測も表示され、トレーニングに使用されていない画像が検証され、さまざまな画像でモデルがどのように動作するかが判断されます。次に、カスタム モデルが検証され、検証データセットの画像でテストされます。続いてデモ ビデオの推論が行われ、モデルが手話のアルファベットを検出して認識し、良好な結果が得られていることが示されます。最後に、視聴者は、提供されたビデオ データセットを使用して独自のモデルをテストすることをお勧めします。
Train YOLOv8 on Custom Dataset | Sign Language Alphabets Detection and Recognition using YOLOv8
Train YOLOv8 on Custom Dataset | Sign Language Alphabets Detection and Recognition using YOLOv8
  • 2023.01.19
  • www.youtube.com
#yolo #yolov8 #objectdetection #opencvpython #opencv #computervision #machinelearning #artificialintelligence #deeplearning#artificialintelligence Sign Lan...