/7seg-image-generator

7セグメント表示の画像を生成するツール(機械学習向け)

Primary LanguagePythonApache License 2.0Apache-2.0

7seg-image-generator

7セグメント表示の画像を生成するツールです。
主に機械学習の学習データセットに使用することを想定しています。
0~9、-(マイナス記号)、表示なしのデータを生成します。

Requirement

  • OpenCV 3.4.2 or later
  • tqdm 4.48.2 or later
  • albumentations 0.5.2 or later ※create_7segment_dataset_da.py を使用する場合のみ

Usage

実行方法は以下です。

python create_7segment_dataset.py

生成時のオプションとして以下を指定できます。

  • --width
    生成画像の幅
    デフォルト:96
  • --height
    生成画像の高さ
    デフォルト:96
  • --number_width_min
    セグメント表示の横幅の最小割合
    デフォルト:0.1
  • --number_width_max
    セグメント表示の横幅の最大割合
    デフォルト:0.9
  • --number_height_min
    セグメント表示の高さの最小割合
    デフォルト:0.4
  • --number_height_max
    セグメント表示の高さの最大割合
    デフォルト:0.9
  • --thickness_min
    セグメント表示の横幅を1とした際の線の太さの最小割合
    デフォルト:0.01
  • --thickness_max
    セグメント表示の横幅を1とした際の線の太さの最大割合
    デフォルト:0.25
  • --blank_ratio_min
    セグメント同士の隙間の最小割合
    デフォルト:0.0
  • --blank_ratio_max
    セグメント同士の隙間の最大割合
    デフォルト:0.1
  • --shear_x_min
    セグメント表示のX軸方向の傾きの最小
    デフォルト:-10
  • --shear_x_min
    セグメント表示のX軸方向の傾きの最大
    デフォルト:30
  • --shift_x_min
    セグメント表示のX軸方向シフトの最小ピクセル
    デフォルト:-10
  • --shift_x_max
    セグメント表示のX軸方向シフトの最大ピクセル
    デフォルト:10
  • --shift_y_min
    セグメント表示のY軸方向シフトの最小ピクセル
    デフォルト:-10
  • --shift_y_max
    セグメント表示のY軸方向シフトの最大ピクセル
    デフォルト:10
  • --steps
    各クラスを何枚ずつ生成するか
    デフォルト:3000
  • --erase_debug_window
    デバッグ表示用のウィンドウの非表示
    デフォルト:指定なし
  • --seed
    乱数シード
    デフォルト:42
  • --start_count
    ファイル連番の開始数
    デフォルト:0

また、「create_7segment_dataset.py」を用いるとデータ拡張を実施した状態で画像を生成します。

難しすぎるので「create_7segment_dataset_da(easy).py」を追加しました。

Author

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

License

mediapipe-python-sample is under Apache-2.0 License.