HTTPS SSH

README

自分で用意した学習データを用いて簡単なモデルで機械学習を試すことができます

動作確認済み環境

  • Ubuntu16.04 *

インストールが必要なもの

  • Python2.7
  • TensorFlow1(r0.12)
  • OpenCV

準備

学習データとテスト用データを用意してデータは以下のように配置してください

├── README.md
├── load_model.py
├── testData
    ├── 00000
        ├── 0000.jpg
        ├── 0001.jpg
    ├── 00001
        ├── 0000.jpg
        ├── 0001.jpg
├── trainData
    ├── 00000
        ├── 0000.jpg
        ├── 0001.jpg
    ├── 00001
        ├── 0000.jpg
        ├── 0001.jpg
├── targetData
    ├── 0000.jpg
    ├── 0001.jpg
└── training.py

プログラム内では指定したtestDataディレクトリとtrainDataディレクトリ内のディレクトリ名をソートして上からラベルを0とします。
ディレクトリのソート時には必ず数値である必要があるのでディレクトリ名には0〜9以外の数値は使用しないでください。
targetDataディレクトリ内はディレクトリでわけずに推定したい画像を直下に入れてください。

使用方法

それぞれオプションを指定することができます

training.py

ニューラルネットワークの学習をします。
--trainDir='./trainData':学習データの入っているディレクトリのパスを指定
--testDir='./testDir':テスト用データの入っているディレクトリのパスを指定
--labelFile='./label.csv':学習したディレクトリ番号に対応させたラベルを出力
--maxStaps='1000':学習回数を指定
--batchSize='50':1回の学習で使用するデータ数
--imageRows='150':画像データの高さ
--imageCols='200':画像データの幅
--imageChannels='3':画像データのチャンネル数

load_model.py

学習したデータをロードしてそれをもとにデータの推定を行う
--targetDir='./targetData':推定したいデータの入っているディレクトリのパスを指定
--labelFile='./label.csv':学習したディレクトリ番号に対応させたラベルファイル
--resultFile='./result.csv':推定した画像のファイルとラベル一覧
--imageRows='150':画像データの高さ
--imageCols='200':画像データの幅
--imageChannels='3':画像データのチャンネル数