Skip to content

TensorFlow Lite Model Makerで物体検出を行うハンズオン用資料です(Hands-on for object detection with TensorFlow Lite Model Maker)

License

Notifications You must be signed in to change notification settings

Kazuhito00/TFLite-ModelMaker-EfficientDet-Colab-Hands-On

Repository files navigation

[Japanese/English]

TFLite-ModelMaker-EfficientDet-Colab-Hands-On


TensorFlow Lite Model Makerのハンズオン用資料です。
VoTTでのアノテーションをローカルPCで実施し、学習~推論はColaboratory上で実施します。
アノテーションを実施せずにアノテーション済みデータセットを利用することも出来ます。

以下の内容を含みます。

  • データセット ※アノテーション未実施
  • データセット ※アノテーション済み
  • Colaboratory用スクリプト(環境設定、モデル訓練、推論結果確認)

Requirement

Tensorflow 2.5.0 or later

Overview

1時間30分程度のボリュームの想定です。

  1. VoTT:アノテーション(約30~60分)
  2. Colaboratory:環境準備
  3. Colaboratory:object_detector向けcsv作成
  4. Colaboratory:モデル訓練(約5~10分)
  5. Colaboratory:推論

Preparations

事前準備として以下が必要です。

  • このリポジトリのローカル環境へのクローン
  • VoTTのインストール

1. VoTT:アノテーション

VoTTを使用してアノテーションを行い、CSV形式で出力します。
アノテーション済みデータセットを利用する方は、この章を飛ばしてください。

VoTTのプロジェクト設定

「新規プロジェクト」を選択する

2020-09-19 (3)

プロジェクト設定を行う

表示名:TFLite-ModelMaker-EfficientDet-Colab-Hands-On
セキュリティトークン:Generate New Security Token
ソース接続:「Add Connection」を押下
2021-06-09 (1)

ソース接続の接続設定を行う

表示名:TFLite-ModelMaker-EfficientDet-Colab-Hands-On-TrainData 2021-06-09 (2) プロバイダー:ローカルファイルシステム 2021-06-09 (3) フォルダーパス:クローンしたリポジトリの「01_dataset」ディレクトリを指定 2021-06-09 (4)

ターゲット接続の接続設定を行う

ターゲット接続:Add Connection 2021-06-09 (5) 表示名:TFLite-ModelMaker-EfficientDet-Colab-Hands-On-Target
プロバイダー:ローカルファイルシステム
フォルダーパス:任意のディレクトリ
2021-06-09 (6)

タグを追加し設定を保存する

タグ:「Fish」を追加
「プロジェクトを保存」を押下 94047577-3d9dc080-fe0d-11ea-9f4f-b5fe7727fc12

VoTTを使用してアノテーションを実施

マウス左ドラッグで魚を選択する

2020-09-19 (13)

TAGSから「Fish」を選択する

南京錠のマークを選択しておくことでタグを使用するタグを固定することが可能 2020-09-19 (14)

CSVエクスポート

エクスポート設定

プロバイダー:コンマ区切り値(CSV)
アセットの状態:タグ付きアセットのみ
「エクスポート設定を保存」を押下する 2021-06-09 (8) アノテーション画面からエクスポートマークを押下し、TFRecordをエクスポートする。 2020-09-19 (14)

2. Colaboratory:環境準備

Open In Colab
以降の作業はGoogle Colaboratory上で実施します。
[Open In Colab]リンクからノートブックを開き、以下の順に実行してください。

  • パッケージインポート
  • パッケージインストール

3.Colaboratory:object_detector向けcsv作成

「!mkdir dataset」実行後、VoTTからエクスポートした画像ファイルとCSVファイルを格納してください。
格納後、以下を実行してください。
アノテーション済みファイルを利用する方は以下の「if False:」を「if True:」に変更して実施してください。

if False:
    !git clone https://github.com/Kazuhito00/TFLite-ModelMaker-EfficientDet-Colab-Hands-On
    !cp -r TFLite-ModelMaker-EfficientDet-Colab-Hands-On/02_dataset\(Annotated\)/* ./dataset
  • データセットCSV読み込み(Read CSV)
  • 学習データ/検証データ/テストデータ 分割
  • object_detectorで読み込む形式に変換

4. Colaboratory:モデル訓練

以下の順に実行してください。

  • Model MakerでCSVファイルを読み込む
  • 物体検出のモデルアーキテクチャを選択
  • 訓練
  • モデル評価
  • TensorFlow Lite形式でのモデルエクスポート(形式:完全整数量子化)
  • TensorFlow Lite形式でのモデルエクスポート(形式:Float16量子化)

5. Colaboratory:推論

以下の順に実行してください。

  • 推論(形式:完全整数量子化)
  • 推論(形式:Float16量子化)

Author

高橋かずひと(https://twitter.com/KzhtTkhs)

License

TFLite-ModelMaker-EfficientDet-Colab-Hands-On is under MIT license.

About

TensorFlow Lite Model Makerで物体検出を行うハンズオン用資料です(Hands-on for object detection with TensorFlow Lite Model Maker)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published