1 振り出しからやり直し
課題のJPGに記録される焦点距離から、教師データを簡単に作っていう目論見は失敗。テーマ設定からやり直しである。申込時には『画像内人物をNNCで学習させ画角/焦点距離による画像分類を作り出す』を選んでいるが、これを含めて4つのテーマはいずれも画像の分類問題であるから、このための教師データを作る必要がある。
2教師データを作る
Neural Network Consoleのデータセット作成機能を使う
Neurarl Network Console(以下NNC)には画像分類向けにフォルダ別に分類したファイルから、NNCで使用できる教師データの作成機能がついている。その1でPythonスクリプトでやった画像ファイルのサイズ変更、EXCELで行った画像のファイル名と分類番号が対になったCSVファイルをTrainデータとTestデータに分けて指定した割合で作成をプログラムなしで作ってくれる。その1ではJPGファイルから焦点距離の情報を取り出す必要があり、その取り出しはNNCではできないので、併せてサイズ変更、CSVファイルの作成スクリプトを作ったが、分類問題なら出番はない。しかし、人間がアノテーションを作る必要がある。NNCのデータセット作成機能を使うためには画像を見て、分類を決めて、分類別に特定のフォルダにコピーするという行為。多分、1000~2000ぐらいは手動で分類しなければならない。ひどく苦痛だ
テーマを再度決める
選択できるテーマは
1『人物画像をNNCで学習させ新しいオノマトペ(擬音語/擬声語/擬態語)の画像カテゴリ分類を作り出す』
2『画像内人物をNNCで学習させ画角/焦点距離による画像分類を作り出す』
3『NNCで画像を学習し人の感情によって分類』
4上記以外のチャレンジテーマを自由に設定しての応募も可(ただし画像分る問題に限る)
の4つ。10,100ならともかく1000,2000ともなると分類していくのはかなり難しい(個人的に)。分類の基準が曖昧な1,3は分類しているうちに分類にぶれが出てくることが予想される。2は具体的な例として「正面向き/バストアップ/全身/背面」が挙げられており、これならばなんとかなりそう。テーマの画角、焦点距離による画像分類を作り出すの部分が少し引っかかるが、無理ならば4として応募することにする。
分類を決める
分類は下記を参考にした。動画向けだけど気にしない。
動画ビギナー必見!】撮影サイズと構図の基本 〜人物編〜
画像内に一人だけで顔が写っている画像に対して、
・フルショット (足先まで)
・ニーショット (膝まで)
・ウエストショット(腰まで)
・バストショット(胸まで)
・アップショット(顔ないし首まで)
・それ以外(顔の一部ないし全く写っていない)
複数人写っているものは
・複数人
として、7つに分類することとした。
分類する
やることは単純である。画像を目視で確認して、先に決めた分類通りフォルダに移動していく。課題のファイルは10000枚の画像ファイルだが、全てが異なる被写体、異なるシチュエーションではなく、ファイル名順に分類していくと似た画像が連続するので、ファイルサイズ順に行うことにした。
分類ぶんるいブンルイ3日かかった
分類結果を確認してみる
一日1,2時間かけて3000枚を分類。ひたすら苦痛だった。分類したファイル数を確認してみると複数人の分類が1400枚ぐらいある。偏るのはしょうがないが、半分近くが一つの分るではあまりよくなさそうなので、900枚ほど外すことにする。約2100枚。
NNCでデータセットを作る
分類したデータを使って、NNCでデータセットを作る。とりあえず160×160の解像度、TrainとTestは80%、20%で作成。これでやっと学習が開始できる。