2. 操作手順

2.1. 入力画像ファイルをディレクトリにまとめる

入力画像ファイルはディレクトリ単位でしか選択できません。すべての画像ファイルは同じサイズで、画像処理の前にタイプ/クラス(例: 「正常」、「異常01」、「異常02」等)別に分割された複数の専用サブディレクトリに配置しておく必要があります。

<Input Dir>
  + 正常
  + 異常01
  + 異常02
    :
    :

2.2. 入出力ディレクトリの指定

データ拡張に使われる入力画像を読み込むディレクトリは、Input Dir/Changeボタンを押して立ち上がるファイルダイアログによって選択、指定することができます。選択したディレクトリの下には、前のステップで述べたようにタイプやクラス毎に分けた専用ディレクトリが必要です。

水増しされた画像を出力するディレクトリは、【Output Dir/Change】ボタンを押して既存のディレクトリを指定したり、既に処理済みの画像を上書きしないために新しいディレクトリを生成したりすることで設定できます。

重要

  1. 既知の問題として、バージョン1.0.0では入出力ディレクトリのパスの一部でも"temp"もしくは"TEMP"が含まれるとエラーが出て処理が実行されません。

  2. 既知の問題として、入力フォルダ内に画像以外のファイルがあると画像処理時にエラーとなります。エクスプローラーや画像ビューワーなどで自動生成されるサムネイルファイルなどには注意してください。実行前にそれら全て削除してください。

2.3. 画像前処理パラメータの設定

以下に挙げるパラメータは、マウスでスライダーウィジェットを用いて数値を素早く設定したり、カーソルキーを使用してより正確な設定をしたりすることができます。上/右キーにより増加、下/左キーにより減少、パラメータによって0.01~1の刻みで値を調整することができます。

2.3.1. 前処理パラメータ

データセットの前処理には次のパラメータが使用でき、新しい画像やフォルダが作成されます。

  • タイリング(幅/高さ)

このパラメータを使用することで、入力画像を指定の大きさで分割することができます。分割する際には、新しい画像が隣同士、上下同士でその一部が重複しないように処理され、画像分割時の端数部分は破棄されます。(アルゴリズムがサイズ/入力を整数分割する)

この機能は非常に大きな画像データを小さな部分画像(タイル)に分割して、その後MANUFACIAへの入力データとして使うのに特に有効です。ただし、一旦タイリングされた出力画像はそれぞれに適切なラベル付けをし、下位ディレクトリを手動で再構成しなければならないことに留意してください。(例えば、ある大きな画像データが"異常"に分類されるものであったとしても、その画像を分割したすべてのタイル画像も“異常”に分類されるわけではありません。そのような“正常”なタイルは、再び「正常」という名前の下位ディレクトリに移動する必要があります)

したがいまして、この前処理工程は最初に単独で行い、下位ディレクトリを適切に再構成した後に、他の画像前処理を出力フォルダに対して実行することを推奨します。

../_images/image4.png

幅、高さ24%タイル処理例

  • データ按分

出力データにおける、学習用データの比率をパーセント(%)で入力します(0-100)。比率が100%の場合は、データ按分はされません。100%未満の場合、入力ディレクトリ以下のすべての下層ディレクトリは、指定された学習用データの比率に応じて、出力ディレクトリの下位ディレクトリに学習用およびテスト用として按分されます。

以降すべての画像変換は学習用データにのみ適用され、テスト用データは無変換のまま維持されます(これらの変換は画像サイズに影響を与えるため、タイリング/クロッピングが適用される場合を除きます)下表ではデータ按分のあるなしで、出力フォルダの構成がどのようになるかを説明しています。

データ按分の「あり/なし」と出力ディレクトリ生成例

a) データ按分あり

b) データ按分なし

Input Dir
 +normal
 +anomaly








Output Dir
 +original
  +test_original_normal
  +test_original_anomaly
  +train_original_normal
  +train_original_anomaly
 +augmented
  +test_augmented_normal
  +test_augmented_anomaly
  +train_augmented_normal
  +train_augmented_anomaly

Output Dir
 +original
  +original_normal
  +original_anomaly
 +augmented
  +augmented_normal
  +augmented_anomaly




2.3.2. 画像拡張パラメータ

画像の拡張には後述のパラメータが使用できます。新しい画像データは設定された数値のバラツキ内で生成されます。

  • 繰り返し回数 : (1 < n <= 100)

画像増加手順の繰り返し回数です。この数を定義するには、あらかじめデータ按分比率の設定を有効にしておきます。繰り返し処理は、Brightness(明るさ)、Contrast(コントラスト)、Hue(色あい)、Noise(ノイズ)およびCrop(切り取り)の設定が有効なものすべてで行われます。

切り取り処理を除き、繰り返し時に使用されるランダムな値は、入力ピクセル値を中心に切断正規分布から生成されます。(指定された標準偏差より大きな偏差はなく、出力ピクセル値は0から255の間に収まります)

  • Brightness(明るさ):作成する画像のランダムな明るさ(0~1)

値が大きいほど、画像に適用される明るさの範囲が広くなります。切断正規分布([255×N(0, sigma)])が入力値に適用されます。

  • Contrast(コントラスト):作成する画像のランダムなコントラスト(0-1)

値が大きいほど、画像に適用されるコントラストの範囲が広くなります。切断正規分布([N(0, sigma)])が入力値に適用されます。

  • Hue(色あい): 作成する画像のランダムな色あい度 (0-1)

原色(赤、緑、青)からの色の外観偏差量を示します。切断正規分布([180×N(0, sigma)+180])が入力値に適用されます。

  • Noise(ノイズ): 画像に適用するランダムなノイズフィルタ値(0-1)

値が大きくなるほど、画像のノイズが多くなります。切断正規分布 ([255×N(0, sigma)])が入力値に適用されます。

  • Crop(切り取り)(幅/高さ/水平オーパラップ/垂直オーパラップ)

画像は指定されたサイズ(幅および高さ)で指定のオーパラップ(垂直/水平方向)を考慮してランダムにカットされます。タイリングとは違い、切り取る画像のサイズ(幅と高さ)が十分に大きく、切り取った画像が常にタイプ/クラスの特徴を含むような場合には、他の画像データ拡張との併用が可能となります。水平/垂直オーパラップの上限は、カットする大きさ(幅と高さ)に依存します。

オーパラップの設定は、切り取り幅や高さの設定が有効な場合にのみ可能です。

  • Rotation(回転)(最大回転角度/角度ステップ数/回転繰り返し)

+/-Max Angle(最大角度 : 0 <= Max Angle <= 180)および Angle Step(ステップ角 : 1 <= Angle Steps <= 2 × Max Angle)で指定された範囲内で、元画像をランダムに回転した画像を生成します。指定された回転繰り返し数分、指定角度に重複がないよう画像を複製します。(1 <= Rotation Repeat <= Angle Steps)

角度ステップ数は、+/-最大角度の範囲内で均等に分割された区画数により定義されます。 例えば、角度ステップ数4、回転繰り返し数4、最大角度が180度の場合、すべての画像について0度、+90度、+180度(-180度は重複のため除外)、および-90度で回転させた画像が生成されます。

注釈

  1. データ按分が有効な場合は、学習用データセットのみが対象です。

  2. 角度ステップ(Angle Steps)を1に設定すると回転しません。

../_images/image13.png

回転設定の詳細

  • Flip(水平/垂直反転)

このオプションを有効にすると、有効にした反転方向(水平/垂直)のすべてで出力画像の反転が行われます。(オリジナル画像と水平/垂直反転)

2.3.3. 後処理パラメータ

  • Balance(バランス)

最も画像データ数の少ない下位ディレクトリに合わせて、他のディレクトリの画像データ数を調整し、各タイプの出力画像データ数のバランスを取ります。データ数の多い下位ディレクトリのデータを間引く際にファイルは無作為に選択されます。

按分率(Split percentage)の設定が有効な場合は、学習用データのみデータ数の調整が行われます。

2.4. プレビュー

プレビュー(Preview)ボタンをクリックすると、処理後の出力画像がどのように見えるかを表示することができます。出力画像が予想通りであることを確認し、処理を開始する前に各種パラメータを調整してください。

2.5. データ拡張処理を実行

スタートボタン(START)をクリックすると、画像データの拡張処理が開始され、指定された出力ディレクトリ以下に画像データが生成されます。