要点:
- 一般的なデータセットとラベル付けツール
ラベリングツール PPOCRLabel github アドレス: paddleocrlabel
参考資料:ターゲット検出の概要 - ナレッジ
ターゲット検出データセット
1. パスカルVOC
VOC データセットは、ターゲット検出に頻繁に使用されるデータセットです。2005 年からコンテストが毎年開催されています。当初は 4 カテゴリーのみでしたが、2007 年までに 20 カテゴリーに拡大されました。よく使用される 2 つのカテゴリーがあります。バージョン: 2007 および 2012。学術界では一般に、トレーニング セットとして 5k train/val 2007 および 16k train/val 2012 を、テスト セットとして test 2007 を、トレーニング セットとして 10k train/val 2007+test 2007 および 16k train/val 2012 を、テストとして test2012 を使用します。結果を個別に設定して報告します。
含まれる種類:
データセット構造:
PASCAL VOC Challenge (The PASCAL Visual Object Classes) は、世界クラスのコンピューター ビジョン チャレンジです。PASCAL の正式名: Pattern Analysis, Statical Modeling and Computational Learning は、欧州連合から資金提供を受けているネットワーク組織です。PASCAL VOC チャレンジには主に次のカテゴリが含まれます:オブジェクト分類、オブジェクト検出、オブジェクトセグメンテーション、アクション分類など。
2.MSココ
COCO データ セットは、Microsoft チームによってリリースされたデータ セットで、画像認識 + セグメンテーション + キャプション作成に使用できます。このデータ セットは、一般的なオブジェクトを含む日常のシーン写真を大量に収集し、検出を評価するためのピクセル レベルのインスタンス アノテーションを提供します。アルゴリズムの効果は、シーン理解の研究の進歩を促進することに専念しています。このデータ セットに基づいて、毎年コンテストが開催され、検出、セグメンテーション、キー ポイント認識、注釈などのマシン ビジョンの中心的なタスクをカバーするようになり、ImageNet Challenge 以来最も影響力のある学術コンテストの 1 つとなっています。
ImageNet と比較して、COCO は対象とそのシーンが一緒に写っている写真、つまり非象徴的な画像を好みます。このような画像は視覚的な意味論を反映することができ、画像理解のタスク要件によりよく一致します。相対的な象徴的な画像は、浅い意味論的な画像分類やその他のタスクに適しています。
COCO の検出タスクには合計 80 のクラスが含まれています。2014 年にリリースされた train/val/test のデータ スケールはそれぞれ 80k/40k/40k です。学術界でより一般的な部門は、train および 35k val サブセットをトレーニング セットとして使用することです ( trainval35k) 、残りの val をテストセット (minival) として使用し、同時に結果 (test-dev) を公式評価サーバーに送信します。さらに、COCO 関係者は、コンテストの評価セットとしてテスト データの一部も保持します。
ターゲット検出のために、主に 3 つのファイルをダウンロードします。
- 2017 トレーニング 画像 [118K/18GB] :トレーニング プロセスで使用されるすべての画像ファイル
- 2017 Val イメージ [5K/1GB] :検証プロセスで使用されるすべてのイメージファイル
- 2017 Train/Val アノテーション[241MB] :トレーニング セットと検証セットに対応するアノテーション付きjsonファイル
データセット構造:
ラベルの解釈:
データセットのダウンロード アドレス:
http://images.cocodataset.org/zips/train2017.zip
http://images.cocodataset.org/annotations/annotations_trainval2017.zip
http://images.cocodataset.org/zips/val2017.zip
http://images.cocodataset.org/annotations/stuff_annotations_trainval2017.zip
http://images.cocodataset.org/zips/test2017.zip
http://images.cocodataset.org/annotations/image_info_test2017.zip
論文アドレス: https://arxiv.org/pdf/1405.0312.pdf
公式サイトアドレス:https: //cocodataset.org/
3. Googleオープンイメージ
Open Image は、Google チームによってリリースされたデータセットです。新しくリリースされた Open Images V4 には、190 万枚の画像、600 個のカテゴリ、および 1,540 万個のバウンディング ボックス アノテーションが含まれており、オブジェクトの位置アノテーション情報を含む現在最大のデータセットです。これらの境界ボックスのほとんどはプロのアノテーターによって手動で描画され、その正確さと一貫性が保証されています。さらに、これらの画像は非常に多様であり、多くの場合、複数のオブジェクト(画像あたり平均 8 つ)を含む複雑なシーンが含まれています。
4.イメージネット
ImageNet はコンピュータ ビジョン システム認識プロジェクトであり、現在世界最大の画像認識データベースです。ImageNet は、人間の認識システムをシミュレートするために、米国スタンフォード大学のコンピューター科学者によって設立されました。写真から物体を認識する能力。ImageNet データ セットには詳細なドキュメントがあり、専任チームによって保守されており、非常に使いやすいです。コンピュータ ビジョンの分野の研究論文で広く使用されており、現在のディープ データ セットのほぼ「標準」データ セットとなっています。学習画像フィールド アルゴリズムのパフォーマンス テスト。ImageNet データ セットには、20,000 以上のカテゴリをカバーする 1,400 万枚以上の写真が含まれており、そのうち 100 万枚以上の写真には明確なカテゴリ ラベルと画像内のオブジェクトの位置が付いています。
よく使用される 2 つの画像注釈ツール
1.ラベル画像
1) LabelImg はオープン ソースの画像ラベル付けツールです。ラベルは分類とターゲット検出に使用できます。Python で書かれており、グラフィカル インターフェイスとして Qt を使用しています。これはシンプルで使いやすいです。注釈は、 ImageNet で使用される形式であるPASCAL VOC 形式の XML ファイルとして保存されます。さらに、COCO データセット形式もサポートしています。
2) インストール方法:
前提条件: Python3 以降をインストールし、pyqt5 をインストールする ステップ 1: インストール パッケージをダウンロードする ステップ 2: Pycharm を使用してプロジェクトを開いて labelImg.py ファイルを実行するか、labelImg.py ファイルを直接実行します
pip install labelImg -i https://pypi.douban.com/simple
3)使用プロセス:
ソフトウェアを開きます:コマンドラインに「labelImg」と入力します。
画像ファイルが配置されるディレクトリと、注釈ファイルが保存されるディレクトリを設定します。
画像に注釈を付けて保存します。
4) 一般的なエラー処理:
① 报错:ModuleNotFoundError: 'libs.resources' という名前のモジュールがありません
- 加工方法:
- Python配下のスクリプトを環境変数パスに追加します。
- labelImg ディレクトリでコマンド pyrcc5 -o resource.py resource.qrc を実行します。
- 生成されたresources.pyをlabelImg/libs/にコピーします。
- labelImg.pyプログラムを実行します。
GitHub アドレス: https://github.com/tzutalin/labelImg
2.ラベルミー
labelme はオープンソースの画像/ビデオラベル付けツールで、ラベルはターゲットの検出、セグメンテーション、分類に使用できます。インスピレーションは、MIT がオープンソース化したラベル作成ツールである Labelme から得ています。Labelmeの特徴は次のとおりです。
- 画像注釈をサポートするコンポーネントは次のとおりです: 長方形、多角形、円、線、点 (長方形、多角形、円、線、点)
- ビデオ注釈をサポート
- GUIのカスタマイズ
- セマンティック/インスタンスセグメンテーションのためのVOCフォーマットのエクスポートをサポート
- 支出はインスタンスのセグメント化のために COCO 形式でエクスポートされます
次の 3 つの手順を使用します。
-
condaはpaddle_envをアクティブ化します
-
cd /d E:\4-viev_find\Image_annotation\img
-
ラベルミー
3. ラベルボックス
Labelbox は、機械学習アプリケーション用のデータセットを作成、管理、保守するためのサービス プロバイダーです。これには、画像の分類とセグメンテーション、テキスト、オーディオとビデオの注釈、画像とビデオの注釈のためのインターフェイスを含む、部分的に無料のデータ ラベル付けツールが含まれています。機能:
- アノテーションに使用できるコンポーネントは、長方形ボックス、ポリゴン、ライン、ポイント、ブラシ、スーパーピクセルなど(バウンディングボックス、ポリゴン、ライン、ポイント、ブラシ、サブピクセル)です。
- ラベルは、分類、セグメンテーション、オブジェクト検出などに使用できます。
- JSON / CSV / WKT / COCO / Pascal VOC などの形式でデータをエクスポート
- 支持 Tiled Imagery (Maps)
- ビデオ注釈のサポート (近日更新)
4.RectLabel
RectLabel は、オンラインの無料画像注釈ツールです。ラベルはオブジェクトの検出、セグメンテーション、分類に使用できます。特徴または機能:
- 利用可能なコンポーネント: 長方形ボックス、ポリゴン、3次ベジェ曲線、線と点、ブラシ、スーパーピクセル
- 描画せずに画像全体にマークを付けるだけで済みます
- ブラシとスーパーピクセルが利用可能
- YOLO、KITTI、COCO JSON、CSV 形式にエクスポート
- PASCAL VOC XML 形式での読み取りと書き込み
- Core ML モデルを使用して画像に自動的にラベルを付ける
- ビデオを画像フレームに変換する
5. ブルーム
CVAT は、オープンソースの Web ベースのインタラクティブなビデオ/画像注釈ツールであり、California Video Annotation Tool (Video Annotation Tool) プロジェクトを再設計して実装したものです。OpenCV チームは、このツールを使用して数百万のオブジェクトにさまざまな属性を注釈付けしており、UI と UX の決定の多くは、専門のデータ注釈チームからのフィードバックに基づいています。機能があります
- キーフレーム間の境界ボックス補間
- 自動ラベル付け (TensorFlow OD API および Intel OpenVINO IR 形式を使用したディープラーニング モデル)
6. 経由
VGG Image Annotator (VIA) は、画像、音声、ビデオ用のシンプルなスタンドアロンの手動注釈ソフトウェアです。VIA は Web ブラウザで実行され、インストールやセットアップは必要ありません。このページは、ほとんどの最新の Web ブラウザーでオフライン アプリケーションとして機能します。
- ラベル付けをサポートする領域コンポーネントは、長方形、円、楕円、多角形、点、およびポリラインです。
7.PPOCRラベル
PPOCRLabel は、OCR 分野に適した半自動グラフィック ラベル付けツールで、内蔵の PP-OCR モデルが自動的にデータにラベルを付け、再識別します。Python3 および PyQT5 で書かれており、長方形ボックス注釈と 4 点注釈モードをサポートしており、エクスポート形式はPaddleOCR 検出および認識モデルのトレーニングに直接使用できます。
Python スクリプト経由で PPOCRLabel を実行します。
cd ./PPOCRLabel # 切换到PPOCRLabel目录
python PPOCRLabel.py --lang ch
手順:
- インストールして実行: 上記のコマンドを使用して、プログラムをインストールして実行します。
- フォルダーを開く:メニューバーの「ファイル」→「ディレクトリを開く」をクリックし、 [1]を付ける画像のフォルダーを選択します。
- 自動ラベル付け: 「自動ラベル付け」をクリックすると、PP-OCR 超軽量モデルを使用して、画像ステータス [2] が画像ファイル名の前に「X」である画像に自動的にラベルを付けます。
- 手動ラベル付け: [長方形ラベル付け] をクリックすると(英語モードでキーボードの「W」を直接クリックすることをお勧めします)、ユーザーは現在の画像内のモデルの未検出部分にマーキング フレームを手動で描画できます。キーボードの Q をクリックして 4 点注釈モードを使用します (または、「編集」-「4 点注釈」をクリックします)。ユーザーが 4 点を順番にクリックした後、左ボタンをダブルクリックして注釈が完了したことを示します。
- マーカー フレームが描画された後、ユーザーが[OK] をクリックすると、検出フレームに「認識される」ラベルが事前に割り当てられます。
- 再認識: 画像内のすべての検出フレームを描画/調整した後、[再認識] をクリックすると、PP-OCR モデルは現在の画像内のすべての検出フレームを再認識します[3]。
- コンテンツの変更: 認識結果をクリックして、不正確な認識結果を手動で変更します。
- 確認マーク:「確認」をクリックすると、画像の状態が「√」に切り替わり、次の画像にジャンプします。
- 削除:「画像を削除」をクリックすると、画像がゴミ箱に削除されます。
- 結果のエクスポート: ユーザーはメニュー「ファイル - マークされた結果のエクスポート」から手動でエクスポートできます。また、「ファイル - マークされた結果を自動的にエクスポート」をクリックして自動エクスポートを開始することもできます。手動で確認したラベルは、開いた画像フォルダーの下のLabel.txtに保存されます。メニューバーの「ファイル」-「認識結果のエクスポート」をクリックすると、そのような写真の認識訓練データがCrop_imgフォルダに保存され、認識ラベルがrec_gt.txtに保存されます[4]。
PPOCRLabel github アドレス: paddleocrlabel